nixosTests.stunnel: handleTest -> runTest

This commit is contained in:
Sizhe Zhao 2025-07-10 22:53:22 +08:00
parent 2fcd5fedf9
commit c49b710acc
No known key found for this signature in database
GPG Key ID: ED1807251A7DA08F
2 changed files with 14 additions and 17 deletions

View File

@ -1319,7 +1319,7 @@ in
stratis = handleTest ./stratis { };
strongswan-swanctl = runTest ./strongswan-swanctl.nix;
stub-ld = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stub-ld.nix { };
stunnel = handleTest ./stunnel.nix { };
stunnel = import ./stunnel.nix { inherit runTest; };
sudo = runTest ./sudo.nix;
sudo-rs = runTest ./sudo-rs.nix;
sunshine = runTest ./sunshine.nix;

View File

@ -1,11 +1,4 @@
{
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../.. { inherit system config; },
}:
with import ../lib/testing-python.nix { inherit system pkgs; };
with pkgs.lib;
{ runTest }:
let
stunnelCommon = {
@ -20,7 +13,12 @@ let
};
};
makeCert =
{ config, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
{
systemd.services.create-test-cert = {
wantedBy = [ "sysinit.target" ];
@ -32,14 +30,14 @@ let
unitConfig.DefaultDependencies = false;
serviceConfig.Type = "oneshot";
script = ''
${pkgs.openssl}/bin/openssl req -batch -x509 -newkey rsa -nodes -out /test-cert.pem -keyout /test-key.pem -subj /CN=${config.networking.hostName}
${lib.getExe pkgs.openssl} req -batch -x509 -newkey rsa -nodes -out /test-cert.pem -keyout /test-key.pem -subj /CN=${config.networking.hostName}
( umask 077; cat /test-key.pem /test-cert.pem > /test-key-and-cert.pem )
chown stunnel /test-key.pem /test-key-and-cert.pem
'';
};
};
serverCommon =
{ pkgs, ... }:
{ lib, pkgs, ... }:
{
networking.firewall.allowedTCPPorts = [ 443 ];
services.stunnel.servers.https = {
@ -51,7 +49,7 @@ let
wantedBy = [ "multi-user.target" ];
script = ''
cd /etc/webroot
${pkgs.python3}/bin/python -m http.server 80
${lib.getExe' pkgs.python3 "python"} -m http.server 80
'';
};
};
@ -61,10 +59,9 @@ let
server_cert = ${src}.succeed("cat /test-cert.pem")
${dest}.succeed("echo %s > ${filename}" % quote(server_cert))
'';
in
{
basicServer = makeTest {
basicServer = runTest {
name = "basicServer";
nodes = {
@ -92,7 +89,7 @@ in
'';
};
serverAndClient = makeTest {
serverAndClient = runTest {
name = "serverAndClient";
nodes = {
@ -150,7 +147,7 @@ in
'';
};
mutualAuth = makeTest {
mutualAuth = runTest {
name = "mutualAuth";
nodes = rec {