Skip to content
box

GitHub Action

Setup Bazelisk

v3.0.0 Latest version

Setup Bazelisk

box

Setup Bazelisk

Set up Bazelisk and add it to the PATH

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Setup Bazelisk

uses: bazelbuild/[email protected]

Learn more about this action in bazelbuild/setup-bazelisk

Choose a version

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 actions/runner-images#490 so this setup is not necessary unless you want to customize the Bazelisk version, or are running Bazel inside a container.

Validate 'setup-bazelisk'

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

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: bash in you run: steps. (#3)
  • Windows removes one of the slashes (/) when two are present (bazel test //tests/... becomes bazel 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