forked from Bos55/nix-config
Some checks failed
Check / check (push) Failing after 2s
Added a CI/CD step to verify cryptographic signatures for deployments. Updated SECURITY.md with the new trust model and refined GHA workflows for consistency.
40 lines
1.1 KiB
YAML
40 lines
1.1 KiB
YAML
name: Build
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- 'test-*'
|
|
pull_request:
|
|
|
|
jobs:
|
|
# Job to find all hosts that should be built
|
|
get-hosts:
|
|
runs-on: ubuntu-latest
|
|
container: catthehacker/ubuntu:act-24.04
|
|
outputs:
|
|
hosts: ${{ steps.set-hosts.outputs.hosts }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install Nix
|
|
uses: cachix/install-nix-action@v27
|
|
- id: set-hosts
|
|
run: |
|
|
# Extract host names from nixosConfigurations
|
|
HOSTS=$(nix eval .#nixosConfigurations --apply "builtins.attrNames" --json)
|
|
echo "hosts=$HOSTS" >> $GITHUB_OUTPUT
|
|
|
|
build:
|
|
needs: get-hosts
|
|
runs-on: ubuntu-latest
|
|
container: catthehacker/ubuntu:act-24.04
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
host: ${{ fromJson(needs.get-hosts.outputs.hosts) }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install Nix
|
|
uses: cachix/install-nix-action@v27
|
|
- name: Build NixOS configuration
|
|
run: nix build .#nixosConfigurations.${{ matrix.host }}.config.system.build.toplevel
|