Skip to content

Add ARC upgrade and CVE patch guide#4573

Open
igwejk wants to merge 1 commit into
actions:masterfrom
igwejk:igwejk/strategic-upgrade-guide
Open

Add ARC upgrade and CVE patch guide#4573
igwejk wants to merge 1 commit into
actions:masterfrom
igwejk:igwejk/strategic-upgrade-guide

Conversation

@igwejk

@igwejk igwejk commented Jul 15, 2026

Copy link
Copy Markdown

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.

Copilot AI review requested due to automatic review settings July 15, 2026 13:57

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Comment thread docs/upgrading-gha-runner-scale-set.md
Comment thread docs/upgrading-gha-runner-scale-set.md
Comment thread docs/upgrading-gha-runner-scale-set.md
Comment thread docs/upgrading-gha-runner-scale-set.md
Comment thread docs/upgrading-gha-runner-scale-set.md
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.
@igwejk igwejk force-pushed the igwejk/strategic-upgrade-guide branch from 318f872 to 0f97cc9 Compare July 15, 2026 14:16
@igwejk igwejk requested a review from Copilot July 15, 2026 14:17

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

  • Files reviewed: 1/1 changed files
  • Comments generated: 2
  • Review effort level: Low

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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants