This directory contains automation to help keep GitHub Actions up to date in your workflows. Keeping actions updated is important for security, bug fixes, and new features.
What it does:
- Automatically checks for GitHub Actions updates weekly
- Creates pull requests when new versions are available
- Groups related actions together (e.g., all Docker actions)
- Also monitors Dockerfile base images
Configuration:
- Runs weekly on Mondays at 9:00 AM UTC
- Limited to 10 open PRs to avoid spam
- Automatically assigns PRs to repository owner
What it does:
- Runs weekly on Mondays at 9:00 AM UTC
- Scans all workflow files for action versions
- Creates a summary report of current versions
- Opens GitHub issues as reminders to check for updates
Manual trigger:
# You can manually trigger this via GitHub UI or:
gh workflow run check-action-updates.ymlWhat it does:
- Local script to check action versions against latest releases
- Provides colored output showing which actions need updates
- Can be run locally during development
Usage:
# Run from repository root
./scripts/check-action-versions.shThe project currently uses these GitHub Actions:
| Action | Purpose | Current Version | 
|---|---|---|
| actions/checkout | Checkout repository code | v4 | 
| docker/setup-qemu-action | Set up QEMU for multi-arch builds | v3 | 
| docker/setup-buildx-action | Set up Docker Buildx | v3 | 
| docker/login-action | Login to Docker registry | v3 | 
| docker/build-push-action | Build and push Docker images | v6 | 
| actions/github-script | Run JavaScript in workflows | v8 | 
- Visit each action's GitHub repository
- Check the "Releases" tab for latest versions
- Review changelog for breaking changes
- Edit .github/workflows/*.ymlfiles
- Update version numbers (e.g., @v4→@v5)
- Update version comments in workflow files
- Create a test branch
- Push changes to trigger workflows
- Verify all workflows run successfully
- Check for any deprecation warnings
- Merge changes to main branch
- Monitor subsequent workflow runs
- Close any related update issues
# ✅ Good - Specific version
uses: actions/checkout@v4
# ❌ Avoid - Branch names (security risk)
uses: actions/checkout@main# 🔒 Most secure - Full SHA pin
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1- Enable GitHub security alerts for the repository
- Subscribe to security advisories for critical actions
- Review Dependabot security updates promptly
- Check if Dependabot is enabled in repository settings
- Verify .github/dependabot.ymlsyntax is correct
- Ensure repository has appropriate permissions
- Check if workflow has necessary permissions
- Verify GitHub token has required scopes
- Check workflow syntax in GitHub Actions tab
- Review action's changelog for breaking changes
- Check workflow logs for specific error messages
- Consider pinning to previous working version temporarily
- Update workflow syntax for breaking changes
| Task | Frequency | Automation | 
|---|---|---|
| Check for updates | Weekly | ✅ Automated | 
| Review Dependabot PRs | As needed | 📧 Notifications | 
| Apply critical security updates | Immediately | 🚨 Manual priority | 
| Test major version updates | Before applying | 🧪 Manual testing |