diff --git a/pkgs/rosenpass.nix b/pkgs/rosenpass.nix index eaeb40f..23935d5 100644 --- a/pkgs/rosenpass.nix +++ b/pkgs/rosenpass.nix @@ -72,6 +72,8 @@ rustPlatform.buildRustPackage { package ]; + configFileVersion = "1"; + doCheck = true; cargoLock = { diff --git a/tests/integration/rpsc-test.nix b/tests/integration/rpsc-test.nix index 7db6ae1..4b2d395 100644 --- a/tests/integration/rpsc-test.nix +++ b/tests/integration/rpsc-test.nix @@ -17,6 +17,21 @@ let keyExchangePathBC = "/root/peer-bc.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 = name: let @@ -401,6 +416,14 @@ in testScript = ('' 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]: m.wait_for_unit("network-online.target")