···
1
-
import ./make-test-python.nix (
14
-
networking.firewall.allowedTCPPorts = [ config.services.cfssl.port ];
13
+
networking.firewall.allowedTCPPorts = [ config.services.cfssl.port ];
16
-
services.cfssl.enable = true;
17
-
systemd.services.cfssl.after = [ "cfssl-init.service" ];
15
+
services.cfssl.enable = true;
16
+
systemd.services.cfssl.after = [ "cfssl-init.service" ];
19
-
systemd.services.cfssl-init = {
20
-
description = "Initialize the cfssl CA";
21
-
wantedBy = [ "multi-user.target" ];
25
-
WorkingDirectory = config.services.cfssl.dataDir;
27
-
script = with pkgs; ''
28
-
${cfssl}/bin/cfssl genkey -initca ${
29
-
pkgs.writeText "ca.json" (
31
-
hosts = [ "ca.example.com" ];
39
-
L = "San Francisco";
40
-
O = "Internet Widgets, LLC";
41
-
OU = "Certificate Authority";
47
-
} | ${cfssl}/bin/cfssljson -bare ca
18
+
systemd.services.cfssl-init = {
19
+
description = "Initialize the cfssl CA";
20
+
wantedBy = [ "multi-user.target" ];
24
+
WorkingDirectory = config.services.cfssl.dataDir;
26
+
script = with pkgs; ''
27
+
${cfssl}/bin/cfssl genkey -initca ${
28
+
pkgs.writeText "ca.json" (
30
+
hosts = [ "ca.example.com" ];
38
+
L = "San Francisco";
39
+
O = "Internet Widgets, LLC";
40
+
OU = "Certificate Authority";
46
+
} | ${cfssl}/bin/cfssljson -bare ca
56
-
writeScript "cfsslrequest" ''
57
-
curl -f -X POST -H "Content-Type: application/json" -d @${csr} \
58
-
http://localhost:8888/api/v1/cfssl/newkey | ${cfssl}/bin/cfssljson /tmp/certificate
60
-
csr = pkgs.writeText "csr.json" (
62
-
CN = "www.example.com";
74
-
L = "San Francisco";
75
-
O = "Example Company, LLC";
84
-
machine.wait_for_unit("cfssl.service")
85
-
machine.wait_until_succeeds("${cfsslrequest}")
86
-
machine.succeed("ls /tmp/certificate-key.pem")
55
+
writeScript "cfsslrequest" ''
56
+
curl -f -X POST -H "Content-Type: application/json" -d @${csr} \
57
+
http://localhost:8888/api/v1/cfssl/newkey | ${cfssl}/bin/cfssljson /tmp/certificate
59
+
csr = pkgs.writeText "csr.json" (
61
+
CN = "www.example.com";
73
+
L = "San Francisco";
74
+
O = "Example Company, LLC";
83
+
machine.wait_for_unit("cfssl.service")
84
+
machine.wait_until_succeeds("${cfsslrequest}")
85
+
machine.succeed("ls /tmp/certificate-key.pem")