Publish releases from packaged artifacts - #50
Conversation
|
Warning Review limit reachedNext included review available in 4 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (9)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Prepare completed. Workflow evidence. This is the candidate assessment, not independent policy or deployment approval. Prepare: passCommit: d817212 · Platform: 1.0.3-PullRequest50.2 · Target: canary Selection: v1.0.3-PullRequest50.2; resolved: v1.0.3-PullRequest50.2; OGP ring: preview.
Guide statusNo guide fixes identified by these checks. Artifact and live-site checks run in later stages. |
There was a problem hiding this comment.
🟡 Changes recommended
The new release.ps1 launcher currently hardcodes a packaged-directory layout for Publish-PlatformRelease.ps1, causing -Stage Release to fail when executed from the source tree.
Get a fresh assessment by requesting another Copilot review.
Pull request overview
This PR updates the platform release pipeline to publish and validate GitHub releases using only packaged artifacts and source-commit metadata, and modernizes workflow-alias publication to use GitHub APIs with pagination and concurrency-safe updates.
Changes:
- Publish releases from build artifacts (no repo checkout) and validate published assets against the packaged manifest and hashes.
- Switch workflow alias discovery/publication from
gitpushes to paginatedgh api+ GraphQLupdateRefswith lost-lease protection. - Package and allowlist a
release.ps1launcher, and expand Pester coverage around release validation, alias paging, and release titles.
File summaries
| File | Description |
|---|---|
| tests/Core/WorkflowReleaseAliases.Tests.ps1 | Updates alias publication tests to mock gh api pagination + GraphQL updates and validate behavior. |
| tests/Core/PackagedRelease.Tests.ps1 | Adds tests for validating a published release using only packaged assets + GitHub release downloads. |
| tests/Core/NativeModulePublication.Tests.ps1 | Adjusts release publication assertions (title alignment) and stubs new alias discovery calls. |
| system/OpenGuidePlatform.PowerShell.PlatformBuild/Release/release.ps1 | Adds packaged release launcher for Release/Validate stages using manifest + hashes. |
| system/OpenGuidePlatform.PowerShell.PlatformBuild/Release/Publish-PlatformWorkflowAliases.ps1 | Replaces git ls-remote/push alias logic with gh api paging and GraphQL concurrency-safe updates. |
| system/OpenGuidePlatform.PowerShell.PlatformBuild/Release/Publish-PlatformRelease.ps1 | Allows supplying SourceCommit, aligns release title with tag, and keeps coordinated publication flow. |
| system/OpenGuidePlatform.PowerShell.PlatformBuild/Packaging/Package-OpenGuidePlatform.ps1 | Includes release.ps1 at the PlatformBuild package root for artifact-driven workflows. |
| system/OpenGuidePlatform.PowerShell.GuideSiteAdoption/Resolve-OpenGuidePlatform.ps1 | Updates zip safety allowlist to permit release.ps1 at package root. |
| .github/workflows/main.yaml | Updates Release job to restore tools from PlatformBuild.zip and run packaged release.ps1 for publish/verify. |
Review details
- Files reviewed: 9/9 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| if($Stage -eq 'Release'){ | ||
| & "$PSScriptRoot/system/OpenGuidePlatform.PowerShell.PlatformBuild/Release/Publish-PlatformRelease.ps1" -WorkspaceRoot $assets -OutputPath $assets -SourceCommit $SourceCommit -Repository $Repository | ||
| return | ||
| } |
|
Preview deployed for commit d817212: https://blue-field-06cea8c03-50.westeurope.6.azurestaticapps.net/. Live verification follows in Actions. |
Summary
Testing