From b3a8e455d5172eeab5374e241cdb5868ed288fc8 Mon Sep 17 00:00:00 2001 From: yuriyryabikov <22548029+kurok@users.noreply.github.com> Date: Fri, 10 Jul 2026 18:36:47 +0100 Subject: [PATCH] ci: bump ec2-github-runner pin to v4.0.2 (#68/#69) v4.0.1 (65fbe4f) predates two merged fixes: #68 (start step now requires multiple consecutive online polls before declaring success, closing a leaked-running-instance risk from a flapping warm-restart registration) and #69 (mode:stop now waits for the actual stopped state before returning, closing the race this repo hit on 2026-07-10 where a tightly-queued run saw an empty warm pool and cold-launched a duplicate instance). Cut and pushed the v4.0.2 tag on namecheap/ec2-github-runner at 54ee3e4 to cover both, then repointed all four pin sites (ci.yml start-runner + stop-runner, cleanup-ec2-runners.yml both passes). Signed-off-by: yuriyryabikov <22548029+kurok@users.noreply.github.com> --- .github/workflows/ci.yml | 4 ++-- .github/workflows/cleanup-ec2-runners.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 59928d69..ca41b932 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -504,7 +504,7 @@ jobs: echo "Pre-attached ${SANDBOX_EIP_ALLOCATION_ID} to stopped warm-pool instance ${target}." - name: Start EC2 runner id: start-ec2-runner - uses: namecheap/ec2-github-runner@65fbe4f0c1181c60d4df2bd3b33b8893e21fbb43 # v4.0.1 @ 2026-07-08: warm-pool reuse:stop registration fixes (#62/#64/#65/#66) + uses: namecheap/ec2-github-runner@54ee3e45b519c062993c2b01eb77552fcc329b9d # v4.0.2 @ 2026-07-10: warm-pool reuse:stop reliability fixes (#67/#68/#69) with: mode: start github-token: ${{ steps.app-token.outputs.token }} @@ -769,7 +769,7 @@ jobs: # "Configure AWS credentials" above doesn't skip stopping the # instance. if: always() - uses: namecheap/ec2-github-runner@65fbe4f0c1181c60d4df2bd3b33b8893e21fbb43 # v4.0.1 @ 2026-07-08: warm-pool reuse:stop registration fixes (#62/#64/#65/#66) + uses: namecheap/ec2-github-runner@54ee3e45b519c062993c2b01eb77552fcc329b9d # v4.0.2 @ 2026-07-10: warm-pool reuse:stop reliability fixes (#67/#68/#69) with: mode: stop reuse: stop diff --git a/.github/workflows/cleanup-ec2-runners.yml b/.github/workflows/cleanup-ec2-runners.yml index 95f0ea0d..704f07a0 100644 --- a/.github/workflows/cleanup-ec2-runners.yml +++ b/.github/workflows/cleanup-ec2-runners.yml @@ -113,7 +113,7 @@ jobs: # reaper-stopped-max-age is deliberately tiny (1) so the day's pool # instance -- stopped anywhere from seconds to ~24h earlier -- is # always older than the threshold and gets terminated. - uses: namecheap/ec2-github-runner@65fbe4f0c1181c60d4df2bd3b33b8893e21fbb43 # v4.0.1 @ 2026-07-08: warm-pool reuse:stop registration fixes (#62/#64/#65/#66) + uses: namecheap/ec2-github-runner@54ee3e45b519c062993c2b01eb77552fcc329b9d # v4.0.2 @ 2026-07-10: warm-pool reuse:stop reliability fixes (#67/#68/#69) with: mode: cleanup github-token: ${{ steps.app-token.outputs.token }} @@ -129,7 +129,7 @@ jobs: # threshold applies, per the issue's "default thresholds" requirement # for this pass. if: ${{ (github.event_name == 'schedule' || inputs.dry_run == false) && steps.pass.outputs.kind == 'leak-reap' }} - uses: namecheap/ec2-github-runner@65fbe4f0c1181c60d4df2bd3b33b8893e21fbb43 # v4.0.1 @ 2026-07-08: warm-pool reuse:stop registration fixes (#62/#64/#65/#66) + uses: namecheap/ec2-github-runner@54ee3e45b519c062993c2b01eb77552fcc329b9d # v4.0.2 @ 2026-07-10: warm-pool reuse:stop reliability fixes (#67/#68/#69) with: mode: cleanup github-token: ${{ steps.app-token.outputs.token }}