Update bazel-contrib/setup-bazel action to v0.9.0 (#56) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [bazel-contrib/setup-bazel](https://redirect.github.com/bazel-contrib/setup-bazel) | action | minor | `0.8.0` -> `0.9.0` | --- ### Release Notes <details> <summary>bazel-contrib/setup-bazel (bazel-contrib/setup-bazel)</summary> ### [`v0.9.0`](https://redirect.github.com/bazel-contrib/setup-bazel/releases/tag/0.9.0) [Compare Source](https://redirect.github.com/bazel-contrib/setup-bazel/compare/0.8.5...0.9.0) #### What's Changed - Update dependency yaml to v2.4.4 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/26](https://redirect.github.com/bazel-contrib/setup-bazel/pull/26) - Update dependency yaml to v2.4.5 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/27](https://redirect.github.com/bazel-contrib/setup-bazel/pull/27) - Update dependency node to v20.15.0 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/29](https://redirect.github.com/bazel-contrib/setup-bazel/pull/29) - Update dependency node to v20.15.1 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/30](https://redirect.github.com/bazel-contrib/setup-bazel/pull/30) - Update dependency yaml to v2.5.0 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/31](https://redirect.github.com/bazel-contrib/setup-bazel/pull/31) - Update dependency node to v20.16.0 - autoclosed by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/32](https://redirect.github.com/bazel-contrib/setup-bazel/pull/32) - Update dependency [@​actions/glob](https://redirect.github.com/actions/glob) to ^0.5.0 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/33](https://redirect.github.com/bazel-contrib/setup-bazel/pull/33) - Update dependency node to v20.17.0 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/34](https://redirect.github.com/bazel-contrib/setup-bazel/pull/34) - Update dependency yaml to v2.5.1 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/35](https://redirect.github.com/bazel-contrib/setup-bazel/pull/35) - Add a process.exit after storing caches by [@​chrismgrayftsinc](https://redirect.github.com/chrismgrayftsinc) in [https://github.com/bazel-contrib/setup-bazel/pull/37](https://redirect.github.com/bazel-contrib/setup-bazel/pull/37) - Update dependency [@​vercel/ncc](https://redirect.github.com/vercel/ncc) to v0.38.2 - autoclosed by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/38](https://redirect.github.com/bazel-contrib/setup-bazel/pull/38) #### New Contributors - [@​chrismgrayftsinc](https://redirect.github.com/chrismgrayftsinc) made their first contribution in [https://github.com/bazel-contrib/setup-bazel/pull/37](https://redirect.github.com/bazel-contrib/setup-bazel/pull/37) **Full Changelog**: https://github.com/bazel-contrib/setup-bazel/compare/0.8.5...0.9.0 ### [`v0.8.5`](https://redirect.github.com/bazel-contrib/setup-bazel/releases/tag/0.8.5) [Compare Source](https://redirect.github.com/bazel-contrib/setup-bazel/compare/0.8.4...0.8.5) #### What's Changed - Update dependency node to v20.14.0 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/20](https://redirect.github.com/bazel-contrib/setup-bazel/pull/20) - Update dependency yaml to v2.4.3 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/22](https://redirect.github.com/bazel-contrib/setup-bazel/pull/22) - Set octokit's baseUrl explicitly to make it work with self-hosted GitHub Enterprise Servers by [@​markszabo](https://redirect.github.com/markszabo) in [https://github.com/bazel-contrib/setup-bazel/pull/24](https://redirect.github.com/bazel-contrib/setup-bazel/pull/24) #### New Contributors - [@​markszabo](https://redirect.github.com/markszabo) made their first contribution in [https://github.com/bazel-contrib/setup-bazel/pull/24](https://redirect.github.com/bazel-contrib/setup-bazel/pull/24) **Full Changelog**: https://github.com/bazel-contrib/setup-bazel/compare/0.8.4...0.8.5 ### [`v0.8.4`](https://redirect.github.com/bazel-contrib/setup-bazel/releases/tag/0.8.4) [Compare Source](https://redirect.github.com/bazel-contrib/setup-bazel/compare/0.8.2...0.8.4) #### What's Changed - Update dependency yaml to v2.4.2 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/14](https://redirect.github.com/bazel-contrib/setup-bazel/pull/14) - Update dependency node to v20.13.0 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/15](https://redirect.github.com/bazel-contrib/setup-bazel/pull/15) - Update dependency node to v20.13.1 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/16](https://redirect.github.com/bazel-contrib/setup-bazel/pull/16) - Make bazelisk in a tool cache available in the PATH by [@​p0deje](https://redirect.github.com/p0deje) in [https://github.com/bazel-contrib/setup-bazel/pull/19](https://redirect.github.com/bazel-contrib/setup-bazel/pull/19) **Full Changelog**: https://github.com/bazel-contrib/setup-bazel/compare/0.8.2...0.8.4 ### [`v0.8.2`](https://redirect.github.com/bazel-contrib/setup-bazel/releases/tag/0.8.2) [Compare Source](https://redirect.github.com/bazel-contrib/setup-bazel/compare/0.8.1...0.8.2) #### What's Changed - Update dependency node to v20.12.2 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/12](https://redirect.github.com/bazel-contrib/setup-bazel/pull/12) **Full Changelog**: https://github.com/bazel-contrib/setup-bazel/compare/0.8.1...0.8.2 ### [`v0.8.1`](https://redirect.github.com/bazel-contrib/setup-bazel/releases/tag/0.8.1) [Compare Source](https://redirect.github.com/bazel-contrib/setup-bazel/compare/0.8.0...0.8.1) #### What's Changed - Configure Renovate by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/3](https://redirect.github.com/bazel-contrib/setup-bazel/pull/3) - Update dependency node to v20.11.1 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/5](https://redirect.github.com/bazel-contrib/setup-bazel/pull/5) - Update dependency [@​actions/cache](https://redirect.github.com/actions/cache) to v3.2.4 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/4](https://redirect.github.com/bazel-contrib/setup-bazel/pull/4) - Fix version in package.json by [@​p0deje](https://redirect.github.com/p0deje) in [https://github.com/bazel-contrib/setup-bazel/pull/7](https://redirect.github.com/bazel-contrib/setup-bazel/pull/7) - Update dependency yaml to v2.4.1 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/9](https://redirect.github.com/bazel-contrib/setup-bazel/pull/9) - Update dependency [@​vercel/ncc](https://redirect.github.com/vercel/ncc) to ^0.38.0 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/bazel-contrib/setup-bazel/pull/8](https://redirect.github.com/bazel-contrib/setup-bazel/pull/8) - Don't follow symlinks when hashing cache files by [@​p0deje](https://redirect.github.com/p0deje) in [https://github.com/bazel-contrib/setup-bazel/pull/10](https://redirect.github.com/bazel-contrib/setup-bazel/pull/10) #### New Contributors - [@​renovate](https://redirect.github.com/renovate) made their first contribution in [https://github.com/bazel-contrib/setup-bazel/pull/3](https://redirect.github.com/bazel-contrib/setup-bazel/pull/3) - [@​p0deje](https://redirect.github.com/p0deje) made their first contribution in [https://github.com/bazel-contrib/setup-bazel/pull/7](https://redirect.github.com/bazel-contrib/setup-bazel/pull/7) **Full Changelog**: https://github.com/bazel-contrib/setup-bazel/compare/0.8.0...0.8.1 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekday after 9am before 5pm" in timezone America/New_York, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. â™» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMTQuMCIsInVwZGF0ZWRJblZlciI6IjM4LjExNC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJhdXRvbWVyZ2UiXX0=-->
An ergonomic approach to defining a single tool target that resolves to a matching os and CPU architecture variant of the tool.
For a quickstart, see the module example or workspace example.
Define a lockfile that references the tools to load:
{ "$schema": "https://raw.githubusercontent.com/theoremlp/rules_multitool/main/lockfile.schema.json", "tool-name": { "binaries": [ { "kind": "file", "url": "https://...", "sha256": "sha256 of the file", "os": "linux|macos|windows", "cpu": "x86_64|arm64" } ] } }
The lockfile supports the following binary kinds:
file: the URL refers to a file to download
sha256: the sha256 of the downloaded fileheaders: (optional) a string dictionary of headers to pass to the downloaderauth_patterns: (optional) a string dictionary for use with .netrc files as in https://bazel.build/rules/lib/repo/http#http_file-auth_patternsarchive: the URL referes to an archive to download, specify additional options:
file: executable file within the archivesha256: the sha256 of the downloaded archivetype: (optional) the kind of archive, as in https://bazel.build/rules/lib/repo/http#http_archive-typeheaders: (optional) a string dictionary of headers to pass to the downloaderauth_patterns: (optional) a string dictionary for use with .netrc files as in https://bazel.build/rules/lib/repo/http#http_archive-auth_patternspkg: the URL refers to a MacOS pkg archive to download, specify additional options:
file: executable file within the archivesha256: the sha256 of the downloaded pkg archiveheaders: (optional) a string dictionary of headers to pass to the downloaderauth_patterns: (optional) a string dictionary for use with .netrc files as in https://bazel.build/rules/lib/repo/http#http_archive-auth_patternsOnce your lockfile is defined, load the ruleset in your MODULE.bazel and create a hub that refers to your lockfile:
bazel_dep(name = "rules_multitool", version = "0.0.0") multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool") multitool.hub(lockfile = "//:multitool.lock.json") use_repo(multitool, "multitool")
Tools may then be accessed using @multitool//tools/tool-name.
Instructions for using with WORKSPACE may be found in release notes.
When running @multitool//tools/tool-name, Bazel will execute the tool at the root of the runfiles tree due to https://github.com/bazelbuild/bazel/issues/3325.
To run a tool in the current working directory, use the convenience target @multitool//tools/tool-name:cwd.
A common pattern we recommend to further simplify invoking tools for repository users it to:
tools/ directorytools/_run_multitool.sh with the following code:#!/usr/bin/env bash bazel run "@multitool//tools/$( basename $0 ):cwd" -- "$@"
tools/tool-name to tools/_run_multitool.shWe provide a companion CLI multitool to help manage multitool lockfiles. The CLI supports basic updating of artifacts that come from GitHub releases, and may be extended in the future to support other common release channels.
See our docs on configuring a GitHub Action to check for updates and open PRs periodically.