Skip to content

Commit

Permalink
Better use of Nix in CI
Browse files Browse the repository at this point in the history
- accept flake config to use substituters
- feed the `morsmall` Cachix instance
  • Loading branch information
Niols committed Sep 17, 2023
1 parent 259ca21 commit 669645d
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 15 deletions.
27 changes: 27 additions & 0 deletions .github/composites/setup-nix/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
inputs:
githubAccessToken:
required: true
cachixAuthToken:
required: true

runs:
using: composite

steps:
- name: Install Nix
uses: cachix/install-nix-action@v23
with:
extra_nix_config: |
## Access token to avoid triggering GitHub's rate limiting.
access-tokens = github.com=${{ inputs.githubAccessToken }}
## Accept arbitrary substituters from the flake.
accept-flake-config = true
- name: Setup Nix caches
uses: cachix/cachix-action@v12
with:
name: morsmall
## This auth token will give write access to the cache, meaning that
## everything that happens in CI will be pushed at the end of the job.
authToken: "${{ inputs.cachixAuthToken }}"
27 changes: 12 additions & 15 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,11 @@ jobs:
with:
submodules: true

- name: Install Nix
uses: cachix/install-nix-action@v23
- name: Setup Nix
uses: ./.github/composites/setup-nix
with:
extra_nix_config: |
## Access token to avoid triggering GitHub's rate limiting.
access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
githubAccessToken: ${{ secrets.GITHUB_TOKEN }}
cachixAuthToken: ${{ secrets.CACHIX_AUTH_TOKEN }}

- name: Install dependencies
run: |
Expand Down Expand Up @@ -66,12 +65,11 @@ jobs:
with:
submodules: true

- name: Install Nix
uses: cachix/install-nix-action@v23
- name: Setup Nix
uses: ./.github/composites/setup-nix
with:
extra_nix_config: |
## Access token to avoid triggering GitHub's rate limiting.
access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
githubAccessToken: ${{ secrets.GITHUB_TOKEN }}
cachixAuthToken: ${{ secrets.CACHIX_AUTH_TOKEN }}

- name: Build
run: |
Expand All @@ -85,12 +83,11 @@ jobs:
- name: Check out repository code.
uses: actions/checkout@v4

- name: Install Nix
uses: cachix/install-nix-action@v23
- name: Setup Nix
uses: ./.github/composites/setup-nix
with:
extra_nix_config: |
## Access token to avoid triggering GitHub's rate limiting.
access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
githubAccessToken: ${{ secrets.GITHUB_TOKEN }}
cachixAuthToken: ${{ secrets.CACHIX_AUTH_TOKEN }}

- name: Run flake checks
run: |
Expand Down

0 comments on commit 669645d

Please sign in to comment.