Create pipeline to validate DBX JSON certificate references #225
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.
This PR implements a validation pipeline to ensure that DBX JSON files reference certificate files that actually exist in the
PreSignedObjects/DBX/Certificatesfolder.Problem
When new DBX JSON files are created, the internal certificate names referenced in the JSON don't always match the external filenames in the Certificates folder, and there was no validation to catch these mismatches. For example, the current
dbx_info_msft_06_10_25.jsonreferencesWindowsProduction2011.cerbut the actual file is namedMicWinProPCA2011_2011-10-19.der.Solution
Added a new validation script and CI pipeline step that:
dbx_info_msft_<date>.jsonfilesChanges Made
New Files
scripts/validate_dbx_references.py- Main validation script with CLI interfacescripts/test_validate_dbx_references.py- Comprehensive unit tests (7 test cases)CI Integration
.github/workflows/prepare-binaries.ymlafter unit testsOther
.gitignoreto properly exclude__pycache__directoriesTesting
The validation script successfully detects the existing mismatch and will prevent similar issues in the future through automated CI checks.
Fixes #224.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.