GitHub Actions Workflow Checker

A tool to automatically check and update GitHub Actions workflow dependencies. It scans workflow files for action references, checks for newer versions, and creates pull requests with updates.
Features
- Scans GitHub Actions workflow files (
.yml and .yaml)
- Checks for newer versions of actions using GitHub API
- Creates pull requests with updates
- Supports both CLI usage and GitHub Actions workflow
- Handles semantic versioning and commit SHA references
- Runs in Docker container
Installation
Using Go
go install github.com/ThreatFlux/githubWorkFlowChecker/cmd/ghactions-updater@latest
Using Docker
docker pull ghcr.io/threatflux/ghactions-updater:latest
Usage
CLI
ghactions-updater -owner <owner> -repo-name <repo> -token <github-token>
Options:
-owner: Repository owner (required)
-repo-name: Repository name (required)
-token: GitHub token (required, can also be set via GITHUB_TOKEN environment variable)
-repo: Path to repository (default: ".")
-version: Print version information and exit
Example:
# Check version
ghactions-updater -version
# Update workflows
ghactions-updater -owner <owner> -repo-name <repo> -token <github-token>
GitHub Actions Workflow
name: Update Actions
on:
schedule:
- cron: '0 0 * * 0' # Weekly on Sunday
workflow_dispatch:
jobs:
update:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: docker://ghcr.io/threatflux/ghactions-updater:latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OWNER: ${{ github.repository_owner }}
REPO_NAME: ${{ github.event.repository.name }}
Development
Requirements
- Go 1.24.0 or later
- Make
- Docker (optional)
Setup
- Clone the repository
git clone https://github.com/ThreatFlux/githubWorkFlowChecker.git
cd githubWorkFlowChecker
- Install dependencies
go mod download
Common Tasks
- Build binary:
make build
- Run tests:
make test
- Run linter:
make lint
- Build Docker image:
make docker-build
- Clean up:
make clean
Documentation
License
MIT License - see LICENSE file for details.