-
Notifications
You must be signed in to change notification settings - Fork 7
Add Renovate for automated tool updates #62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+142
−48
Merged
Changes from all commits
Commits
Show all changes
16 commits
Select commit
Hold shift + click to select a range
7a925b8
auto update tools
leighmcculloch b46597e
add pull request trigger to renovate workflow
leighmcculloch bafd5f7
update renovate workflow env vars
leighmcculloch 855c291
make renovate run on branch and dry-run prs
leighmcculloch 69e8a44
read renovate config from current branch
leighmcculloch 0fbbc2f
feed branch config to renovate via config file
leighmcculloch 6b7c598
update renovate action version
leighmcculloch 380d200
Merge branch 'main' into auto-update-tools
leighmcculloch 2d81caf
refactor build matrix needs prepare step
leighmcculloch 4682d04
split tools config into cargo and go files
leighmcculloch 35fb18a
simplify tool configs to bare arrays
leighmcculloch 5da709b
freeze wasm-cs from auto-update to keep release test valid
leighmcculloch 5bfd150
remove unused workflow_call trigger from build
leighmcculloch b792fc1
set minimum permissions for cargo and go jobs
leighmcculloch c43467f
set minimum permissions for all build jobs
leighmcculloch e7c97fe
raise renovate minimum release age to 1 month
claude File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,34 @@ | ||
| name: Renovate | ||
|
|
||
| on: | ||
| schedule: | ||
| - cron: '0 6 * * *' # daily, 06:00 UTC | ||
| workflow_dispatch: | ||
| pull_request: | ||
|
|
||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }} | ||
| cancel-in-progress: true | ||
|
|
||
| permissions: {} | ||
|
|
||
| jobs: | ||
|
|
||
| renovate: | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| contents: write | ||
| pull-requests: write | ||
| steps: | ||
| - uses: actions/checkout@v5 | ||
| - uses: renovatebot/github-action@693b9ef15eec82123529a37c782242f091365961 #v46.1.14 | ||
| with: | ||
| token: ${{ secrets.GITHUB_TOKEN }} | ||
|
leighmcculloch marked this conversation as resolved.
|
||
| configurationFile: renovate.json5 | ||
| env: | ||
| RENOVATE_REPOSITORIES: ${{ github.repository }} | ||
| RENOVATE_BASE_BRANCH_PATTERNS: '["${{ github.head_ref || github.ref_name }}"]' | ||
| RENOVATE_REQUIRE_CONFIG: optional | ||
| RENOVATE_ONBOARDING: 'false' | ||
| RENOVATE_DRY_RUN: ${{ github.event_name == 'pull_request' && 'full' || '' }} | ||
| LOG_LEVEL: ${{ github.event_name == 'pull_request' && 'debug' || 'info' }} | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,52 @@ | ||
| { | ||
| $schema: 'https://docs.renovatebot.com/renovate-schema.json', | ||
| extends: ['config:recommended'], | ||
|
|
||
| // Only manage the tool versions in tools/tools.json. Action `uses:` pins are | ||
| // handled by Dependabot (.github/dependabot.yml), so leave every other | ||
| // manager off to avoid the two bots fighting. | ||
| enabledManagers: ['custom.jsonata'], | ||
|
|
||
| // Hold every update until the release is at least 1 month old, and always | ||
| // target the newest version that passes that age check rather than the | ||
| // absolute latest (so we never jump onto a brand-new release). | ||
| minimumReleaseAge: '1 month', | ||
| internalChecksFilter: 'strict', | ||
|
|
||
| customManagers: [ | ||
| { | ||
| // cargo tools built via `cargo install`. Parsed as structured JSON, so an | ||
| // optional `auto-update` flag anywhere in the entry is captured as the | ||
| // depType (see packageRules below) regardless of field order. | ||
| customType: 'jsonata', | ||
| fileFormat: 'json', | ||
| managerFilePatterns: ['/^tools-cargo\\.json$/'], | ||
| matchStrings: [ | ||
| '$.{ "depName": name, "currentValue": version, "depType": $string(`auto-update`) }', | ||
| ], | ||
| datasourceTemplate: 'crate', | ||
| }, | ||
|
leighmcculloch marked this conversation as resolved.
|
||
| { | ||
| // go tools built via `go install`. depName is the module root (first three | ||
| // path segments of import-path); version is stored without a leading `v`. | ||
| customType: 'jsonata', | ||
| fileFormat: 'json', | ||
| managerFilePatterns: ['/^tools-go\\.json$/'], | ||
| matchStrings: [ | ||
| '$.{ "depName": $join($split(`import-path`, "/")[[0..2]], "/"), "currentValue": version, "depType": $string(`auto-update`) }', | ||
| ], | ||
| datasourceTemplate: 'go', | ||
| extractVersionTemplate: '^v?(?<version>.+)$', | ||
| }, | ||
|
leighmcculloch marked this conversation as resolved.
|
||
| ], | ||
|
|
||
| packageRules: [ | ||
| { | ||
| // Freeze a tool by setting "auto-update": false on its entry in | ||
| // tools/tools.json; that flag is captured as the depType above and | ||
| // disabled here, so Renovate never proposes updates for it. | ||
| matchDepTypes: ['false'], | ||
| enabled: false, | ||
| }, | ||
| ], | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| [ | ||
| { "name": "cargo-expand", "version": "1.0.116" }, | ||
| { "name": "cargo-workspaces", "version": "0.2.35", "auto-update": false }, | ||
| { "name": "cargo-workspaces", "version": "0.3.6" }, | ||
| { "name": "cargo-hack", "version": "0.6.44" }, | ||
| { "name": "cargo-set-rust-version", "version": "0.5.0" }, | ||
| { "name": "cargo-edit", "version": "0.11.6" }, | ||
| { "name": "cargo-fuzz", "version": "0.13.1" }, | ||
| { "name": "cargo-deny", "version": "0.14.19", "rust": "1.79.0", "auto-update": false }, | ||
| { "name": "cargo-deny", "version": "0.19.0" }, | ||
| { "name": "cargo-cache", "version": "0.8.3" }, | ||
| { "name": "cargo-sweep", "version": "0.7.0" }, | ||
| { "name": "cargo-readme", "version": "3.3.1" }, | ||
| { "name": "cargo-semver-checks", "version": "0.46.0" }, | ||
| { "name": "cargo-public-api", "version": "0.33.1" }, | ||
| { "name": "cargo-nextest", "version": "0.9.105" }, | ||
| { "name": "wasm-pack", "version": "0.13.0" }, | ||
| { "name": "wasm-bindgen-cli", "version": "0.2.92" }, | ||
| { "name": "check-lockfile-intersection", "version": "0.1.0" }, | ||
| { "name": "wasm-cs", "version": "1.0.0", "auto-update": false }, | ||
| { "name": "sccache", "version": "0.14.0" } | ||
| ] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| [ | ||
| { "name": "actionlint", "import-path": "github.com/rhysd/actionlint/cmd/actionlint", "version": "1.7.1" } | ||
| ] |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.