nixos/tests/botamusique: init

Changed files
+48
nixos
+1
nixos/tests/all-tests.nix
···
boot = handleTestOn ["x86_64-linux"] ./boot.nix {}; # syslinux is unsupported on aarch64
boot-stage1 = handleTest ./boot-stage1.nix {};
borgbackup = handleTest ./borgbackup.nix {};
+
botamusique = handleTest ./botamusique.nix {};
buildbot = handleTest ./buildbot.nix {};
buildkite-agents = handleTest ./buildkite-agents.nix {};
caddy = handleTest ./caddy.nix {};
+47
nixos/tests/botamusique.nix
···
+
import ./make-test-python.nix ({ pkgs, lib, ...} :
+
+
{
+
name = "botamusique";
+
meta.maintainers = with lib.maintainers; [ hexa ];
+
+
nodes = {
+
machine = { config, ... }: {
+
services.murmur = {
+
enable = true;
+
registerName = "NixOS tests";
+
};
+
+
services.botamusique = {
+
enable = true;
+
settings = {
+
server = {
+
channel = "NixOS tests";
+
};
+
bot = {
+
version = false;
+
auto_check_update = false;
+
};
+
};
+
};
+
};
+
};
+
+
testScript = ''
+
start_all()
+
+
machine.wait_for_unit("murmur.service")
+
machine.wait_for_unit("botamusique.service")
+
+
machine.sleep(10)
+
+
machine.wait_until_succeeds(
+
"journalctl -u murmur.service -e | grep -q '<1:botamusique(-1)> Authenticated'"
+
)
+
+
with subtest("Check systemd hardening"):
+
output = machine.execute("systemctl show botamusique.service")[1]
+
machine.log(output)
+
output = machine.execute("systemd-analyze security botamusique.service")[1]
+
machine.log(output)
+
'';
+
})