Skip to content

Implement actionlint to improve static analysis of GitHub Actions #7703

@roryabraham

Description

@roryabraham

Problem

It's hard to be confident that a GitHub Actions PR will work at the time we merge it. There is typically no way to test them locally. We have learned a fair deal with experience, but are imperfect humans who make mistakes during PR reviews. We also try to unit-test what we can, but ultimately the only real test is the E2E test that runs in GitHub's Environment.

Why this is important

  1. This is sometimes frustrating
  2. It often results in slow feedback loops when we're trying to get something working (create PR, review PR, wait for tests to pass, merge to test)
  3. It's distracting and noisy to other people when a many actions fail loudly in the #announce slack room.

Solution

Okay, well this solution won't completely solve the problem, but I believe it will help. Let's implement https://github.com/rhysd/actionlint as a PR check to validate our GitHub Actions and Workflows! It does a lot more than our basic schema validations we have now and seems like a useful tool to improve the development and robustness of our GitHub Actions code.

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions