Flip live update channel on release - #985
Conversation
The deployment workflow now uploads the installer to the public download directory and flips the stable live update channel when a non-prerelease GitHub release is published. This keeps existing players on the same game version while fresh installs pick up the new release, avoiding split-version compatibility issues.
|
The idea here is that with the exception of doing a IRC /CTCP UPDATE command, anyone should be able to release a new version of YR |
|
Don't know whether we need a quote or something. Calling a copilot |
There was a problem hiding this comment.
🟡 Changes recommended
Pre-releases can overwrite the public installer, and link updates may silently occur in the wrong directory.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Updates release deployment to publish the installer and switch stable clients to the new release.
Changes:
- Uploads the installer to the public download directory.
- Updates the
livesymlink for stable releases.
File summaries
| File | Description |
|---|---|
.github/workflows/deployment.yml |
Adjusts installer deployment and stable-channel promotion. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 2
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
@copilot Whether or not I need to quote |
Co-authored-by: SadPencil <11227602+SadPencil@users.noreply.github.com>
Co-authored-by: SadPencil <11227602+SadPencil@users.noreply.github.com>
Not for the expression by itself, but in the |
Updated condition to upload installer for non-prerelease GitHub releases only.
There was a problem hiding this comment.
🟡 Changes recommended
Deployment failures can be masked or leave the installer and live channel on incompatible versions.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 1/2 changed files
- Comments generated: 2
- Review effort level: Balanced
|
why on earth did @Copilot add 1de7461 translation files? |
This change makes the deployment script fail fast when package extraction or cleanup fails by enabling `script_stop: true`, and it reorders the stable channel promotion so the live update link is updated before the installer upload. This prevents partially extracted packages from being promoted and keeps the public installer from drifting ahead of the updater path.
|
maybe some encoding issue? |
There was a problem hiding this comment.
🟡 Changes recommended
Release promotions need serialization and atomic live-link replacement to prevent inconsistent or unavailable update channels.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 1/2 changed files
- Comments generated: 2
- Review effort level: Balanced
| # Guarded on prerelease == false because the "published" event also fires for GitHub | ||
| # pre-releases, which must never be pushed to the stable channel. | ||
| - name: Update live mirror link | ||
| if: github.event_name == 'release' && github.event.action == 'published' && github.event.release.prerelease == false |
| # ln to create a dangling "live" link in the home directory, and still pass. | ||
| script_stop: true | ||
| script: | | ||
| cd -- "${{ secrets.SSH_PATH_GAMES_YR }}" && ln -sfn "updates/${{ needs.build-package.outputs.packageUploadVersion }}" live |
|
@copilot Fix the code for all comments in this review thread. When a review comment includes a suggested change, apply the suggestion exactly. Do not make changes beyond what is described in the linked review thread. |
Co-authored-by: SadPencil <11227602+SadPencil@users.noreply.github.com>
Fixed in f5c0af3.
Fixed in f5c0af3. |
The deployment workflow now uploads the installer to the public download directory and flips the stable live update channel when a non-prerelease GitHub release is published. This keeps existing players on the same game version while fresh installs pick up the new release, avoiding split-version compatibility issues.