Skip to content

refactor: isolate VM tests into separate testFlake#329

Merged
jfroche merged 1 commit into
mainfrom
subflake
Feb 3, 2026
Merged

refactor: isolate VM tests into separate testFlake#329
jfroche merged 1 commit into
mainfrom
subflake

Conversation

@jfroche

@jfroche jfroche commented Jan 22, 2026

Copy link
Copy Markdown
Member

Users consuming system-manager as a flake input only need the package, lib, and modules - not the test infrastructure. By moving VM tests to a subflake, the main flake stays minimal with nixpkgs as its only input.

This separation enables CI to run fast package checks independently from slow VM tests, and provides proper flake.lock version pinning for test dependencies like nix-vm-test (replacing the inline fetchTarball).

Future test dependencies (e.g., sops-nix for compatibility testing in #270) can be added to testFlake without touching the main flake.

@jfroche jfroche force-pushed the subflake branch 3 times, most recently from 865678b to c87c8d2 Compare January 22, 2026 11:17
Comment thread buildbot-nix.toml
# Evaluate testFlake which includes:
# - Parent flake checks (package builds for all systems)
# - VM integration tests (Ubuntu variants on x86_64-linux)
flake_dir = "./testFlake"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a great pattern. I didn't know buildbot-nix was configurable like that :)

@jfroche jfroche force-pushed the subflake branch 2 times, most recently from 0553ffa to f90949a Compare February 3, 2026 12:42
Users consuming system-manager as a flake input only need the package,
lib, and modules - not the test infrastructure. By moving VM tests to
a subflake, the main flake stays minimal with nixpkgs as its only input.

This separation enables CI to run fast package checks independently from
slow VM tests, and provides proper flake.lock version pinning for test
dependencies like nix-vm-test (replacing the inline fetchTarball).

Future test dependencies (e.g., sops-nix for compatibility testing in
#270) can be added to testFlake without touching the main flake.
@jfroche jfroche merged commit 072929d into main Feb 3, 2026
3 checks passed
@jfroche jfroche deleted the subflake branch February 3, 2026 13:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants