Files
nixpkgs/nixos/tests/systemd-initrd-credentials.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

33 lines
822 B
Nix

{ lib, pkgs, ... }:
{
name = "systemd-initrd-credentials";
nodes.machine =
{ pkgs, ... }:
{
virtualisation = {
qemu.options = [
"-smbios type=11,value=io.systemd.credential:cred-smbios=secret-smbios"
];
};
boot.initrd.availableKernelModules = [ "dmi_sysfs" ];
boot.kernelParams = [ "systemd.set_credential=cred-cmdline:secret-cmdline" ];
boot.initrd.systemd = {
enable = true;
};
};
testScript = ''
machine.wait_for_unit("multi-user.target")
# Check credential passed via kernel command line
assert "secret-cmdline" in machine.succeed("systemd-creds --system cat cred-cmdline")
# Check credential passed via SMBIOS
assert "secret-smbios" in machine.succeed("systemd-creds --system cat cred-smbios")
'';
}