An extremely fast Python package installer and resolver, written in Rust.
actionlint is a static checker for GitHub Actions workflow files. Try it online!
Features:
- Syntax check for workflow files to check unexpected or missing keys following workflow syntax
- Strong type check for ${{ }} expressions to catch several semantic errors like access to not existing property, type mismatches, ...
- Actions usage check to check that inputs at with: and outputs in steps.{id}.outputs are correct
- Reusable workflow check to check inputs/outputs/secrets of reusable workflows and workflow calls
- shellcheck and pyflakes integrations for scripts at run:
- Security checks; script injection by untrusted inputs, hard-coded credentials
- Other several useful checks; glob syntax validation, dependencies check for needs:, runner label validation, cron syntax validation, ...