Skip to content

ci(runner): macOS Intel runner auto-reregister watchdog - #332

Merged
frstrtr merged 1 commit into
masterfrom
macos-ci-steward/runner-auto-reregister
Jun 22, 2026
Merged

ci(runner): macOS Intel runner auto-reregister watchdog#332
frstrtr merged 1 commit into
masterfrom
macos-ci-steward/runner-auto-reregister

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 22, 2026

Copy link
Copy Markdown
Owner

Closes the second half of runner hardening (auto-reregister on drop).

The launchd service on macpro-intel-204 already has KeepAlive(SuccessfulExit=false), which restarts a crashed runner process. That cannot recover a runner GitHub has deregistered server-side (registration removed / token revoked) — re-registration needs a fresh registration token minted with repo-admin creds, which live on the CI bridge, not the Mac node.

This adds scripts/ci/runner-watchdog-mac-intel.sh, intended to run on the bridge (cron/launchd, ~5min poll). It polls the runners API and, after THRESHOLD consecutive offline observations, mints a fresh token and re-registers over SSH via config.sh --replace (no delete), then reloads the service. Idempotent; resets on first online sighting.

Revert: delete the file + remove its bridge cron/launchd entry. Only mutation is config.sh --replace (reuses same runner name).

Follow-up (not in this PR): install the bridge cron/launchd entry; arm64 .227 equivalent.

Draft pending operator merge-gate.

@frstrtr
frstrtr marked this pull request as ready for review June 22, 2026 16:22
@frstrtr
frstrtr merged commit dd4a254 into master Jun 22, 2026
20 checks passed
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.

1 participant