Files
nixos-config/.gitea/workflows/ci.yml
T
Miguel Palhas 82205727cd
CI / lint (push) Successful in 1m25s
CI / eval (push) Failing after 2m6s
ci: make lint steps non-gating (step-level continue-on-error)
Job-level continue-on-error still rendered red and skipped statix/deadnix
after nixfmt failed. Step-level lets all three run without failing the job.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 18:56:33 +01:00

48 lines
1.6 KiB
YAML

# Gitea Actions CI for the nix config.
#
# Requirements on the act_runner:
# - a runner with the `ubuntu-latest` label (or change `runs-on` below)
# - the runner must be allowed to fetch actions from github.com
# (act_runner default: DEFAULT_ACTIONS_URL = https://github.com)
#
# Design: `eval` is blocking (it's the real safety net — the whole module
# system must evaluate). `lint` is informational (continue-on-error) because
# the existing statix/deadnix/format findings are intentionally tolerated.
# Flip `continue-on-error` to false once the config is clean to make it gating.
name: CI
on:
push:
branches: [main]
pull_request:
jobs:
eval:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: DeterminateSystems/nix-installer-action@main
- name: Evaluate all flake outputs (no build)
run: nix flake check --no-build
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: DeterminateSystems/nix-installer-action@main
# Each lint step is continue-on-error so all three always run and none
# reds the job — findings are visible in the logs but non-gating. Flip a
# step's continue-on-error to false (or drop it) to make it blocking.
- name: nixfmt (format check)
continue-on-error: true
run: |
fd_nix=$(find . -name '*.nix')
nix run nixpkgs#nixfmt -- --check $fd_nix
- name: statix
continue-on-error: true
run: nix run nixpkgs#statix -- check
- name: deadnix
continue-on-error: true
run: nix run nixpkgs#deadnix -- --fail