Get Health/Propose modifications of each GitHub Action in a repository
Project description
gh-action-pulse
gh-action-pulse is a utility designed to monitor and analyze the health of GitHub Actions dependencies within a repository. It scans your workflow and action definition files to identify which actions are being used and updates them to the last existing tag using (./rules.md)
Key Features
- Automatic Scanning: Detects
uses:statements across.github/workflowsand.github/actions. - Reference Identification: Determines if an action is pinned to a specific commit SHA, a tag, or a branch.
- Update Recommendations: Queries the GitHub API to compare your current references against the latest stable semantic version (SemVer) tags.
- Metadata Insights: Retrieves commit dates and reference types to help evaluate the "freshness" of your CI/CD dependencies.
Setup
The tool interacts with the GitHub API and requires a GitHub Personal Access Token.
export GITHUB_TOKEN=your_github_token_here
If you haven't one, there's a fallback which will create a token using gh command
You will need python >= 3.14 to make this program works correctly.
Local Installation
uv tool install . --force --reinstall
Installation from last pypi release
Using uv
uv tool install gh-action-pulse
Using pipx
pipx install gh-action-pulse
Roadmap
Randoms items
- Maybe Separate unit tests with appropriate workflow (pytest)
- Add E2E tests with appropriate workflow (pytest and/or bats)
- Be able to check for nodejs version in upstream repo
- Be able to raise some warnings if there's no recent upstream tag within x days
- Maybe configuration file with some ignore parameters or specific rules for some workflows
- Check eventual redirection of action to update to new URL
CONTRIBUTING
- Feel free to contribute ;-)
Jean-Yves
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
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 gh_action_pulse-0.1.1-py3-none-any.whl.
File metadata
- Download URL: gh_action_pulse-0.1.1-py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0c933803b8b2e9c2a323ee71905f95629dcb2af308560ca3d4d6d16776436b35
|
|
| MD5 |
2585a70a8c51ce134907eb32c579192f
|
|
| BLAKE2b-256 |
93ade13648073d092209ae2ee6fe0261bfe5221a2c3c91e745f4df4d0324cf0d
|
Provenance
The following attestation bundles were made for gh_action_pulse-0.1.1-py3-none-any.whl:
Publisher:
code-checks.yml on jylenhof/gh-action-pulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gh_action_pulse-0.1.1-py3-none-any.whl -
Subject digest:
0c933803b8b2e9c2a323ee71905f95629dcb2af308560ca3d4d6d16776436b35 - Sigstore transparency entry: 1927913781
- Sigstore integration time:
-
Permalink:
jylenhof/gh-action-pulse@f0fc6ccac69a6f2d1f278e90eadf070b45602fa4 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/jylenhof
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
code-checks.yml@f0fc6ccac69a6f2d1f278e90eadf070b45602fa4 -
Trigger Event:
release
-
Statement type: