← Back to issue list

ci: always discard spread workers in build-rock tests (core22-7)

View original Github issue

Metadata

Project
snapcraft-rocks
Number
#116
Type
pull request
State
open
Author
lengau
Labels
—
Created
Updated
Closed
—

Current evaluation

Adds an always-run 'Discard spread workers' cleanup step to the spread-tests job in .github/workflows/build-rock.yaml (core22-7) so GCP VMs aren't leaked on cancellation (SNAPCRAFT-1368). +8/-0, spread-tests green, build-rock amd64/arm64 failing.

Suggested action: needs review

Reason: This is a trivial, high-value CI hygiene change: the diff only adds an `if: ${{ always() }}` 'Discard spread workers' step (8 lines, 1 file) to stop remote GCP VMs leaking for the 2h halt timeout, and the spread-tests check — the one this change actually touches — is passing, along with copilot-pull-request-reviewer, Canonical CLA and lint. The two failing checks are build-rock (self-hosted, amd64/arm64), which exercise rock building rather than the spread worker lifecycle; that pattern also appears in the open core22-8 staging bug snapcraft-rocks#111, suggesting a pre-existing/unrelated build failure rather than a regression from an 8-line cleanup step. It is not superseded: sibling PRs #115 (core22-8) and #117 (core24-8) are merged but apply the identical change to different rock versions, and this PR is the only one covering core22-7. Needs a maintainer to confirm the build-rock failures are unrelated and to resolve the 1 unresolved review comment.

Evaluated by: mr-cal-bot

Impact: 28 Quick Win: 15 Complexity: 12 Confidence: 74 Actionability: 62

Issue body

This PR adds the 'Discard spread workers' cleanup step to the 'spread-tests' job in the 'build-rock.yaml' workflow. Without this step, if the job is cancelled or crashes, the remote Google Cloud VM instances allocated by 'spread' are leaked and remain active until the halt timeout (2h). SNAPCRAFT-1368

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 28
Quick Win: 15
Complexity: 12
Confidence: 74
Actionability: 62
needs review Adds an always-run 'Discard spread workers' cleanup step to the spread-tests job in .github/workflows/build-rock.yaml (core22-7) so GCP VMs aren't leaked on cancellation (SNAPCRAFT-1368). +8/-0, spread-tests green, build-rock amd64/arm64 failing.
stealth/space-bunny-alpha
Impact: 42
Quick Win: 13
Complexity: 16
Confidence: 93
Actionability: 38
keep open Adds always-run spread worker cleanup for core22-7 to prevent leaked GCP VMs after cancellation or crashes; remains open with both build-rock checks failing and one unresolved review comment.
stealth/space-bunny-alpha
Impact: 35
Quick Win: 14
Complexity: 10
Confidence: 94
Actionability: 45
needs review Adds always-run spread worker cleanup to core22-7 build-rock tests, preventing GCE VM leaks on crashes or cancellation. CI is mixed: spread-tests passes, but both build-rock jobs fail.
qwen3.6-35b-a3b-mtp-q6
Impact: 40
Quick Win: 34
Staleness: 75
Complexity: 15
Confidence: 70
close stale Adds spread worker cleanup step to build-rock.yaml workflow to prevent leaked GCP VM instances. Inactive 56 days with unresolved review comment and failing CI checks.
qwen/qwen3.6-35b-a3b
Staleness: 15
Complexity: 10
Confidence: 85
needs review Adds a cleanup step to discard spread workers in build-rock tests to prevent leaked Google Cloud VM instances. Currently pending review with 1 unresolved comment and failing self-hosted CI checks.
qwen3.6-35b-a3b-mtp-q6
Staleness: 5
Complexity: 15
Confidence: 90
needs review Adds a cleanup step to discard spread workers in build-rock CI tests to prevent leaked Google Cloud VM instances upon cancellation or crash. Currently awaiting review.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/snapcraft-rocks#115 (confidence 92%)

    Merged sibling PR applying the same always-run spread-worker cleanup to core22-8; same SNAPCRAFT-1368 ticket, no overlap so not a duplicate.

  • Related To: canonical/snapcraft-rocks#117 (confidence 92%)

    Merged sibling PR applying the same cleanup to core24-8; completes the series, this PR is the remaining core22-7 case.

  • Related To: canonical/snapcraft#6335 (confidence 55%)

    Merged upstream snapcraft PR originating the same 'discard spread workers' cleanup pattern adopted across CI workflows.

  • Likely Fixed By: canonical/snapcraft-rocks#111 (confidence 45%)

    Open core22-8 rock staging failure suggests a pre-existing rockcraft build problem that plausibly explains the red build-rock amd64/arm64 checks on this PR, rather than the cleanup step.

Related issues

Issue Project State Summary Similarity
#115 ci: always discard spread workers in build-rock tests (core22-8) snapcraft-rocks merged PR #115 merged (+8/-0): adds an always-run 'Discard spread workers' step to the spread-tests job in .github/workflows/build-rock.yaml for core22-8, so cancelled/crashed jobs no longer leak spread GCP VMs (SNAPCRAFT-1368).
96%
#117 ci: always discard spread workers in build-rock tests (core24-8) snapcraft-rocks merged Merged PR #117 (core24-8) adds an always-run 'Discard spread workers' cleanup step to the spread-tests job in build-rock.yaml, so cancelled/crashed jobs don't leak GCP VMs for 2h (SNAPCRAFT-1368). Approved; +8/-0.
95%
#6335 ci: always discard spread workers in manual tests (main) snapcraft merged Merged #6335 in commit b36b3c325, adding always-run Spread worker cleanup to manual CI jobs so cancelled or crashed tests do not leak GCP VMs.
78%
#2771 ci: always discard spread workers in snap-store-tests (main) charmcraft merged Merged PR #2771 (main) adds an always-run "Discard spread workers" cleanup step to the snap-store-tests job in spread.yaml, so cancelled/crashed CI runs no longer leak GCE VMs until the 2h halt timeout.
78%
#482 ci: always discard spread workers rockcraft merged PR #482 by lengau merged: added an always-run "Discard spread workers" cleanup step (spread -discard -reuse-pid) to .github/workflows/spread.yaml, copied from snapcraft's spread.yml.
77%
#83 ci(core22-7): don't use a spread runner for publishing the rock snapcraft-rocks merged Merged PR #83 restricted core22-7 rock publishing to amd64 runners, preventing scheduling on resource-constrained Spread runners; all CI checks passed.
70%