summaryrefslogtreecommitdiffstats
path: root/nixos/tests/deluge.nix
diff options
context:
space:
mode:
authorMilan Pässler <mil@nyantec.com>2020-03-19 03:19:26 +0100
committerMilan <me@pbb.lc>2020-04-18 02:00:04 +0200
commit16a4332d60c55ab6ce78f0ce56643b83fc3e7fed (patch)
tree8411ad9986dae9668d7b9cd36c440d2478746154 /nixos/tests/deluge.nix
parentfee776aae47b4a99748ed984334555bfb379832c (diff)
nixos/deluge: support 2.x
Diffstat (limited to 'nixos/tests/deluge.nix')
-rw-r--r--nixos/tests/deluge.nix109
1 files changed, 76 insertions, 33 deletions
diff --git a/nixos/tests/deluge.nix b/nixos/tests/deluge.nix
index 37689c3d9137..3cf179a38216 100644
--- a/nixos/tests/deluge.nix
+++ b/nixos/tests/deluge.nix
@@ -5,9 +5,10 @@ import ./make-test-python.nix ({ pkgs, ...} : {
};
nodes = {
- simple = {
+ simple1 = {
services.deluge = {
enable = true;
+ package = pkgs.deluge-1_x;
web = {
enable = true;
openFirewall = true;
@@ -15,50 +16,92 @@ import ./make-test-python.nix ({ pkgs, ...} : {
};
};
- declarative =
- { ... }:
+ declarative1 = {
+ services.deluge = {
+ enable = true;
+ package = pkgs.deluge-1_x;
+ openFirewall = true;
+ declarative = true;
+ config = {
+ allow_remote = true;
+ download_location = "/var/lib/deluge/my-download";
+ daemon_port = 58846;
+ listen_ports = [ 6881 6889 ];
+ };
+ web = {
+ enable = true;
+ port = 3142;
+ };
+ authFile = pkgs.writeText "deluge-auth" ''
+ localclient:a7bef72a890:10
+ andrew:password:10
+ user3:anotherpass:5
+ '';
+ };
+ };
- {
- services.deluge = {
+ simple2 = {
+ services.deluge = {
+ enable = true;
+ package = pkgs.deluge-2_x;
+ web = {
enable = true;
openFirewall = true;
- declarative = true;
- config = {
- allow_remote = true;
- download_location = "/var/lib/deluge/my-download";
- daemon_port = 58846;
- listen_ports = [ 6881 6889 ];
- };
- web = {
- enable = true;
- port = 3142;
- };
- authFile = pkgs.writeText "deluge-auth" ''
- localclient:a7bef72a890:10
- andrew:password:10
- user3:anotherpass:5
- '';
};
- environment.systemPackages = [ pkgs.deluge ];
};
+ };
+
+ declarative2 = {
+ services.deluge = {
+ enable = true;
+ package = pkgs.deluge-2_x;
+ openFirewall = true;
+ declarative = true;
+ config = {
+ allow_remote = true;
+ download_location = "/var/lib/deluge/my-download";
+ daemon_port = 58846;
+ listen_ports = [ 6881 6889 ];
+ };
+ web = {
+ enable = true;
+ port = 3142;
+ };
+ authFile = pkgs.writeText "deluge-auth" ''
+ localclient:a7bef72a890:10
+ andrew:password:10
+ user3:anotherpass:5
+ '';
+ };
+ };
};
testScript = ''
start_all()
- simple.wait_for_unit("deluged")
- simple.wait_for_unit("delugeweb")
- simple.wait_for_open_port("8112")
- declarative.wait_for_unit("network.target")
- declarative.wait_until_succeeds("curl --fail http://simple:8112")
+ simple1.wait_for_unit("deluged")
+ simple2.wait_for_unit("deluged")
+ simple1.wait_for_unit("delugeweb")
+ simple2.wait_for_unit("delugeweb")
+ simple1.wait_for_open_port("8112")
+ simple2.wait_for_open_port("8112")
+ declarative1.wait_for_unit("network.target")
+ declarative2.wait_for_unit("network.target")
+ declarative1.wait_until_succeeds("curl --fail http://simple1:8112")
+ declarative2.wait_until_succeeds("curl --fail http://simple2:8112")
- declarative.wait_for_unit("deluged")
- declarative.wait_for_unit("delugeweb")
- declarative.wait_until_succeeds("curl --fail http://declarative:3142")
- declarative.succeed("deluge-console 'help' | grep -q 'rm - Remove a torrent'")
- declarative.succeed(
- "deluge-console 'connect 127.0.0.1:58846 andrew password; help' | grep -q 'rm - Remove a torrent'"
+ declarative1.wait_for_unit("deluged")
+ declarative2.wait_for_unit("deluged")
+ declarative1.wait_for_unit("delugeweb")
+ declarative2.wait_for_unit("delugeweb")
+ declarative1.wait_until_succeeds("curl --fail http://declarative1:3142")
+ declarative2.wait_until_succeeds("curl --fail http://declarative2:3142")
+ declarative1.succeed(
+ "deluge-console 'connect 127.0.0.1:58846 andrew password; help' | grep -q 'rm.*Remove a torrent'"
+ )
+ declarative2.succeed(
+ "deluge-console 'connect 127.0.0.1:58846 andrew password; help' | grep -q 'rm.*Remove a torrent'"
)
'';
})