mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
[bazel] Use the new gitlib-bazel.wpi.edu cache server (#8342)
This is owned by WPI, so we can make it as big or small as we want. This lets us check in more of the bazel build. Signed-off-by: Austin Schuh <austin.linux@gmail.com>
This commit is contained in:
37
.github/actions/setup-bazel-remote/action.yml
vendored
Normal file
37
.github/actions/setup-bazel-remote/action.yml
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
name: 'Setup Bazel Remote cache'
|
||||
description: 'Sets up bazel-remote cache using basic auth from GitHub secrets'
|
||||
|
||||
inputs:
|
||||
username:
|
||||
description: 'Bazel remote cache username'
|
||||
password:
|
||||
description: 'Bazel remote cache password'
|
||||
remote_url:
|
||||
description: 'Bazel remote cache base URL (no credentials or protocol, e.g. gitlib-bazel.wpi.edu)'
|
||||
default: 'gitlib-bazel.wpi.edu'
|
||||
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: Setup bazel-remote (skip when no creds)
|
||||
env:
|
||||
CACHE_USER: ${{ inputs.username }}
|
||||
CACHE_PASS: ${{ inputs.password }}
|
||||
REMOTE_URL: ${{ inputs.remote_url }}
|
||||
if: ${{ env.CACHE_USER == '' || env.CACHE_PASS == '' }}
|
||||
shell: bash
|
||||
run: |
|
||||
echo "No bazel-remote credentials detected; leaving caching as previously configured"
|
||||
echo "build:ci --config=remote_cache_readonly" >> bazel_auth.rc
|
||||
|
||||
- name: Setup bazel-remote (with creds)
|
||||
env:
|
||||
CACHE_USER: ${{ inputs.username }}
|
||||
CACHE_PASS: ${{ inputs.password }}
|
||||
REMOTE_URL: ${{ inputs.remote_url }}
|
||||
if: ${{ env.CACHE_USER != '' && env.CACHE_PASS != '' }}
|
||||
shell: bash
|
||||
run: |
|
||||
echo "Bazel-remote credentials detected; configuring bazel_auth.rc"
|
||||
URL_WITH_CREDS="grpcs://${CACHE_USER}:${CACHE_PASS}@${REMOTE_URL}"
|
||||
echo "build:remote_cache --remote_cache=${URL_WITH_CREDS}" >> bazel_auth.rc
|
||||
27
.github/workflows/bazel.yml
vendored
27
.github/workflows/bazel.yml
vendored
@@ -26,13 +26,14 @@ jobs:
|
||||
java-version: 21
|
||||
architecture: x64
|
||||
|
||||
- id: Setup_build_buddy
|
||||
uses: ./.github/actions/setup-build-buddy
|
||||
- id: Setup_bazel_remote
|
||||
uses: ./.github/actions/setup-bazel-remote
|
||||
with:
|
||||
token: ${{ secrets.BUILDBUDDY_API_KEY }}
|
||||
username: ${{ secrets.BAZEL_CACHE_USERNAME }}
|
||||
password: ${{ secrets.BAZEL_CACHE_PASSWORD }}
|
||||
|
||||
- name: bazel ${{ matrix.action }}
|
||||
run: bazel ${{ matrix.action }} -k ... --config=ci ${{ matrix.config }} --verbose_failures
|
||||
run: bazel ${{ matrix.action }} ... --config=ci ${{ matrix.config }} --verbose_failures
|
||||
shell: bash
|
||||
|
||||
build-mac:
|
||||
@@ -47,13 +48,14 @@ jobs:
|
||||
distribution: 'temurin'
|
||||
java-version: 21
|
||||
|
||||
- id: Setup_build_buddy
|
||||
uses: ./.github/actions/setup-build-buddy
|
||||
- id: Setup_bazel_remote
|
||||
uses: ./.github/actions/setup-bazel-remote
|
||||
with:
|
||||
token: ${{ secrets.BUILDBUDDY_API_KEY }}
|
||||
username: ${{ secrets.BAZEL_CACHE_USERNAME }}
|
||||
password: ${{ secrets.BAZEL_CACHE_PASSWORD }}
|
||||
|
||||
- name: bazel test (release)
|
||||
run: bazel test -k ... --config=ci -c opt --nojava_header_compilation --verbose_failures
|
||||
run: bazel test ... --config=ci -c opt --nojava_header_compilation --verbose_failures
|
||||
shell: bash
|
||||
|
||||
build-linux:
|
||||
@@ -70,10 +72,11 @@ jobs:
|
||||
with: { fetch-depth: 0 }
|
||||
- uses: bazelbuild/setup-bazelisk@v3
|
||||
|
||||
- id: Setup_build_buddy
|
||||
uses: ./.github/actions/setup-build-buddy
|
||||
- id: Setup_bazel_remote
|
||||
uses: ./.github/actions/setup-bazel-remote
|
||||
with:
|
||||
token: ${{ secrets.BUILDBUDDY_API_KEY }}
|
||||
username: ${{ secrets.BAZEL_CACHE_USERNAME }}
|
||||
password: ${{ secrets.BAZEL_CACHE_PASSWORD }}
|
||||
|
||||
- uses: bazel-contrib/setup-bazel@0.15.0
|
||||
with:
|
||||
@@ -82,7 +85,7 @@ jobs:
|
||||
bazelisk-version: 1.x
|
||||
|
||||
- name: bazel ${{ matrix.action }} (release)
|
||||
run: bazel ${{ matrix.action }} ... --config=ci -c opt ${{ matrix.config }} -k --verbose_failures
|
||||
run: bazel ${{ matrix.action }} ... --config=ci -c opt ${{ matrix.config }} --verbose_failures
|
||||
|
||||
buildifier:
|
||||
name: "buildifier"
|
||||
|
||||
Reference in New Issue
Block a user