Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

systemd: expand functionality #52

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

Conversation

aanderse
Copy link
Contributor

this PR is still an early WIP but i thought it best to publish my work as soon as possible in case:

  • anyone else was interested in this functionality and wanted to collaborate instead of duplicate work
  • numtide absolutely doesn't want this functionality so they can tell me sooner rather than later

this PR adds a few more options/implements functionality from nixos:

  • systemd.user.* options
  • an implementation for systemd.packages so you can utilize upstream systemd units that live in nixpkgs packages

the latter is particularly useful to a large audience

testing and further details to follow, though as mentioned above... if this functionality is absolutely not wanted by numtide i would love to hear sooner rather than later ❤️

@aanderse
Copy link
Contributor Author

update: i ended up testing both of these features and they work great. i will try to find some time to write a test for this and then mark as ready for review.

@aanderse
Copy link
Contributor Author

any hint on how to interactively run the vm tests locally? when i run vm tests locally they always fail on this line, even against the numtide/main branch... 🤔

cc @r-vdp

@aanderse aanderse marked this pull request as ready for review November 28, 2023 16:01
@r-vdp
Copy link
Member

r-vdp commented Jan 8, 2024

@aanderse you can do that as follows:

nix build -vL '.#checks.x86_64-linux.vm-test-example-ubuntu_23_04_cloudimg.driverInteractive'
./result/bin/run-vm

and then you'll get the usual TUI for interactive NixOS tests.

From there, you can start the nodes and run the test script with

start_all()
test_script()

and you have things like node.shell_interact() to get a shell on a node.

I just tested this on the main branch and it works for me. Let me know if you're still stuck!

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.

None yet

2 participants