Initial test cases implementation for a sub set of services
This commit is contained in:
parent
878ea506e0
commit
69115ec021
|
@ -21,9 +21,9 @@ createManagedProcess {
|
|||
''}
|
||||
'';
|
||||
process = "${subversion.out}/bin/svnserve";
|
||||
args = [ "-r" svnBaseDir "--listen-port" (toString port) ];
|
||||
foregroundProcessExtraArgs = [ "--foreground" ];
|
||||
daemonExtraArgs = [ "--daemon" "--pid-file" pidFile ];
|
||||
args = [ "-r" svnBaseDir "--listen-port" port "--daemon" ];
|
||||
foregroundProcessExtraArgs = ["--foreground" ];
|
||||
daemonExtraArgs = [ "--pid-file" pidFile ];
|
||||
|
||||
overrides = {
|
||||
sysvinit = {
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
|
||||
readiness = {instanceName, instance, stateDir, ...}:
|
||||
if instanceName == "tomcat" then ''
|
||||
machine.wait_for_open_port(${toString instance.httpPort})
|
||||
machine.wait_for_file("${stateDir}/tomcat/webapps/examples")
|
||||
''
|
||||
else if instanceName == "apache" then ''
|
||||
machine.wait_for_open_port(${toString instance.port})
|
||||
''
|
||||
else "";
|
||||
|
||||
tests = {instanceName, instance, ...}:
|
||||
pkgs.lib.optionalString (instanceName == "apache") ''
|
||||
machine.succeed("sleep 20")
|
||||
machine.succeed(
|
||||
"curl --fail http://localhost:${toString instance.port}/examples/servlets/servlet/HelloWorldExample | grep 'Hello World!'"
|
||||
)
|
||||
'';
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir libDir spoolDir forceDisableUserChange processManager;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
tomcat = rec {
|
||||
ajpPort = 8009;
|
||||
httpPort = 8080;
|
||||
|
||||
pkg = constructors.simpleAppservingTomcat {
|
||||
enableAJP = true;
|
||||
inherit ajpPort httpPort;
|
||||
};
|
||||
};
|
||||
|
||||
apache = rec {
|
||||
port = if forceDisableUserChange then 8081 else 80;
|
||||
|
||||
pkg = constructors.reverseProxyApache {
|
||||
inherit port;
|
||||
dependency = tomcat;
|
||||
serverAdmin = "admin@localhost";
|
||||
targetProtocol = "ajp";
|
||||
portPropertyName = "ajpPort";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
|
||||
nixosConfig = {
|
||||
virtualisation.diskSize = 8192;
|
||||
virtualisation.memorySize = 1024;
|
||||
};
|
||||
|
||||
readiness = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.wait_for_open_port(${toString instance.httpPort})
|
||||
'';
|
||||
|
||||
tests = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.succeed(
|
||||
"curl --fail http://localhost:${toString instance.httpPort}/examples/servlets/servlet/HelloWorldExample | grep 'Hello World!'"
|
||||
)
|
||||
'';
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,43 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir libDir spoolDir forceDisableUserChange processManager;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
tomcat-primary = rec {
|
||||
serverPort = 8005;
|
||||
httpPort = 8080;
|
||||
httpsPort = 8443;
|
||||
ajpPort = 8009;
|
||||
|
||||
pkg = constructors.simpleAppservingTomcat {
|
||||
inherit serverPort httpPort httpsPort ajpPort;
|
||||
instanceSuffix = "-primary";
|
||||
};
|
||||
};
|
||||
|
||||
tomcat-secondary = rec {
|
||||
serverPort = 8006;
|
||||
httpPort = 8081;
|
||||
httpsPort = 8444;
|
||||
ajpPort = 8010;
|
||||
|
||||
pkg = constructors.simpleAppservingTomcat {
|
||||
inherit serverPort httpPort httpsPort ajpPort;
|
||||
instanceSuffix = "-secondary";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
|
||||
readiness = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.wait_for_open_port(${toString instance.port})
|
||||
'';
|
||||
|
||||
tests = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.succeed("curl --fail http://localhost:${toString instance.port} | grep 'Hello world!'")
|
||||
'';
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,84 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir libDir spoolDir forceDisableUserChange processManager;
|
||||
};
|
||||
|
||||
webappStatic = pkgs.stdenv.mkDerivation {
|
||||
name = "webapp-static";
|
||||
buildCommand = ''
|
||||
mkdir -p $out
|
||||
cat > $out/index.html <<EOF
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>Hello</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>Hello world!</h1>
|
||||
</body>
|
||||
</html>
|
||||
EOF
|
||||
'';
|
||||
};
|
||||
|
||||
webappPHP = pkgs.stdenv.mkDerivation {
|
||||
name = "webapp-php";
|
||||
buildCommand = ''
|
||||
mkdir -p $out
|
||||
cat > $out/index.php <<EOF
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>Hello</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1><?php print("Hello world!"); ?></h1>
|
||||
</body>
|
||||
</html>
|
||||
EOF
|
||||
'';
|
||||
};
|
||||
in
|
||||
rec {
|
||||
# The first instance only serves static web apps
|
||||
apache-primary = rec {
|
||||
port = if forceDisableUserChange then 8080 else 80;
|
||||
|
||||
pkg = constructors.simpleWebappApache {
|
||||
inherit port;
|
||||
instanceSuffix = "-primary";
|
||||
serverAdmin = "root@localhost";
|
||||
documentRoot = webappStatic;
|
||||
};
|
||||
};
|
||||
|
||||
# The second instance is PHP enabled
|
||||
apache-secondary = rec {
|
||||
port = if forceDisableUserChange then 8081 else 81;
|
||||
|
||||
pkg = constructors.simpleWebappApache {
|
||||
inherit port;
|
||||
instanceSuffix = "-secondary";
|
||||
serverAdmin = "root@localhost";
|
||||
documentRoot = webappPHP;
|
||||
enablePHP = true;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, processManagers ? [ "supervisord" "sysvinit" "systemd" "docker" "disnix" "s6-rc" ]
|
||||
, profiles ? [ "privileged" "unprivileged" ]
|
||||
, nix-processmgmt ? ../../nix-processmgmt
|
||||
}:
|
||||
|
||||
let
|
||||
testService = import "${nix-processmgmt}/nixproc/test-driver/universal.nix" {
|
||||
inherit system;
|
||||
};
|
||||
in
|
||||
{
|
||||
apache = import ./apache {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
|
||||
apache-tomcat = import ./apache-tomcat {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
|
||||
apache-tomcat-ajp-reverse-proxy = import ./apache-tomcat-ajp-reverse-proxy {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
|
||||
influxdb = import ./influxdb {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
|
||||
mongodb = import ./mongodb {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
|
||||
mysql = import ./mysql {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
|
||||
postgresql = import ./postgresql {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
|
||||
svnserve = import ./svnserve {
|
||||
inherit pkgs processManagers profiles testService;
|
||||
};
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
systemPackages = [ pkgs.influxdb ];
|
||||
|
||||
readiness = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.wait_for_open_port(${toString instance.httpPort})
|
||||
'';
|
||||
|
||||
tests = {instanceName, instance, runtimeDir, forceDisableUserChange, ...}:
|
||||
# Make a special exception for the first instance running in privileged mode. It should be connectible with the default settings
|
||||
if instanceName == "influxdb" && !forceDisableUserChange then ''
|
||||
machine.succeed("influx -execute 'show databases' >&2")
|
||||
'' else ''
|
||||
machine.succeed("influx -execute 'show databases' --port ${toString instance.httpPort} >&2")
|
||||
'';
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir spoolDir libDir forceDisableUserChange processManager;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
influxdb = rec {
|
||||
rpcPort = 8088;
|
||||
httpPort = 8086;
|
||||
|
||||
pkg = constructors.simpleInfluxdb {
|
||||
inherit rpcPort httpPort;
|
||||
};
|
||||
};
|
||||
|
||||
influxdb-secondary = rec {
|
||||
rpcPort = 8092;
|
||||
httpPort = 8090;
|
||||
|
||||
pkg = constructors.simpleInfluxdb {
|
||||
inherit rpcPort httpPort;
|
||||
instanceSuffix = "-secondary";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
systemPackages = [ pkgs.mongodb ];
|
||||
nixosConfig = {
|
||||
virtualisation.memorySize = 1024;
|
||||
virtualisation.diskSize = 8192;
|
||||
};
|
||||
readiness = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.wait_for_open_port(${toString instance.port})
|
||||
'';
|
||||
|
||||
tests = {instanceName, instance, runtimeDir, forceDisableUserChange, ...}:
|
||||
# Make a special exception for the first instance running in privileged mode. It should be connectible with the default settings
|
||||
if instanceName == "mongodb" && !forceDisableUserChange then ''
|
||||
machine.succeed("echo 'show databases' | mongo >&2")
|
||||
'' else ''
|
||||
machine.succeed("echo 'show databases' | mongo --port ${toString instance.port} >&2")
|
||||
'';
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir spoolDir libDir forceDisableUserChange processManager;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
mongodb = rec {
|
||||
port = 27017;
|
||||
|
||||
pkg = constructors.simpleMongodb {
|
||||
inherit port;
|
||||
};
|
||||
};
|
||||
|
||||
mongodb-secondary = rec {
|
||||
port = 27018;
|
||||
|
||||
pkg = constructors.simpleMongodb {
|
||||
inherit port;
|
||||
instanceSuffix = "-secondary";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
systemPackages = [ pkgs.mysql ];
|
||||
|
||||
readiness = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.wait_for_open_port(${toString instance.port})
|
||||
'';
|
||||
|
||||
tests = {instanceName, instance, runtimeDir, forceDisableUserChange, ...}:
|
||||
# Make a special exception for the first instance running in privileged mode. It should be connectible with the default settings
|
||||
if instanceName == "mysql" && !forceDisableUserChange then ''
|
||||
machine.succeed("echo 'show databases;' | mysql >&2")
|
||||
'' else ''
|
||||
machine.succeed(
|
||||
"echo 'show databases;' | mysql -S ${runtimeDir}/mysqld${instance.instanceSuffix}/mysqld.sock >&2"
|
||||
)
|
||||
'';
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir spoolDir libDir forceDisableUserChange processManager;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
mysql = rec {
|
||||
port = 3306;
|
||||
instanceSuffix = "";
|
||||
|
||||
pkg = constructors.mysql {
|
||||
inherit port instanceSuffix;
|
||||
};
|
||||
};
|
||||
|
||||
mysql-secondary = rec {
|
||||
port = 3307;
|
||||
instanceSuffix = "-secondary";
|
||||
|
||||
pkg = constructors.mysql {
|
||||
inherit port instanceSuffix;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
systemPackages = [ pkgs.postgresql ];
|
||||
nixosConfig = {
|
||||
virtualisation.diskSize = 8192;
|
||||
virtualisation.memorySize = 1024;
|
||||
};
|
||||
|
||||
readiness = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.wait_for_open_port(${toString instance.port})
|
||||
'';
|
||||
|
||||
tests = {instanceName, instance, runtimeDir, forceDisableUserChange, ...}:
|
||||
# Make a special exception for the first instance running in privileged mode. It should be connectible with the default settings
|
||||
if instanceName == "postgresql" && !forceDisableUserChange then ''
|
||||
machine.succeed("su - postgresql -c 'psql -l'")
|
||||
'' else ''
|
||||
# fmt: off
|
||||
machine.succeed(
|
||||
"su - ${if forceDisableUserChange then "unprivileged" else instanceName} -c 'psql ${pkgs.lib.optionalString forceDisableUserChange "-U unprivileged"} -h ${runtimeDir}/${instanceName} --port ${toString instance.port} -l'"
|
||||
)
|
||||
# fmt: on
|
||||
'';
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir spoolDir libDir forceDisableUserChange processManager;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
postgresql = rec {
|
||||
port = 5432;
|
||||
|
||||
pkg = constructors.simplePostgresql {
|
||||
inherit port;
|
||||
};
|
||||
};
|
||||
|
||||
postgresql-secondary = rec {
|
||||
port = 5433;
|
||||
|
||||
pkg = constructors.simplePostgresql {
|
||||
inherit port;
|
||||
instanceSuffix = "-secondary";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
{ pkgs, testService, processManagers, profiles }:
|
||||
|
||||
testService {
|
||||
exprFile = ./processes.nix;
|
||||
systemPackages = [ pkgs.subversion ];
|
||||
|
||||
readiness = {instanceName, instance, ...}:
|
||||
''
|
||||
machine.wait_for_open_port(${toString instance.port})
|
||||
'';
|
||||
|
||||
tests = {instanceName, instance, stateDir, forceDisableUserChange, ...}:
|
||||
''
|
||||
# fmt: off
|
||||
machine.succeed(
|
||||
"mkdir -p ${instance.svnBaseDir}"
|
||||
)
|
||||
machine.succeed(
|
||||
"svnadmin create ${instance.svnBaseDir}/testrepo-${instanceName}"
|
||||
)
|
||||
# fmt: on
|
||||
''
|
||||
# Make a special exception for the first instance running in privileged mode. It should be connectible with the default settings
|
||||
+ (if instanceName == "svnserve" && !forceDisableUserChange then ''
|
||||
# fmt: off
|
||||
machine.succeed(
|
||||
"svn co svn://localhost/testrepo-${instanceName}"
|
||||
)
|
||||
# fmt: on
|
||||
'' else ''
|
||||
# fmt: off
|
||||
machine.succeed(
|
||||
"svn co svn://localhost:${toString instance.port}/testrepo-${instanceName}"
|
||||
)
|
||||
# fmt: on
|
||||
'');
|
||||
|
||||
inherit processManagers profiles;
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
{ pkgs ? import <nixpkgs> { inherit system; }
|
||||
, system ? builtins.currentSystem
|
||||
, stateDir ? "/var"
|
||||
, runtimeDir ? "${stateDir}/run"
|
||||
, logDir ? "${stateDir}/log"
|
||||
, spoolDir ? "${stateDir}/spool"
|
||||
, cacheDir ? "${stateDir}/cache"
|
||||
, libDir ? "${stateDir}/lib"
|
||||
, tmpDir ? (if stateDir == "/var" then "/tmp" else "${stateDir}/tmp")
|
||||
, forceDisableUserChange ? false
|
||||
, processManager
|
||||
}:
|
||||
|
||||
let
|
||||
constructors = import ../../services-agnostic/constructors.nix {
|
||||
inherit pkgs stateDir runtimeDir logDir tmpDir cacheDir libDir spoolDir forceDisableUserChange processManager;
|
||||
};
|
||||
in
|
||||
rec {
|
||||
svnserve = rec {
|
||||
port = 3690;
|
||||
svnBaseDir = "${stateDir}/repos";
|
||||
|
||||
pkg = constructors.svnserve {
|
||||
inherit port svnBaseDir;
|
||||
svnGroup = "root";
|
||||
};
|
||||
};
|
||||
|
||||
svnserve-secondary = rec {
|
||||
port = 3691;
|
||||
svnBaseDir = "${stateDir}/repos-secondary";
|
||||
|
||||
pkg = constructors.svnserve {
|
||||
inherit port svnBaseDir;
|
||||
instanceSuffix = "-secondary";
|
||||
svnGroup = "root";
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue