Repository navigation
Build, test and release reviewed packages through protected Gallery automation - #31
Merged
Merged
Conversation
stadub
marked this pull request as ready for review
November 12, 2026 10:16
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.
Build/test and release automation stages immutable reviewed release snapshots, tests source and installed packages across Windows PowerShell 5.1/pwsh, Linux and macOS, and creates a versioned GitHub release from the tested bytes. Gallery dispatch defaults to dry-run; only actual upload receives the selected account key. A separate issues:write job uses trusted exact mappings only after actual publish and exact Gallery package/version/content verification.
CI covers all eight formal modules. It pins unchanged maintained sources to full SHAs, tests changed module sources from the proposal snapshot, expands cross-component coverage and records source identities. Publishing remains limited to the five established packages, verified reviewed release refs, unified out/ paths and distinct Stadub/MiniModules account mappings. Owner sibling worktrees were preserved. The owner-operated Set-GalleryApiKey.ps1 helper securely prompts through gh and checks master-only environment restrictions; offline tests never set live keys.
The manual release form now has a five-module selector and a prepared version field; users no longer enter commit SHAs. Dry-run stays checked by default, with a separate optional GitHub-release checkbox. Resolve-ReleaseSnapshot.ps1 resolves the configured reviewed branch once and every job consumes that full SHA. GitHub's /releases/latest URL alias is not used as a Git branch requirement: 7Zip/Currency select their verified 7-Zip/release/1.1 and Currency-Conv/release/1.5 refs; all five package paths still require out/. Version mismatches and missing reviewed refs/packages fail closed, with no development fallback or automatic version rewrite.
GitHub will expose the manual action only after this reviewed workflow is integrated into master. No master integration, live release or Gallery upload was performed while implementing the form.
Validation at current head 84126ae:
The owner authorized removal of Azure DevOps and AppVeyor. Both GitHub app installations were verified to select only PowershellScripts and uninstalled. Four Azure YAML files and all remaining Azure/AppVeyor badges are removed here; approved AppVeyor YAML cleanup from PR #33 is preserved. Other apps and hooks remain unchanged. The owner has no external account access, so internal service definitions/history remain. GitHub provides no supported individual deletion for historical external checks/statuses; no Actions evidence was deleted or statuses rewritten. See docs/ci/legacy-ci-removal/README.md.
Remaining rollout gates: reviewed automation integration into master and a full production manual dry-run; reviewed out/ package preparation for the other configured modules (including 7Zip/Currency numbered release sources); independent environment reviewer protection. Both account secret names exist. Master-only environment policy is preserved, with no reviewer rule and admin bypass enabled; opaque key validity/rights remain unverified.
The exact completion mapping targets only #22 at the tested Base64String 1.3.0 SHA. #22/#29 remain open. No Gallery upload, GitHub release creation, master/release merge, issue closure, environment or secret change occurred during component integration. This automation PR remains draft for production rollout review. References #29.