Skip to content

CI

CI #2

Workflow file for this run

---
name: CI
on:
pull_request:
branches: ["*"]
push:
branches: ["main"]
schedule:
- cron: "0 06 * * MON"
workflow_dispatch:
concurrency:
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.ref }}
env:
NIXPKGS_ALLOW_UNFREE: 1
jobs:
build-servers:
name: Build servers
strategy:
fail-fast: false
matrix:
include:
- configuration: vivi
os: ubuntu-latest
runs-on: ${{ matrix.os }}
steps:
- name: Free disk space
uses: endersonmenezes/free-disk-space@v3
with:
remove_dotnet: true
remove_haskell: true
remove_packages: "azure-cli microsoft-edge-stable google-chrome-stable firefox postgresql* *llvm* mysql*"
testing: false
- uses: actions/checkout@v6
- uses: DeterminateSystems/nix-installer-action@v22
with:
extra-conf: |
extra-substituters = https://devenv.cachix.org https://install.determinate.systems https://nix-community.cachix.org
extra-trusted-public-keys = devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw= cache.flakehub.com-3:hJuILl5sVK4iKm86JzgdXW12Y2Hwd5G07qKtHTOcDCM= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
- name: Build ${{ matrix.configuration }} configuration
env:
NIX_SHOW_STATS: 1
NIX_SHOW_STATS_PATH: nix_eval_stats.json
run: nix build --impure .#nixosConfigurations.${{ matrix.configuration }}.config.system.build.toplevel
- name: Upload Nix evaluation statistics
uses: actions/upload-artifact@v7
with:
name: nix-eval-stats-nixos-${{ matrix.configuration }}
path: nix_eval_stats.json
check:
name: Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: DeterminateSystems/nix-installer-action@v22
with:
extra-conf: |
extra-substituters = https://devenv.cachix.org https://install.determinate.systems https://nix-community.cachix.org
extra-trusted-public-keys = devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw= cache.flakehub.com-3:hJuILl5sVK4iKm86JzgdXW12Y2Hwd5G07qKtHTOcDCM= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
- uses: DeterminateSystems/flake-checker-action@v12
- name: Check flake
env:
NIX_SHOW_STATS: 1
NIX_SHOW_STATS_PATH: nix_eval_stats.json
run: nix flake check --impure
- name: Upload Nix evaluation statistics
uses: actions/upload-artifact@v7
with:
name: nix-eval-stats-check
path: nix_eval_stats.json
...