1import ./make-test-python.nix ({ pkgs, ... }:
2let
3 nginxSocketPath = "/var/run/nginx/test.sock";
4in
5{
6 name = "nginx-unix-socket";
7
8 nodes = {
9 webserver = { pkgs, lib, ... }: {
10 services.nginx = {
11 enable = true;
12 virtualHosts.localhost = {
13 serverName = "localhost";
14 listen = [{ addr = "unix:${nginxSocketPath}"; }];
15 locations."/test".return = "200 'foo'";
16 };
17 };
18 };
19 };
20
21 testScript = ''
22 webserver.wait_for_unit("nginx")
23 webserver.wait_for_open_unix_socket("${nginxSocketPath}")
24
25 webserver.succeed("curl --fail --silent --unix-socket '${nginxSocketPath}' http://localhost/test | grep '^foo$'")
26 '';
27})