nix: add tests for channel tarballs and gc pinning

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ifb9d95d5206b7b1cf23fa3d5aaf9d0db6a6a6964
This commit is contained in:
raf 2026-02-18 11:43:05 +03:00
commit 9dde82d46f
Signed by: NotAShelf
GPG key ID: 29D95B64378DB4BF
6 changed files with 540 additions and 5 deletions

View file

@ -254,6 +254,9 @@ pkgs.testers.nixosTest {
)
assert code.strip() == "403", f"Expected 403 for read-only restart, got {code.strip()}"
# Stop the queue runner so it cannot claim the build before we bump it
machine.systemctl("stop fc-queue-runner.service")
# Create a pending build to test bump
with subtest("Create pending build for bump test"):
machine.succeed(
@ -288,7 +291,9 @@ pkgs.testers.nixosTest {
)
assert "cancelled" in result.strip().lower(), f"Expected cancelled, got: {result.strip()}"
# Evaluation comparison ----
machine.systemctl("start fc-queue-runner.service")
# Evaluation comparison
with subtest("Trigger second evaluation for comparison"):
result = machine.succeed(
"curl -sf -X POST http://127.0.0.1:3000/api/v1/evaluations/trigger "
@ -322,7 +327,7 @@ pkgs.testers.nixosTest {
assert len(data["new_jobs"]) >= 1, f"Expected at least 1 new job, got {data['new_jobs']}"
assert any(j["job_name"] == "new-pkg" for j in data["new_jobs"]), "new-pkg should be in new_jobs"
# Channel CRUD lifecycle ----
# Channel CRUD lifecycle
with subtest("Create channel via API"):
result = machine.succeed(
"curl -sf -X POST http://127.0.0.1:3000/api/v1/channels "