Skip to content

🌩️ Use cloud caching #44

🌩️ Use cloud caching

🌩️ Use cloud caching #44

Workflow file for this run

---
name: 🔥 Test Mojo Standard library
"on":
push:
branches: [main]
pull_request:
branches: [main]
jobs:
stdlib-tests:
strategy:
fail-fast: false
# TODO(aaronmondal): Add macos-14
matrix:
os: [ubuntu-24.04]
runs-on: ${{ matrix.os }}
timeout-minutes: 60
permissions:
id-token: write
steps:
- name: Get Web Identity Token via Cognito Identity Pool
id: web_id_token
# See: https://github.com/catnekaise/cognito-idpool-auth/issues/6
uses: >- # alpha
catnekaise/cognito-idpool-basic-auth@287d4dabb527d8b78d3df6e0436d46e3abd209d3
with:
# yamllint disable rule:line-length
cognito-identity-pool-id: "us-east-2:7edef192-7c1c-4e55-8ab4-6035b9c2288f"
aws-account-id: "471112781046"
aws-region: "us-east-2"
audience: "sts.amazonaws.com"
- name: Checkout
uses: >- #v4.1.6
actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
- name: Install Nix
uses: >- # v11
DeterminateSystems/nix-installer-action@8cdf194da984e4f12b2f8c36d1fa107c1dd67f5c
- name: Cache Nix derivations
uses: >- # v6
DeterminateSystems/magic-nix-cache-action@87e8236f46702ab0ce5a058b605a173ec88d618e
- name: Create secret from token
uses: actions/github-script@v6
with:
# yamllint disable rule:line-length
script: >-
core.setSecret('NATIVELINK_TOKEN',
'${{ steps.web_id_token.outputs.cognito_identity_oidc_access_token }}')
- name: Invoke Bazel build in Nix shell
env:
NATIVELINK_TOKEN: ${{ env.NATIVELINK_TOKEN }}
run: |
nix develop --impure --command \
bash -c "bazel test \
--jobs=4 \
--verbose_failures \
--experimental_remote_cache_async \
--remote_header=x-nativelink-api-key=$NATIVELINK_TOKEN \
--remote_cache=grpcs://cas-gha-ci.build-faster.nativelink.net:443 \
@mojo//..."