chore(test): Add configFileVersion attribute to the rosenpass nix package and print config file versions of used packages in integration tests

This commit is contained in:
David Niehues
2025-08-12 13:58:00 +02:00
parent 3e4e67b1e3
commit 651d59cc8c
2 changed files with 25 additions and 0 deletions

View File

@@ -72,6 +72,8 @@ rustPlatform.buildRustPackage {
package package
]; ];
configFileVersion = "1";
doCheck = true; doCheck = true;
cargoLock = { cargoLock = {

View File

@@ -17,6 +17,21 @@ let
keyExchangePathBC = "/root/peer-bc.osk"; keyExchangePathBC = "/root/peer-bc.osk";
keyExchangePathCB = "/root/peer-cb.osk"; keyExchangePathCB = "/root/peer-cb.osk";
getConfigFileVersion =
rosenpassVersion:
let
configFileVersion =
if builtins.hasAttr "configFileVersion" rosenpassVersion then
rosenpassVersion.configFileVersion
else
"0";
in
configFileVersion;
peerAConfigFileVersion = getConfigFileVersion pkgs.rosenpass-peer-a;
peerBConfigFileVersion = getConfigFileVersion pkgs.rosenpass-peer-b;
peerCConfigFileVersion = if multiPeer then getConfigFileVersion pkgs.rosenpass-peer-c else null;
generateWgKeys = generateWgKeys =
name: name:
let let
@@ -401,6 +416,14 @@ in
testScript = ('' testScript = (''
start_all() start_all()
print("""Config file versions supported by peers
peerA: ${peerAConfigFileVersion}
peerB: ${peerBConfigFileVersion}
${lib.optionalString multiPeer ''
peerC: ${peerCConfigFileVersion}
''}
""")
for m in [peerA, peerB, peerakeyexchanger, peerbkeyexchanger]: for m in [peerA, peerB, peerakeyexchanger, peerbkeyexchanger]:
m.wait_for_unit("network-online.target") m.wait_for_unit("network-online.target")