···
1
-
{ system ? builtins.currentSystem, config ? { }
2
-
, pkgs ? import ../.. { inherit system config; } }:
4
-
with import (nixpkgs + "/nixos/lib/testing-python.nix") { inherit system; };
1
+
import ./make-test-python.nix ({ pkgs, ... }: {
7
-
meta = with pkgs.stdenv.lib.maintainers; { maintainers = [ MayNiklas ]; };
3
+
meta = with pkgs.lib.maintainers; { maintainers = [ MayNiklas ]; };
11
-
environment.systemPackages = [ curl ];
12
-
services.owncast = { enable = true; };
6
+
client = { pkgs, ... }: with pkgs.lib; {
8
+
dhcpcd.enable = false;
9
+
interfaces.eth1.ipv6.addresses = mkOverride 0 [ { address = "fd00::2"; prefixLength = 64; } ];
10
+
interfaces.eth1.ipv4.addresses = mkOverride 0 [ { address = "192.168.1.2"; prefixLength = 24; } ];
13
+
server = { pkgs, ... }: with pkgs.lib; {
15
+
dhcpcd.enable = false;
18
+
interfaces.eth1.ipv6.addresses = mkOverride 0 [ { address = "fd00::1"; prefixLength = 64; } ];
19
+
interfaces.eth1.ipv4.addresses = mkOverride 0 [ { address = "192.168.1.1"; prefixLength = 24; } ];
21
+
firewall.allowedTCPPorts = [ 8080 ];
24
+
services.owncast = {
18
-
client.wait_for_unit("owncast.service")
19
-
client.succeed("curl localhost:8080/api/status")
34
+
client.wait_for_unit("network-online.target")
35
+
server.wait_for_unit("network-online.target")
36
+
server.wait_for_unit("owncast.service")
37
+
server.wait_until_succeeds("ss -ntl | grep -q 8080")
39
+
client.succeed("curl http://192.168.1.1:8080/api/status")
40
+
client.succeed("curl http://[fd00::1]:8080/api/status")