Migrate to hs-nix-infra for the Nix setup (#30) #11
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: Build and cache with Nix | |
on: | |
workflow_dispatch: | |
push: | |
paths: | |
- '**' | |
- '!.github/**' | |
- '.github/workflows/nix.yml' | |
jobs: | |
build-and-cache: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 740 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest, macos-m1] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Set up Nix with caching | |
uses: kadena-io/setup-nix-with-cache/[email protected] | |
with: | |
cache_url: s3://nixcache.chainweb.com?region=us-east-1 | |
signing_private_key: ${{ secrets.NIX_CACHE_PRIVATE_KEY }} | |
additional_experimental_features: recursive-nix | |
- name: Set up AWS credentials | |
uses: aws-actions/configure-aws-credentials@v2 | |
with: | |
aws-access-key-id: ${{ secrets.NIX_CACHE_AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.NIX_CACHE_AWS_SECRET_ACCESS_KEY }} | |
aws-region: us-east-1 | |
- name: Give root user AWS credentials | |
uses: kadena-io/setup-nix-with-cache/[email protected] | |
- name: Build and cache artifacts | |
run: | | |
echo Building the project | |
nix build .#check --log-lines 500 --show-trace | |
echo Build the recursive outputs | |
nix build .#recursive.allDerivations --log-lines 500 --show-trace | |
nix build .#bundled.recursive.allDerivations --log-lines 500 --show-trace |