nixos-config/.github/workflows/build.yml

48 lines
No EOL
1.7 KiB
YAML

name: build
on:
pull_request:
branches:
- main
jobs:
build:
strategy:
matrix:
host:
- installer.x86_64-linux
- nas.x86_64-linux
- nixos-8gb-fsn1-1.x86_64-linux
- nutty-noon.x86_64-linux
- thinkrac.x86_64-linux
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Cleanup Disk
uses: curoky/cleanup-disk-action@v2.0
with:
retain: ''
- name: Install Nix
uses: cachix/install-nix-action@v18
with:
nix_path: nixpkgs=channel:nixos-unstable
extra_nix_config: |
access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= nixcache:8KKuGz95Pk4UJ5W/Ni+pN+v+LDTkMMFV4yrGmAYgkDg= hydra.nixos.org-1:CNHJZBh9K4tP3EKF6FkkgeVYsS3ohTl+oS0Qa8bezVs=
experimental-features = nix-command flakes ca-derivations
post-build-hook = ${{ github.workspace }}/scripts/post-build-hook
substituters = https://cache.chir.rs/ https://cache.nixos.org/
- name: Download patched nix
run: nix build github:DarkKirb/nix-packages#nix-s3-dedup
- name: Set up secrets
run: |
echo "$NIX_CACHE_KEY" > ~/cache.key
sudo mkdir /root/.aws
echo "$AWS_CREDENTIALS" | sudo tee /root/.aws/credentials > /dev/null
env:
NIX_CACHE_KEY: ${{secrets.NIX_CACHE_KEY}}
AWS_CREDENTIALS: ${{secrets.AWS_CREDENTIALS}}
- name: Build ${{ matrix.host }}
run: |
nix build '.#hydraJobs.${{ matrix.host }}'
env:
NIXPKGS_ALLOW_UNFREE: 1