Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/buildless/setup
Github Action for lightning-fast build caching with Buildless
https://github.com/buildless/setup
build-acceleration build-cache build-cache-agent buildcache github-actions github-actions-cache remote-build-cache
Last synced: about 2 months ago
JSON representation
Github Action for lightning-fast build caching with Buildless
- Host: GitHub
- URL: https://github.com/buildless/setup
- Owner: buildless
- License: mit
- Created: 2023-11-30T23:22:01.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-22T20:53:48.000Z (9 months ago)
- Last Synced: 2024-04-22T21:48:30.466Z (9 months ago)
- Topics: build-acceleration, build-cache, build-cache-agent, buildcache, github-actions, github-actions-cache, remote-build-cache
- Language: TypeScript
- Homepage: https://less.build
- Size: 3.09 MB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
# GitHub Action: Setup Buildless
![Latest Release](https://img.shields.io/github/v/release/buildless/setup)
[![CI](https://github.com/buildless/setup-buildless/actions/workflows/ci.yml/badge.svg)](https://github.com/buildless/setup-buildless/actions/workflows/ci.yml)
[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=buildless_setup&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=buildless_setup)
[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=buildless_setup&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=buildless_setup)This repository provides a [GitHub Action][0] to setup [Buildless][1] within your workflows. Supported features:
- **Buildless CLI:** Install and authorize the Buildless CLI
- **Buildless Agent:** Install and run the near-caching Buildless Agent## Usage
> [Full documentation here](https://docs.less.build/docs/github-actions)
**Install the latest Buildless CLI, add it to the `PATH`, and run the agent**
```yaml
- name: "Setup: Buildless"
uses: buildless/[email protected]
```**Install the latest Buildless CLI, add it to the `PATH`, without the agent:**
```yaml
- 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][1] 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_APIKEY }}` | Explicitly set an API key |
| `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**
```yaml
- 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][0] 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`)[0]: https://github.com/features/actions
[1]: https://less.build