Observed since 20 Oct, 18:32 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Python wrapper around invoking actionlint (https://github.com/kjanat/actionlint)
Note: for
pre-commithooks I recommend officially supported hooks: See docs: https://github.com/kjanat/actionlint/blob/main/docs/usage.md#pre-commit
A python wrapper to provide a pip-installable actionlint binary.
This package wraps the kjanat/actionlint fork of actionlint, not the original
rhysd/actionlint. It is published to PyPI as actionlint-py-kjanat.
Internally this package provides a convenient way to download the pre-built actionlint binary for your particular platform.
pip install actionlint-py-kjanat
After installation, the actionlint binary should be available in your
environment (or actionlint.exe on windows). Remember to add you Scripts folder to PATH.
See pre-commit for introduction.
I recommend using officially supported pre-commit hooks from actionlint itself See docs: https://github.com/kjanat/actionlint/blob/main/docs/usage.md#pre-commit
Use this repo if you can not use officially supported hooks (docker, golang, system) and you are fine with python pip wrapper.
Sample .pre-commit-config.yaml using pip as package manager:
- repo: https://github.com/renefritze/actionlint-py-kjanat
rev: v1.14.0.24
hooks:
- id: actionlint
additional_dependencies: [ pyflakes>=3.0.1, shellcheck-py>=0.9.0.5 ]
# actionlint has built in support for pyflakes and shellcheck, sadly they will not be auto updated. Check https://pypi.org/project/actionlint-py-kjanat/ for latest version. Alternatively:
# args: [-shellcheck=/path/shellcheck -pyflakes=/path/pyflakes]
# note - invalid path in arguments will fail silently
Because actionlint-py-kjanat is available as source distribution, pip build system will fetch binary from (public)
github. It might cause problems with corporate proxy. In case of problems try this semi-manual setup that respects
your pip.ini:
- repo: local
hooks:
- id: actionlint
name: actionlint
description: Lint GitHub workflows with actionlint
additional_dependencies: [ actionlint-py-kjanat ]
#additional_dependencies: [actionlint-py-kjanat==1.14.0.24]
# safer, but pre-commit autoupdate will not work
# note: the pip versioning scheme is different from actionlint binary: not "v1.14.0" but "1.14.0.24" (last number is build system version)
entry: actionlint
#args: [-ignore "*.set-output. was depracated.*"]
language: python
types: [ "yaml" ]
files: "^.github/workflows/"
See official docs for pre-commit integration
- repo: https://github.com/kjanat/actionlint
rev: v1.14.0
hooks:
- id: actionlint
# - id: actionlint-docker
# - id: actionlint-system
Use directly in github action, see official docs for github action integration:
name: Lint GitHub Actions workflows
on: [ push, pull_request ]
jobs:
actionlint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Download actionlint
id: get_actionlint
run: bash <(curl https://raw.githubusercontent.com/kjanat/actionlint/main/scripts/download-actionlint.bash)
shell: bash
- name: Check workflow files
run: ${{ steps.get_actionlint.outputs.executable }} -color
shell: bash
Or using docker:
name: Lint GitHub Actions workflows
on: [ push, pull_request ]
jobs:
actionlint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Check workflow files
uses: docker://ghcr.io/kjanat/actionlint:latest
with:
args: -color
Development of wrapper and releasing new version: see README-DEV.md
shellcheck-py in docker image.pre-commit-hooks.yaml when using _custom_build/auto_update_main.pyshellcheck-py as dependency (or at least document)See README-DEV.md for more TODOs.
Won't do unless asked:
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.14.0.47 | 18 Oct 2026 | 5 |
This describes our collected data; it is not a security assessment.
Shared repository data · GitHub
Observed since 20 Oct, 18:32 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:e5489d690c39952421b31bd0d6c88f33ecae31f3789c133eb0feee865087a63e