Improve BuildBuddy cache efficiency #232
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
push: | |
branches: [master] | |
pull_request: | |
branches: [master] | |
jobs: | |
test: | |
name: Test | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, ubuntu-latest] | |
# Latest version of required software, and a minimum version as | |
# specified in the README. | |
bazel_version: [latest] | |
r_version: [release] | |
# Temporarily disable minimum supported version tests to reduce load on | |
# test runners, and protect ourselves from flakiness. | |
#include: | |
# - r_version: 4.1.2 # Also hard-coded in system_state.sh. | |
# os: macos-latest | |
# bazel_version: latest | |
# - bazel_version: 5.0.0 # Also hard-coded in r_rules_dependencies. | |
# os: macos-latest | |
# r_version: release | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v4 | |
- name: Setup R | |
uses: r-lib/actions/setup-r@v2 | |
with: | |
r-version: ${{ matrix.r_version }} | |
- name: Install additional packages | |
if: matrix.os == 'ubuntu-latest' | |
run: sudo apt-get install libtinfo5 libcurl4-openssl-dev | |
- name: Create Buildbuddy certs | |
shell: bash | |
env: | |
BUILDBUDDY_ORG_CERT: ${{ secrets.BUILDBUDDY_ORG_CERT }} | |
BUILDBUDDY_ORG_KEY: ${{ secrets.BUILDBUDDY_ORG_KEY }} | |
run: | | |
if [[ "${BUILDBUDDY_ORG_CERT}" ]]; then | |
echo "${BUILDBUDDY_ORG_CERT}">tests/buildbuddy-cert.pem | |
echo "build --tls_client_certificate=buildbuddy-cert.pem">>tests/auth.bazelrc | |
fi | |
if [[ "${BUILDBUDDY_ORG_KEY}" ]]; then | |
echo "${BUILDBUDDY_ORG_KEY}">tests/buildbuddy-key.pem | |
echo "build --tls_client_key=buildbuddy-key.pem">>tests/auth.bazelrc | |
fi | |
- name: Run tests | |
env: | |
USE_BAZEL_VERSION: ${{ matrix.bazel_version }} | |
run: tests/run_tests.sh | |
- name: Archive debug artifacts | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: archive-debug-artifacts-${{ matrix.os }}-${{ matrix.bazel_version }}-${{ matrix.r_version }} | |
path: /tmp/debug-artifacts/* |