Keep the outdated phase until the runner spec itself changes (#4660)

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
Nikola Jokic
2026-09-17 17:03:21 +02:00
committed by GitHub
co-authored by Copilot App Copilot Autofix powered by AI
parent be44bb58cf
commit dc12c2d417
17 changed files with 1776 additions and 135 deletions
+11 -3
View File
@@ -51,9 +51,11 @@ const (
AnnotationKeyGitHubRunnerScaleSetName = "actions.github.com/runner-scale-set-name"
AnnotationKeyPatchID = "actions.github.com/patch-id"
// AnnotationKeyAutoscalingRunnerSetGeneration records the AutoscalingRunnerSet
// generation that published the current EphemeralRunnerSet actionable
// revision. It prevents a rejected revision from being retried more than once
// for the same AutoscalingRunnerSet spec update.
// generation the current EphemeralRunnerSet spec was derived from. It is
// informational: it makes it possible to tell, by looking at the set alone,
// how far behind the AutoscalingRunnerSet it is. Nothing keys behaviour off
// it - in particular, recovery from the outdated phase is decided by
// comparing the runner spec itself, not generations.
AnnotationKeyAutoscalingRunnerSetGeneration = "actions.github.com/autoscaling-runner-set-generation"
// AnnotationKeyActionableRevision records the EphemeralRunnerSet
// Spec.ActionableRevision that was in effect when the runner was created. It
@@ -96,6 +98,12 @@ const DefaultScaleSetListenerLogFormat = string(logging.LogFormatText)
// ownerKey is field selector matching the owner name of a particular resource
const resourceOwnerKey = ".metadata.controller"
// autoscalingRunnerSetOwnerKey indexes an AutoscalingListener by the scale set
// it names as its own. Listeners live in the controller namespace while the
// scale set lives in its own, so they cannot carry an owner reference across
// that boundary and the resourceOwnerKey index does not apply to them.
const autoscalingRunnerSetOwnerKey = ".spec.autoscalingRunnerSet"
// EphemeralRunner pod creation failure reasons
const (
ReasonTooManyPodFailures = "TooManyPodFailures"