2025-05-24 23:40:23 +08:00
|
|
|
{ pkgs, ... }:
|
|
|
|
{
|
|
|
|
name = "vault";
|
|
|
|
meta = with pkgs.lib.maintainers; {
|
|
|
|
maintainers = [ lnl7 ];
|
|
|
|
};
|
|
|
|
nodes.machine =
|
|
|
|
{ pkgs, ... }:
|
|
|
|
{
|
|
|
|
environment.systemPackages = [ pkgs.vault ];
|
|
|
|
environment.variables.VAULT_ADDR = "http://127.0.0.1:8200";
|
|
|
|
services.vault.enable = true;
|
2024-12-10 20:26:33 +01:00
|
|
|
};
|
2017-12-04 12:42:30 +01:00
|
|
|
|
2025-05-24 23:40:23 +08:00
|
|
|
testScript = ''
|
|
|
|
start_all()
|
2017-12-04 12:42:30 +01:00
|
|
|
|
2025-05-24 23:40:23 +08:00
|
|
|
machine.wait_for_unit("multi-user.target")
|
|
|
|
machine.wait_for_unit("vault.service")
|
|
|
|
machine.wait_for_open_port(8200)
|
|
|
|
machine.succeed("vault operator init")
|
|
|
|
# vault now returns exit code 2 for sealed vaults
|
|
|
|
machine.fail("vault status")
|
|
|
|
machine.succeed("vault status || test $? -eq 2")
|
|
|
|
'';
|
|
|
|
}
|