at 18.09-beta 1.2 kB view raw
1# verifies: 2# 1. nginx generates config file with shared http context definitions above 3# generated virtual hosts config. 4 5import ./make-test.nix ({ pkgs, ...} : { 6 name = "nginx"; 7 meta = with pkgs.stdenv.lib.maintainers; { 8 maintainers = [ mbbx6spp ]; 9 }; 10 11 nodes = { 12 webserver = 13 { ... }: 14 { services.nginx.enable = true; 15 services.nginx.commonHttpConfig = '' 16 log_format ceeformat '@cee: {"status":"$status",' 17 '"request_time":$request_time,' 18 '"upstream_response_time":$upstream_response_time,' 19 '"pipe":"$pipe","bytes_sent":$bytes_sent,' 20 '"connection":"$connection",' 21 '"remote_addr":"$remote_addr",' 22 '"host":"$host",' 23 '"timestamp":"$time_iso8601",' 24 '"request":"$request",' 25 '"http_referer":"$http_referer",' 26 '"upstream_addr":"$upstream_addr"}'; 27 ''; 28 services.nginx.virtualHosts."0.my.test" = { 29 extraConfig = '' 30 access_log syslog:server=unix:/dev/log,facility=user,tag=mytag,severity=info ceeformat; 31 ''; 32 }; 33 }; 34 }; 35 36 testScript = '' 37 startAll; 38 39 $webserver->waitForUnit("nginx"); 40 $webserver->waitForOpenPort("80"); 41 ''; 42})