ci: fix actionlint findings ahead of Starbase merge
Metadata
Current evaluation
Closed unmerged; its actionlint fixes were superseded by merged PR charmcraft#2897 and Starbase merge charmcraft#2899.
Resolution: closed superseded
Reason: PR #2893 was closed unmerged. The equivalent actionlint and workflow cleanup landed through PR #2897, followed by Starbase merge PR #2899 (commit 57886488).
Evaluated by: mr-cal-bot
No scores available.
Issue body
## Why
The upcoming Starbase merge wires `actionlint` into CI/lint for the first time via a new `lint-actions` Make target and a new `.github/actionlint.yaml` config. This PR fixes the findings `actionlint` surfaces against workflows on `main` today, so the merge lands with a clean run.
## What
- Add `.github/actionlint.yaml` declaring `self-hosted-runner.labels` for our self-hosted runners. Includes `spread-enabled`, which is actually missing even from the Starbase merge's own version of this file despite being used in `spread.yaml`.
- `spread.yaml` / `tests.yaml`: remove `paths-ignore` from the `merge_group` trigger (actionlint flags this combination as invalid — `paths-ignore` has no effect on `merge_group` events)
- `spread.yaml` / `spread-docs.yaml`: quote unquoted shell expansions (`$(spread -list ...)`, `$(go env GOPATH)`) flagged by shellcheck via actionlint
- `schema.yaml`: quote `$CHARMCRAFT_JSON` and `$proj_file` in the ajv validation loop
## Validation
- `actionlint`: exit code 0, zero findings
- All 5 touched YAML files validated with `python3 -c "import yaml; yaml.safe_load(...)"`
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed superseded | Closed unmerged; its actionlint fixes were superseded by merged PR charmcraft#2897 and Starbase merge charmcraft#2899. | |
| stealth/space-bunny-alpha | — | closed stale | PR #2897 proposed actionlint and workflow fixes for the Starbase merge but was closed unmerged, with review and CI unfinished, OSV-scanner failing, and no documented resolution. | |
| stealth/space-bunny-alpha |
Impact:
35
Quick Win:
19
Complexity:
24
Confidence:
87
Actionability:
72
|
needs review | Adds actionlint configuration and fixes shell quoting and merge_group filters in four workflows ahead of Starbase; actionlint reportedly passes, but OSV-scanner fails and build/test checks are pending. |
Update history
| Date | Change |
|---|---|
| closed | |
| created |
Related work
-
Superseded By:
charmcraft#2897
(confidence 99%)
Replacement PR carried the actionlint cleanup and was merged.
-
Related To:
charmcraft#2899
(confidence 97%)
Starbase merge introduced the related lint wiring and configuration.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2897 ci: fix actionlint findings ahead of Starbase merge | charmcraft | closed | PR #2897 (4 workflow files, +10/-32) fixing actionlint/zizmor findings — dropped paths-ignore from merge_group triggers, quoted shell expansions and $CHARMCRAFT_JSON/$proj_file, bound matrix.system via env. Approved by 2 reviewers, merged; OSV-scanner failure ruled unrelated. | |
| #450 fix(ci): resolve actionlint findings in snap and spread-test workflows | imagecraft | closed | Actionlint fixes from #450 landed as commit f9425e0 and were carried into main by merged Starbase PR #449 (545f51a), despite #450 itself being closed unmerged. | |
| #470 feat(lint): lint the Github actions with actionlint | starbase | closed | Closed unmerged; the same actionlint integration shipped via merged PR #473 (commit e385e9d), wiring the actionlint snap into starbase's default lint target. | |
| #74 many: merge starbase/main | craft-archives | merged | Merged starbase/main via commit 071d217, resolving conflicts in favor of starbase; follow-up lint fixes produced merged PR head b23d3b3. | |
| #2185 chore: merge starbase back into charmcraft | charmcraft | closed | Closed unmerged after prolonged inactivity, abandoning the proposed Starbase re-integration; no review, comments, CI checks, or resolving commit were recorded. | |
| #2896 chore: fix ruff, mypy, and pyright findings ahead of Starbase merge | charmcraft | closed | PR #2896 was closed unmerged with no replacement; lint and OSV checks remained failing and review was still pending. | |
| #284 chore: merge in starbase | craft-store | closed | Closed unmerged after 513 days without review or comments, abandoning the CRAFT-4537 Starbase merge; later syncs landed in #337 and #377. |