Repository navigation
0.2.3: per-path cloud settings for repositories that mix clouds - #4
Merged
Merged
Conversation
A plan's new paths: entries give parts of a repository their own tenant and/or Azure cloud, so one fairfax scan checks each file against the clouds its path maps to. Globs are relative to the plan file's folder; the most specific glob wins, separately for tenant and azure, and the later entry wins a tie. Every finding records the clouds its file was checked against and the globs that set them, in text, Markdown, JSON and SARIF. fairfax check keeps using the plan's top-level clouds. Closes #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1.
A plan can now give parts of a repository their own clouds, so one
fairfax scancovers a repository that mixes them:The billing service's commercial Key Vault host passes because that path is on commercial Azure, while its Graph host is still flagged because the tenant there is still GCC High.
Rules
fairfax scanis run.*also matches/(as in--exclude), and a path without wildcards covers that file or that whole folder.tenantandazure; on a tie the later entry wins. So a nested entry that sets onlytenantkeeps theazureof the folder around it.--tenantand--azurereplace the plan's top-level clouds, andpaths:still applies on top.fairfax checkuses only the top-level clouds.Output
paths:says which ones and which globs set them. Files on the plan's own clouds look exactly as before, so the README examples are unchanged.tenant,azureandfrom_paths, and the top level lists the plan'spaths.tenant,azureandfromPathsproperties, and the message notes an override.--planto the scan, so overrides work there with no new input.Also: version 0.2.3; the README and site Action snippets say
@v0.2.3; a new site FAQ entry, "Can one repository mix GCC, GCC High and commercial clouds?", which also lands in the FAQ markup and llms.txt.Tested: 69 tests pass, 15 of them new: plan validation, specificity and ties, folder paths, a mixed repository end to end, globs relative to the plan file, files outside it, flag precedence, and all four output formats. actionlint is clean.
After merge: publish release v0.2.3 (PyPI, then the Marketplace listing follows the release). Until then the site's Action snippet names a tag that doesn't exist yet, so the release should follow the merge.