Lib Watchdog is a GitHub Action that automatically updates library versions across multiple repositories. It helps maintain consistent library versions by:
- Searching repositories based on specified criteria
- Detecting outdated library versions
- Creating pull requests with version updates
- Sending Slack notifications about updates
- 🔍 Smart repository search
- 🤖 Automatic version detection and update
- 🚀 Pull request generation
- 📣 Slack notification support
Input | Description | Required | Default |
---|---|---|---|
github-token |
GitHub token with repository access | ✅ | ${{ secrets.GH_TOKEN }} |
scope-type |
Scope type (organization or user) | ❌ | organization |
scope-name |
Organization name or username | ✅ | - |
new-version |
New version to update to | ✅ | - |
file-pattern |
File pattern to search (e.g., build.gradle, pom.xml) | ❌ | build.gradle |
slack-webhook-url |
Slack webhook URL for notifications | ❌ | ${{ secrets.SLACK_WEBHOOK }} |
Output | Description |
---|---|
updated-repos |
List of repositories updated |
pr-urls |
URLs of created pull requests |
name: Library Version Update
on:
workflow_dispatch:
inputs:
version:
description: 'New version'
required: true
jobs:
update-libraries:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: hocaron/lib-watchdog@v1
with:
github-token: ${{ secrets.GH_TOKEN }}
scope-type: org
scope-name: your-organization
library-name: example-library
new-version: ${{ github.event.inputs.version }}
slack-webhook-url: ${{ secrets.SLACK_WEBHOOK }}
- Search repositories containing the specified library
- Check current library versions
- Compare versions and identify repos needing updates
- Create a new branch for each repository
- Update library version in identified files
- Generate a pull request for each update
- Send Slack notification with update summary
- GitHub token with repository access
- Optional Slack webhook for notifications
- Supports semantic versioning comparison
- Handles multiple repositories in a single run
- Skips repositories with already up-to-date versions
Contributions are welcome! Please open an issue or submit a pull request.
[Add your license information here]