feat(ci): Add Forgejo Actions CI workflow
Set up continuous integration for nixos-configs: - Validate flake syntax with `nix flake check --no-build` - Display flake metadata and outputs for visibility - Build critical NixOS configurations in parallel matrix - Configurations tested: john-endesktop, zix790prors, nix-book, boxy Implements bead: nixos-configs-2hq
This commit is contained in:
47
.forgejo/workflows/ci.yaml
Normal file
47
.forgejo/workflows/ci.yaml
Normal file
@@ -0,0 +1,47 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
pull_request:
|
||||
branches: [main]
|
||||
|
||||
jobs:
|
||||
flake-check:
|
||||
runs-on: nix
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Check flake syntax
|
||||
run: nix flake check --no-build
|
||||
|
||||
- name: Show flake metadata
|
||||
run: nix flake metadata
|
||||
|
||||
- name: Show flake outputs
|
||||
run: nix flake show
|
||||
|
||||
build-configs:
|
||||
runs-on: nix
|
||||
needs: flake-check
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
config:
|
||||
# Critical server configurations
|
||||
- john-endesktop
|
||||
# Desktop configurations
|
||||
- zix790prors
|
||||
- nix-book
|
||||
# Media center
|
||||
- boxy
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Build ${{ matrix.config }}
|
||||
run: |
|
||||
nix build .#nixosConfigurations.${{ matrix.config }}.config.system.build.toplevel \
|
||||
--no-link \
|
||||
--print-build-logs
|
||||
Reference in New Issue
Block a user