Skip to main content

Python wrapper around invoking actionlint (https://github.com/rhysd/actionlint)

Project description

actionlint-py

A python wrapper to provide a pip-installable actionlint binary.

Internally this package provides a convenient way to download the pre-built actionlint binary for your particular platform.

Installation

pip install actionlint-py

Usage

After installation, the actionlint binary should be available in your environment (or actionlint.exe on windows).

As a pre-commit hook

See pre-commit for instructions

Sample .pre-commit-config.yaml:

- repo: https://github.com/Mateusz-Grzelinski/actionlint-py
  rev: v1.6.25.5
  hooks:
    - id: actionlint

Because actionlint-py is available as source distribution, pip build system is set up to fetch binary from (public) github. It might cause problems with corporate proxy. In case of problems try this semi-manual setup:

- repo: local
  hooks:
    - id: actionlint
      name: actionlint
      description: Lint GitHub workflows with actionlint
      additional_dependencies: [ actionlint-py ]
      #additional_dependencies: [actionlint-py==1.6.25.5]
      # safer, but pre-commit autoupdate will not work
      # note: the versioning scheme is different: not "v1.6.25" but "1.6.25.2" (last number is build system version)
      entry: actionlint
      #args: [-ignore "*.set-output. was depracated.*"]
      language: python
      types: [ "yaml" ]
      files: "^.github/workflows/"

Development

Development of wrapper and releasing new version: see README-DEV.md

Roadmap

  • Update tag in readme in github action when releasing new version
  • Upload also binary distribution, not only source distribution
  • Add unit tests to build system

See README-DEV.md for more TODOs.

Won't do unless asked:

  • support all platforms that actionlint supports (like freebsd)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

actionlint_py-1.6.25.8.tar.gz (9.6 kB view details)

Uploaded Source

File details

Details for the file actionlint_py-1.6.25.8.tar.gz.

File metadata

  • Download URL: actionlint_py-1.6.25.8.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.17

File hashes

Hashes for actionlint_py-1.6.25.8.tar.gz
Algorithm Hash digest
SHA256 2139fc03661b436c76e775cd8b93de2ea0b2b7ce63b6d8ec4ed581edf82652dc
MD5 0d9713f1bc9994c3d42e9b7c71583e6d
BLAKE2b-256 70b819e8ca1cabb01510b96972b0cf5fe5f2f6fdb8e576623af1e1eb12d9c096

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page