Github actions workflow validator
Project description
pettifogger
pettifogger (noun)
pet·ti·fog·ger | \ ˈpe-tē-ˌfȯ-gər, -ˌfä- \
Definition of pettifogger
1 : a lawyer whose methods are petty, underhanded, or disreputable : shyster
2 : one given to quibbling over trifles
(source: https://www.merriam-webster.com/dictionary/pettifogger)
Description
Pettifogger is a github actions workflow validator, that will sniff out things like forgotten checkouts and suspicious capital letter words. The intention is to provide some level of additional insight to the workflow files before they go to master/main.
The project is still under initial development and is mainly intended for internal testing but other interested may try it out as well if their sanity can stand it.
Installation
pip install pettifogger or pip install --upgrade pettifogger
Usage
Pettifogger can be run with or without --workflow argument. When the argument is defined, then only that workflow is being validated and if used together with --watch, then only that file is watched. When used without --workflow the tool will search paths matching .github/workflows in all subdirectories and will validate those. When the workflows are searched automatically --watch will watch all those directories for changes.
usage: pettifogger [-h] [--version] [--workflow WORKFLOW] [--suppress-suspicions] [--fail-on-suspicions] [--no-fail-on-error] [--watch]
optional arguments:
-h, --help show this help message and exit
--version Print pettifogger's version
--workflow WORKFLOW Path to a workflow file to validate
--suppress-suspicions
Suppresses the suspicion output
--fail-on-suspicions Suspicions fail the validation
--no-fail-on-error Errors will not fail the validation
--watch Watch the file or workflow subdirectories detected automatically
Known limitations
- Tool has not been tested in Windows or in MacOS. It might work or then not. Please report any issues related to this using the Gitlab issues.
- Shell scripts only support *nix shell dialects (developed using bash). Windows powershell etc. are not supported at the moment.
- If the environment variables are not found from the workflow file, they are considered to be missing. This is something that is currently being looked into.
License
This project is licensed under MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pettifogger-0.5.0.tar.gz.
File metadata
- Download URL: pettifogger-0.5.0.tar.gz
- Upload date:
- Size: 18.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.6 CPython/3.9.5 Linux/5.11.6-1-MANJARO
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e16846ab36559957c65abc2d6e91bfcc60aba3ca944075cd0988c45d4986cf1
|
|
| MD5 |
310b72516c27f5f3b9a06ea2b4b10ab6
|
|
| BLAKE2b-256 |
d54e64c380bc7c3ed821b8583e7da2c5e03fdcc21b1afc4505c0855480c8c20a
|
File details
Details for the file pettifogger-0.5.0-py3-none-any.whl.
File metadata
- Download URL: pettifogger-0.5.0-py3-none-any.whl
- Upload date:
- Size: 32.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.6 CPython/3.9.5 Linux/5.11.6-1-MANJARO
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
64e082bf129531e1e761c223bcab222c2d77cd71e90b6a5bc8da8e6c61894f5e
|
|
| MD5 |
a20b683260a6e1884b28c0db8cf7b279
|
|
| BLAKE2b-256 |
4332239a73c8aeccd5b07ea7deaea5781c318c5099979af1a270eeb446c19ccb
|