Skip to content

Lint GitHub Actions workflows with actionlint#21

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

Lint GitHub Actions workflows with actionlint#21
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:16

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 validate GitHub Actions workflows in this repository as part of the org-wide rollout, ensuring workflow/schema/expression issues (and ShellCheck errors/warnings in embedded scripts) are caught when workflows change.

Changes:

  • Introduces a new workflow that runs actionlint on pushes/PRs that modify workflow files or the actionlint config.
  • Adds .github/actionlint.yaml to define known self-hosted runner labels and to gate ShellCheck info/style findings via ignore patterns.

Reviewed changes

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

File Description
.github/workflows/lint-actions.yml Adds a workflow that runs rhysd/actionlint when workflow/config files change.
.github/actionlint.yaml Configures actionlint (runner labels + ShellCheck ignore rules for info/style).

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

@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