diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ecaa5ba..6873954 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,6 +35,9 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, macos-latest] + # ATTIC_TOKEN_PUBLIC only exists in the public-cache environment; master + # jobs must opt into it to publish to the public cache. + environment: ${{ github.ref == 'refs/heads/master' && 'public-cache' || '' }} runs-on: ${{ matrix.os }} timeout-minutes: 90 @@ -42,17 +45,13 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 - - - name: Install Nix - uses: DeterminateSystems/nix-installer-action@main - - - name: Setup Cachix - uses: cachix/cachix-action@v15 - with: - name: logos-co - authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - # The runner is the shared `doctest` CLI, invoked directly via its flake + + - name: Setup Nix and Logos cache + uses: logos-co/setup-nix-cache-action@v1 + with: + attic-token-ci: ${{ secrets.ATTIC_TOKEN_CI }} + attic-token-public: ${{ secrets.ATTIC_TOKEN_PUBLIC }} # (github:logos-co/logos-doctest). The flake bundles Python + PyYAML # (+ rich), so no pip install step is needed. - name: Test - UI chain + Composing Modules + Dependency Interfaces (C Library tutorial pulled in via requires)