setup-bazelisk
setup-bazelisk copied to clipboard
Set up your GitHub Actions workflow with a specific version of Bazelisk
[!IMPORTANT] setup-bazelisk has been superseded by setup-bazel and all maintenance and support has ceased. setup-bazelisk will remain on GitHub indefinitely, but will almost certainly stop working someday, so if your GitHub Actions workflows use setup-bazelisk, please migrate them to setup-bazel.
setup-bazelisk v3
Set up your GitHub Actions workflow with a specific version of Bazelisk
Note that GitHub Actions includes Bazelisk by default as of https://github.com/actions/virtual-environments/pull/490 so this setup is not necessary unless you want to customize the Bazelisk version, or are running Bazel inside a container.
This action sets up Bazelisk for use in actions by:
- optionally downloading and caching a version of Bazelisk by version and adding to PATH
- setting up cache for downloaded Bazel versions
What's new
- Updated to the node20 runtime by default
- This requires a minimum Actions Runner version of v2.308.0 to run.
Usage
See action.yml
Basic:
steps:
- uses: actions/checkout@v4
- uses: bazelbuild/setup-bazelisk@v3
- name: Mount bazel cache # Optional
uses: actions/cache@v4
with:
path: "~/.cache/bazel"
key: bazel
- run: bazel build //...
Known issues on Windows
- This action doesn't work with PowerShell. Make sure to have
shell: bashin yourun:steps. (#3) - Windows removes one of the slashes (
/) when two are present (bazel test //tests/...becomesbazel test /tests/...and fails). (#4) As a workaround, don't have any prefix//. Since all runs start at WORKSPACE dir, it should work all the same.
Full workaround example on windows:
- name: Run tests
run: bazel test tests/...
shell: bash
License
The scripts and documentation in this project are released under the MIT License