54 lines
1.1 KiB
Nix
54 lines
1.1 KiB
Nix
{
|
|
pkgs,
|
|
nixosLib,
|
|
clan-core,
|
|
...
|
|
}:
|
|
nixosLib.runTest (
|
|
{ ... }:
|
|
{
|
|
imports = [
|
|
clan-core.modules.nixosTest.clanTest
|
|
];
|
|
|
|
hostPkgs = pkgs;
|
|
|
|
name = "service-mycelium";
|
|
|
|
clan = {
|
|
test.useContainers = false;
|
|
directory = ./.;
|
|
modules."@clan/mycelium" = ../../clanServices/mycelium/default.nix;
|
|
inventory = {
|
|
machines.server = { };
|
|
|
|
instances = {
|
|
mycelium-test = {
|
|
module.name = "@clan/mycelium";
|
|
module.input = "self";
|
|
roles.peer.machines."server".settings = {
|
|
openFirewall = true;
|
|
addHostedPublicNodes = true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
nodes = {
|
|
server = { };
|
|
};
|
|
|
|
testScript = ''
|
|
start_all()
|
|
|
|
# Check that mycelium service is running
|
|
server.wait_for_unit("mycelium")
|
|
server.succeed("systemctl status mycelium")
|
|
|
|
# Check that mycelium is listening on its default port
|
|
server.wait_until_succeeds("${pkgs.iproute2}/bin/ss -tulpn | grep -q 'mycelium'", 10)
|
|
'';
|
|
}
|
|
)
|