Skip to content
box

GitHub Action

Setup Buildless

v1.0.2 Latest version

Setup Buildless

box

Setup Buildless

Lightning-fast build caching for Github Actions with Buildless

Installation

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

              

- name: Setup Buildless

uses: buildless/[email protected]

Learn more about this action in buildless/setup

Choose a version

GitHub Action: Setup Buildless

Latest Release CI codecov Security Rating Reliability Rating

This repository provides a GitHub Action to setup Buildless within your workflows. Supported features:

  • Buildless CLI: Install and authorize the Buildless CLI
  • Buildless Agent: Install and run the near-caching Buildless Agent

Usage

Install the latest Buildless CLI, add it to the PATH, and run the agent

  - name: "Setup: Buildless"
    uses: buildless/[email protected]

Install the latest Buildless CLI, add it to the PATH, without the agent:

  - name: "Setup: Buildless"
    uses: buildless/[email protected]
    with:
      agent: false  # you really should use the agent tho

Authorization

The CLI and Agent will both automatically use BUILDLESS_APIKEY, if present, to authorize cache traffic and cloud backhaul. If no authorization material is present, only local caching is enabled.

Sign up for a Buildless Cloud account to obtain an API key. It's free to start.

Options

The full suite of available options are below.

Option Type Default Description
version string latest Version to install; defaults to latest
os string (Current) OS to target; defaults to current platform
arch string (Current) Arch to target; defaults to current platform
agent boolean true Install and start the Buildless Agent
apikey string ${{ env.BUILDLESS_API_KEY }} Perform a self-test after installing
token string ${{ env.GITHUB_TOKEN }} GitHub token to use for fetching assets
export_path boolean true Whether to install Buildless onto the PATH

Options for os (support varies)

  • darwin, mac, macos
  • windows, win32
  • linux

Options for arch (support varies)

  • amd64, x64, x86_64
  • arm64, aarch64

Full configuration sample with defaults

  - name: "Setup: Buildless"
    uses: buildless/setup@v1
    with:
      version: latest
      os: linux
      arch: amd64
      agent: true
      apikey: ${{ env.BUILDLESS_API_KEY || secrets.BUILDLESS_API_KEY }}
      token: ${{ env.GITHUB_TOKEN }}
      export_path: true

What is Buildless?

Buildless is a build caching system which works with most build tools. If you have a build tool that supports remote caching, Buildless can probably plug right in, and it makes development fast and fun.

Supported language ecosystems and toolchains include:

  • Gradle, Maven, JVM (Kotlin, Java, Groovy, Scala, et al)
  • Bazel (supports gRPC build cache APIs)
  • C, C++, Swift, Rust, etc (C-like toolchains, via tools like sccache)
  • JavaScript, TypeScript, CSS, etc (with tools like turborepo)