Skip to content

Fix upload workflow: retired ubuntu-20.04 runner, checkout v2 -> v4 - #1

Merged
mattgodbolt merged 1 commit into
mainfrom
add-actionlint
Jul 12, 2026
Merged

Fix upload workflow: retired ubuntu-20.04 runner, checkout v2 -> v4#1
mattgodbolt merged 1 commit into
mainfrom
add-actionlint

Conversation

@mattgodbolt

@mattgodbolt mattgodbolt commented Jul 10, 2026

Copy link
Copy Markdown
Member

Found by an org-wide actionlint sweep. Per review feedback the lint tooling itself is staying in the core repos (compiler-explorer, infra, compiler-workflows) — this PR keeps just the fixes, which stand on their own:

  • upload.yml targeted ubuntu-20.04, a retired GitHub-hosted label: dispatches would queue forever with no runner. Now ubuntu-latest.
  • actions/checkout v2 -> v4

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings July 10, 2026 21:19

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR revives and hardens the repository’s GitHub Actions setup by fixing a broken upload workflow runner target and adding automated workflow linting as part of the org-wide actionlint rollout.

Changes:

  • Update the upload workflow to use a supported GitHub-hosted runner label (ubuntu-latest) and modern actions/checkout@v4.
  • Add a dedicated lint-actions workflow that runs actionlint on pushes/PRs that modify workflow files.
  • Introduce .github/actionlint.yaml to define self-hosted runner labels and tune shellcheck-related ignores.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
.github/workflows/upload.yml Switches to a supported runner label and updates actions/checkout to keep the manual upload workflow runnable.
.github/workflows/lint-actions.yml Adds CI linting for workflow changes using actionlint to catch schema/expression/runner-label issues early.
.github/actionlint.yaml Configures actionlint runner-label awareness and shellcheck ignore patterns for workflow scripts.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

jobs:
build_and_upload:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Declining, with some irony: a pinned runner version is exactly what broke this workflow in the first place — it was pinned to ubuntu-20.04, the label was retired, and every dispatch queued forever. For a tiny manual S3-upload job, tracking ubuntu-latest is the maintenance-free choice; pinning just schedules the next silent death.

Comment thread .github/workflows/lint-actions.yml Outdated
jobs:
actionlint:
if: github.repository_owner == 'compiler-explorer'
runs-on: ubuntu-latest
Comment thread .github/workflows/lint-actions.yml Outdated
- name: Checkout repository
uses: actions/checkout@v4
- name: Check workflow files
uses: docker://rhysd/actionlint:1.7.12
- upload.yml targeted ubuntu-20.04, a retired GitHub-hosted label: dispatches would queue forever with no runner. Now ubuntu-latest.
- actions/checkout v2 -> v4

Found by an org-wide actionlint sweep; the lint tooling itself is staying in the core repos only, but these fixes stand on their own.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@mattgodbolt mattgodbolt changed the title Lint GitHub Actions workflows with actionlint; revive upload workflow Fix upload workflow: retired ubuntu-20.04 runner, checkout v2 -> v4 Jul 10, 2026
@mattgodbolt
mattgodbolt merged commit 3fb5a28 into main Jul 12, 2026
@mattgodbolt
mattgodbolt deleted the add-actionlint branch July 12, 2026 19:30
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.

2 participants