Skip to content

Lint GitHub Actions workflows with actionlint#139

Closed
mattgodbolt wants to merge 1 commit into
mainfrom
add-actionlint
Closed

Lint GitHub Actions workflows with actionlint#139
mattgodbolt wants to merge 1 commit into
mainfrom
add-actionlint

Conversation

@mattgodbolt

Copy link
Copy Markdown
Member

Part of the org-wide actionlint rollout (see compiler-explorer/compiler-workflows#68, compiler-explorer/infra#2226, compiler-explorer/compiler-explorer#8912). Checks workflow files for schema errors, expression-context mistakes, unknown runner labels, and shellcheck issues (errors+warnings; info/style gated in .github/actionlint.yaml) on any push/PR touching them.

Existing workflows already passed cleanly.

🤖 Generated with Claude Code

Part of an org-wide rollout: statically checks workflow files
(schema, expression contexts, runner labels, shellcheck over
run: scripts) on any push/PR touching them.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 10, 2026 21:14

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

Adds an actionlint-based CI check to this repository (part of the Compiler Explorer org-wide rollout) to validate GitHub Actions workflow files and enforce ShellCheck errors/warnings when workflows change.

Changes:

  • Introduces a new workflow (lint-actions.yml) that runs actionlint on PRs and selected pushes affecting workflow/config files.
  • Adds an .github/actionlint.yaml configuration defining self-hosted runner labels and ignoring ShellCheck info/style findings.

Reviewed changes

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

File Description
.github/workflows/lint-actions.yml Adds a dedicated workflow to run actionlint when workflow/config files change.
.github/actionlint.yaml Configures actionlint runner labels and ShellCheck ignore rules (info/style).

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

Comment on lines +4 to +6
push:
branches: [main]
paths: ['.github/workflows/**', '.github/actionlint.yaml']
Comment on lines +9 to +10

jobs:
Comment on lines +17 to +18
- name: Check workflow files
uses: docker://rhysd/actionlint:1.7.12
@mattgodbolt

Copy link
Copy Markdown
Member Author

Closing per review: we're keeping the actionlint rollout to the core repos (compiler-explorer, infra, compiler-workflows) rather than adding CI-only lint machinery to quiet single-workflow repos — all our other linters run as pre-commit/local hooks, and this repo's workflows were already clean anyway.

@mattgodbolt mattgodbolt deleted the add-actionlint branch July 10, 2026 21:50
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