bos55-nix-config-cicd/.github/workflows/build.yml
Tibo De Peuter 02f2ade703
Some checks failed
Build / Determining hosts to build (push) Successful in 7s
Build / build (push) Failing after 7s
Build / Determining hosts to build (pull_request) Successful in 8s
Build / build (pull_request) Failing after 7s
Using EOF
2026-02-08 15:16:02 +01:00

57 lines
1.5 KiB
YAML

name: "Build"
on:
pull_request:
push:
env:
RUNNER_TOOL_CACHE: /toolcache
jobs:
determine-hosts:
name: "Determining hosts to build"
runs-on: ubuntu-latest
container:
image: catthehacker/ubuntu:act-latest
outputs:
hosts: ${{ steps.hosts.outputs.hostnames }}
steps:
- uses: actions/checkout@v5
- uses: https://github.com/cachix/install-nix-action@v31
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: "Determine hosts"
id: hosts
run: |
hostnames="$(nix eval .#nixosConfigurations --apply builtins.attrNames --json)"
{
echo "hostnames<<EOF"
echo "${hostnames}"
echo EOF
} >> "${GITHUB_OUTPUT}" # Preserve quotes
build:
runs-on: ubuntu-latest
container:
image: catthehacker/ubuntu:act-latest
needs: determine-hosts
strategy:
matrix:
hostname: ${{ fromJSON(needs.determine-hosts.outputs.hosts) }}
steps:
- uses: actions/checkout@v5
- uses: https://github.com/cachix/install-nix-action@v31
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: "Debug needs outputs"
run: |
echo "${{ needs.determine-hosts.outputs.hosts }}"
- name: Debug Matrix
run: |
echo "The matrix value is: ${{ matrix.hostname }}"
- name: "Define host"
run: |
echo "Building for: ${{ matrix.hostname }}"
- run: |
nixos-rebuild build --flake ".#${{ matrix.hostname }}"