Add ARC upgrade and CVE patch guide#4573
Open
igwejk wants to merge 1 commit into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new operational guide for upgrading the GitHub-supported gha-runner-scale-set ARC charts (using 0.12.0 → 0.14.2 as the worked example), including how to assess upgrade impact vs toolchain-only CVE fixes and how to safely execute rebuilds, rollouts, listener updates, and rollbacks.
Changes:
- Adds a detailed upgrade playbook covering release research, CRD risks, and safe upgrade paths.
- Documents an emergency “toolchain-only” rebuild approach for controller CVE patching.
- Covers operational considerations (listeners, downtime, GitOps behavior, rollback, and staging).
Show a summary per file
| File | Description |
|---|---|
| docs/upgrading-gha-runner-scale-set.md | New end-to-end guide for ARC upgrades and toolchain-only CVE patching. |
Review details
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 1/1 changed files
- Comments generated: 5
- Review effort level: Low
A guide for operators running the scale-set flavor of ARC: how to tell whether a version change actually matters, the risks around CRDs and the controller version guard, and a playbook to clear a CVE by rebuilding the image on the current version instead of forcing a full upgrade. Behavioral claims are cited to the code and charts at the relevant tags.
318f872 to
0f97cc9
Compare
Comment on lines
+28
to
+32
| The controller image also runs the listener. When ARC creates a listener, it | ||
| copies the controller image into `AutoscalingListener.Spec.Image` | ||
| (`controllers/actions.github.com/resourcebuilder.go`). Existing listeners do | ||
| not pick up a new controller image automatically because `ListenerSpecHash` | ||
| does not include the image. |
Comment on lines
+305
to
+307
| Changing the controller image does not update existing listeners. Their image | ||
| is stored in `AutoscalingListener.Spec.Image`, and the listener hash excludes | ||
| that field. |
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.
Adds a guide for assessing and upgrading gha-runner-scale-set ARC, using 0.12.0 to 0.14.2 as the example.
It explains how to distinguish toolchain-only security fixes from changes that affect ARC behavior, APIs, charts, or CRDs. It also documents why a controller-only minor upgrade is unsafe, how to patch the current controller image with a fixed Go toolchain, and how to handle listeners, rollback, downtime, CRDs, and full upgrades safely.
The commands and compatibility guidance were checked against the 0.12.0 and 0.14.2 source tags. Documentation only.