changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > infra > home / caddy.json

changeset 76: e63337c727c0
parent: f4ebcb51191f
child: d9f9e108c36c
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 28 Jul 2024 18:55:23 -0400
permissions: -rw-r--r--
description: caddy config updates
1 {
2  "admin": {
3  "listen": ":2020"
4  },
5  "logging": {
6  "logs": {
7  "default": {
8  "exclude": [
9  "http.log.access.log0",
10  "http.log.access.log1",
11  "http.log.access.log2",
12  "http.log.access.log3"
13  ]
14  },
15  "log0": {
16  "writer": {
17  "filename": "/home/web/.stash/log/caddy/caddy.log",
18  "output": "file"
19  },
20  "encoder": {
21  "format": "json"
22  },
23  "include": [
24  "http.log.access.log0"
25  ]
26  },
27  "log1": {
28  "writer": {
29  "filename": "/home/web/.stash/log/caddy/caddy.log",
30  "output": "file"
31  },
32  "encoder": {
33  "format": "json"
34  },
35  "include": [
36  "http.log.access.log1"
37  ]
38  },
39  "log2": {
40  "writer": {
41  "filename": "/home/web/.stash/log/caddy/caddy.log",
42  "output": "file"
43  },
44  "encoder": {
45  "format": "json"
46  },
47  "include": [
48  "http.log.access.log2"
49  ]
50  },
51  "log3": {
52  "writer": {
53  "filename": "/home/web/.stash/log/caddy/caddy.log",
54  "output": "file"
55  },
56  "encoder": {
57  "format": "json"
58  },
59  "include": [
60  "http.log.access.log3"
61  ]
62  }
63  }
64  },
65  "apps": {
66  "http": {
67  "servers": {
68  "srv0": {
69  "listen": [
70  ":443"
71  ],
72  "enable_full_duplex": true,
73  "routes": [
74  {
75  "match": [
76  {
77  "host": [
78  "packy.compiler.company"
79  ]
80  }
81  ],
82  "handle": [
83  {
84  "handler": "subroute",
85  "routes": [
86  {
87  "handle": [
88  {
89  "handler": "vars",
90  "root": "/home/web/www/packy.compiler.company"
91  }
92  ]
93  },
94  {
95  "group": "group23",
96  "handle": [
97  {
98  "handler": "subroute",
99  "routes": [
100  {
101  "handle": [
102  {
103  "handler": "headers",
104  "response": {
105  "deferred": true,
106  "set": {
107  "Access-Control-Allow-Headers": [
108  "*"
109  ],
110  "Access-Control-Allow-Methods": [
111  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
112  ],
113  "Access-Control-Allow-Origin": [
114  "https://packy.compiler.company"
115  ],
116  "Access-Control-Max-Age": [
117  "3600"
118  ]
119  }
120  }
121  },
122  {
123  "handler": "static_response",
124  "status_code": 204
125  }
126  ]
127  }
128  ]
129  }
130  ],
131  "match": [
132  {
133  "header": {
134  "Origin": [
135  "https://packy.compiler.company"
136  ]
137  },
138  "method": [
139  "OPTIONS"
140  ]
141  }
142  ]
143  },
144  {
145  "group": "group23",
146  "handle": [
147  {
148  "handler": "subroute",
149  "routes": [
150  {
151  "handle": [
152  {
153  "handler": "headers",
154  "response": {
155  "deferred": true,
156  "set": {
157  "Access-Control-Allow-Origin": [
158  "{http.request.header.origin}"
159  ],
160  "Access-Control-Expose-Headers": [
161  "*"
162  ]
163  }
164  }
165  }
166  ]
167  }
168  ]
169  }
170  ],
171  "match": [
172  {
173  "header": {
174  "Origin": [
175  "https://packy.compiler.company"
176  ]
177  },
178  "not": [
179  {
180  "method": [
181  "OPTIONS"
182  ]
183  }
184  ]
185  }
186  ]
187  },
188  {
189  "handle": [
190  {
191  "handler": "subroute",
192  "routes": [
193  {
194  "handle": [
195  {
196  "browse": {},
197  "handler": "file_server",
198  "hide": [
199  "/etc/caddy/Caddyfile"
200  ]
201  }
202  ],
203  "match": [
204  {
205  "method": [
206  "GET"
207  ]
208  }
209  ]
210  },
211  {
212  "handle": [
213  {
214  "handler": "webdav"
215  }
216  ]
217  }
218  ]
219  }
220  ]
221  }
222  ]
223  }
224  ],
225  "terminal": true
226  },
227  {
228  "match": [
229  {
230  "host": [
231  "demo.compiler.company"
232  ]
233  }
234  ],
235  "handle": [
236  {
237  "handler": "subroute",
238  "routes": [
239  {
240  "handle": [
241  {
242  "handler": "vars",
243  "root": "/home/web/www/demo.compiler.company"
244  }
245  ]
246  },
247  {
248  "group": "group25",
249  "handle": [
250  {
251  "handler": "subroute",
252  "routes": [
253  {
254  "handle": [
255  {
256  "handler": "headers",
257  "response": {
258  "deferred": true,
259  "set": {
260  "Access-Control-Allow-Headers": [
261  "*"
262  ],
263  "Access-Control-Allow-Methods": [
264  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
265  ],
266  "Access-Control-Allow-Origin": [
267  "https://cdn.compiler.company"
268  ],
269  "Access-Control-Max-Age": [
270  "3600"
271  ]
272  }
273  }
274  },
275  {
276  "handler": "static_response",
277  "status_code": 204
278  }
279  ]
280  }
281  ]
282  }
283  ],
284  "match": [
285  {
286  "header": {
287  "Origin": [
288  "https://cdn.compiler.company"
289  ]
290  },
291  "method": [
292  "OPTIONS"
293  ]
294  }
295  ]
296  },
297  {
298  "group": "group25",
299  "handle": [
300  {
301  "handler": "subroute",
302  "routes": [
303  {
304  "handle": [
305  {
306  "handler": "headers",
307  "response": {
308  "deferred": true,
309  "set": {
310  "Access-Control-Allow-Origin": [
311  "{http.request.header.origin}"
312  ],
313  "Access-Control-Expose-Headers": [
314  "*"
315  ]
316  }
317  }
318  }
319  ]
320  }
321  ]
322  }
323  ],
324  "match": [
325  {
326  "header": {
327  "Origin": [
328  "https://cdn.compiler.company"
329  ]
330  },
331  "not": [
332  {
333  "method": [
334  "OPTIONS"
335  ]
336  }
337  ]
338  }
339  ]
340  }
341  ]
342  }
343  ],
344  "terminal": true
345  },
346  {
347  "match": [
348  {
349  "host": [
350  "cdn.compiler.company"
351  ]
352  }
353  ],
354  "handle": [
355  {
356  "handler": "subroute",
357  "routes": [
358  {
359  "handle": [
360  {
361  "handler": "vars",
362  "root": "/home/web/www/cdn.compiler.company"
363  }
364  ]
365  },
366  {
367  "group": "group27",
368  "handle": [
369  {
370  "handler": "subroute",
371  "routes": [
372  {
373  "handle": [
374  {
375  "handler": "headers",
376  "response": {
377  "deferred": true,
378  "set": {
379  "Access-Control-Allow-Headers": [
380  "*"
381  ],
382  "Access-Control-Allow-Methods": [
383  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
384  ],
385  "Access-Control-Allow-Origin": [
386  "*"
387  ],
388  "Access-Control-Max-Age": [
389  "3600"
390  ]
391  }
392  }
393  },
394  {
395  "handler": "static_response",
396  "status_code": 204
397  }
398  ]
399  }
400  ]
401  }
402  ],
403  "match": [
404  {
405  "header": {
406  "Origin": [
407  "*"
408  ]
409  },
410  "method": [
411  "OPTIONS"
412  ]
413  }
414  ]
415  },
416  {
417  "group": "group27",
418  "handle": [
419  {
420  "handler": "subroute",
421  "routes": [
422  {
423  "handle": [
424  {
425  "handler": "headers",
426  "response": {
427  "deferred": true,
428  "set": {
429  "Access-Control-Allow-Origin": [
430  "{http.request.header.origin}"
431  ],
432  "Access-Control-Expose-Headers": [
433  "*"
434  ]
435  }
436  }
437  }
438  ]
439  }
440  ]
441  }
442  ],
443  "match": [
444  {
445  "header": {
446  "Origin": [
447  "*"
448  ]
449  },
450  "not": [
451  {
452  "method": [
453  "OPTIONS"
454  ]
455  }
456  ]
457  }
458  ]
459  },
460  {
461  "handle": [
462  {
463  "handler": "subroute",
464  "routes": [
465  {
466  "handle": [
467  {
468  "browse": {},
469  "handler": "file_server",
470  "hide": [
471  "/etc/caddy/Caddyfile"
472  ]
473  }
474  ],
475  "match": [
476  {
477  "method": [
478  "GET"
479  ]
480  }
481  ]
482  },
483  {
484  "handle": [
485  {
486  "handler": "webdav"
487  }
488  ]
489  }
490  ]
491  }
492  ]
493  }
494  ]
495  }
496  ],
497  "terminal": true
498  },
499  {
500  "match": [
501  {
502  "host": [
503  "the.compiler.company"
504  ]
505  }
506  ],
507  "handle": [
508  {
509  "handler": "subroute",
510  "routes": [
511  {
512  "handle": [
513  {
514  "handler": "vars",
515  "root": "/home/web/www/the.compiler.company"
516  }
517  ]
518  },
519  {
520  "group": "group29",
521  "handle": [
522  {
523  "handler": "subroute",
524  "routes": [
525  {
526  "handle": [
527  {
528  "handler": "headers",
529  "response": {
530  "deferred": true,
531  "set": {
532  "Access-Control-Allow-Headers": [
533  "*"
534  ],
535  "Access-Control-Allow-Methods": [
536  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
537  ],
538  "Access-Control-Allow-Origin": [
539  "https://cdn.compiler.company"
540  ],
541  "Access-Control-Max-Age": [
542  "3600"
543  ]
544  }
545  }
546  },
547  {
548  "handler": "static_response",
549  "status_code": 204
550  }
551  ]
552  }
553  ]
554  }
555  ],
556  "match": [
557  {
558  "header": {
559  "Origin": [
560  "https://cdn.compiler.company"
561  ]
562  },
563  "method": [
564  "OPTIONS"
565  ]
566  }
567  ]
568  },
569  {
570  "group": "group29",
571  "handle": [
572  {
573  "handler": "subroute",
574  "routes": [
575  {
576  "handle": [
577  {
578  "handler": "headers",
579  "response": {
580  "deferred": true,
581  "set": {
582  "Access-Control-Allow-Origin": [
583  "{http.request.header.origin}"
584  ],
585  "Access-Control-Expose-Headers": [
586  "*"
587  ]
588  }
589  }
590  }
591  ]
592  }
593  ]
594  }
595  ],
596  "match": [
597  {
598  "header": {
599  "Origin": [
600  "https://cdn.compiler.company"
601  ]
602  },
603  "not": [
604  {
605  "method": [
606  "OPTIONS"
607  ]
608  }
609  ]
610  }
611  ]
612  },
613  {
614  "group": "group29",
615  "handle": [
616  {
617  "handler": "subroute",
618  "routes": [
619  {
620  "handle": [
621  {
622  "handler": "rewrite",
623  "uri": "{http.matchers.file.relative}"
624  }
625  ],
626  "match": [
627  {
628  "file": {
629  "try_files": [
630  "{http.request.uri.path}{http.request.uri.path}.html",
631  "{http.request.uri.path}/"
632  ]
633  }
634  }
635  ]
636  },
637  {
638  "handle": [
639  {
640  "handler": "file_server",
641  "hide": [
642  "/etc/caddy/Caddyfile"
643  ]
644  }
645  ]
646  }
647  ]
648  }
649  ]
650  }
651  ]
652  }
653  ],
654  "terminal": true
655  },
656  {
657  "match": [
658  {
659  "host": [
660  "hg.compiler.company"
661  ]
662  }
663  ],
664  "handle": [
665  {
666  "handler": "subroute",
667  "routes": [
668  {
669  "group": "group31",
670  "handle": [
671  {
672  "handler": "subroute",
673  "routes": [
674  {
675  "handle": [
676  {
677  "handler": "headers",
678  "response": {
679  "deferred": true,
680  "set": {
681  "Access-Control-Allow-Headers": [
682  "*"
683  ],
684  "Access-Control-Allow-Methods": [
685  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
686  ],
687  "Access-Control-Allow-Origin": [
688  "https://packy.compiler.company"
689  ],
690  "Access-Control-Max-Age": [
691  "3600"
692  ]
693  }
694  }
695  },
696  {
697  "handler": "static_response",
698  "status_code": 204
699  }
700  ]
701  }
702  ]
703  }
704  ],
705  "match": [
706  {
707  "header": {
708  "Origin": [
709  "https://packy.compiler.company"
710  ]
711  },
712  "method": [
713  "OPTIONS"
714  ]
715  }
716  ]
717  },
718  {
719  "group": "group31",
720  "handle": [
721  {
722  "handler": "subroute",
723  "routes": [
724  {
725  "handle": [
726  {
727  "handler": "headers",
728  "response": {
729  "deferred": true,
730  "set": {
731  "Access-Control-Allow-Origin": [
732  "{http.request.header.origin}"
733  ],
734  "Access-Control-Expose-Headers": [
735  "*"
736  ]
737  }
738  }
739  }
740  ]
741  }
742  ]
743  }
744  ],
745  "match": [
746  {
747  "header": {
748  "Origin": [
749  "https://packy.compiler.company"
750  ]
751  },
752  "not": [
753  {
754  "method": [
755  "OPTIONS"
756  ]
757  }
758  ]
759  }
760  ]
761  },
762  {
763  "group": "group31",
764  "handle": [
765  {
766  "handler": "subroute",
767  "routes": [
768  {
769  "handle": [
770  {
771  "handler": "headers",
772  "response": {
773  "deferred": true,
774  "set": {
775  "Access-Control-Allow-Headers": [
776  "*"
777  ],
778  "Access-Control-Allow-Methods": [
779  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
780  ],
781  "Access-Control-Allow-Origin": [
782  "https://cdn.compiler.company"
783  ],
784  "Access-Control-Max-Age": [
785  "3600"
786  ]
787  }
788  }
789  },
790  {
791  "handler": "static_response",
792  "status_code": 204
793  }
794  ]
795  }
796  ]
797  }
798  ],
799  "match": [
800  {
801  "header": {
802  "Origin": [
803  "https://cdn.compiler.company"
804  ]
805  },
806  "method": [
807  "OPTIONS"
808  ]
809  }
810  ]
811  },
812  {
813  "group": "group31",
814  "handle": [
815  {
816  "handler": "subroute",
817  "routes": [
818  {
819  "handle": [
820  {
821  "handler": "headers",
822  "response": {
823  "deferred": true,
824  "set": {
825  "Access-Control-Allow-Origin": [
826  "{http.request.header.origin}"
827  ],
828  "Access-Control-Expose-Headers": [
829  "*"
830  ]
831  }
832  }
833  }
834  ]
835  }
836  ]
837  }
838  ],
839  "match": [
840  {
841  "header": {
842  "Origin": [
843  "https://cdn.compiler.company"
844  ]
845  },
846  "not": [
847  {
848  "method": [
849  "OPTIONS"
850  ]
851  }
852  ]
853  }
854  ]
855  },
856  {
857  "group": "group31",
858  "handle": [
859  {
860  "handler": "subroute",
861  "routes": [
862  {
863  "handle": [
864  {
865  "handler": "headers",
866  "response": {
867  "deferred": true,
868  "set": {
869  "Access-Control-Allow-Headers": [
870  "*"
871  ],
872  "Access-Control-Allow-Methods": [
873  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
874  ],
875  "Access-Control-Allow-Origin": [
876  "https://vc.compiler.company"
877  ],
878  "Access-Control-Max-Age": [
879  "3600"
880  ]
881  }
882  }
883  },
884  {
885  "handler": "static_response",
886  "status_code": 204
887  }
888  ]
889  }
890  ]
891  }
892  ],
893  "match": [
894  {
895  "header": {
896  "Origin": [
897  "https://vc.compiler.company"
898  ]
899  },
900  "method": [
901  "OPTIONS"
902  ]
903  }
904  ]
905  },
906  {
907  "group": "group31",
908  "handle": [
909  {
910  "handler": "subroute",
911  "routes": [
912  {
913  "handle": [
914  {
915  "handler": "headers",
916  "response": {
917  "deferred": true,
918  "set": {
919  "Access-Control-Allow-Origin": [
920  "{http.request.header.origin}"
921  ],
922  "Access-Control-Expose-Headers": [
923  "*"
924  ]
925  }
926  }
927  }
928  ]
929  }
930  ]
931  }
932  ],
933  "match": [
934  {
935  "header": {
936  "Origin": [
937  "https://vc.compiler.company"
938  ]
939  },
940  "not": [
941  {
942  "method": [
943  "OPTIONS"
944  ]
945  }
946  ]
947  }
948  ]
949  },
950  {
951  "handle": [
952  {
953  "handler": "reverse_proxy",
954  "upstreams": [
955  {
956  "dial": "rurik:8888"
957  }
958  ]
959  }
960  ]
961  }
962  ]
963  }
964  ],
965  "terminal": true
966  },
967  {
968  "match": [
969  {
970  "host": [
971  "compiler.company"
972  ]
973  }
974  ],
975  "handle": [
976  {
977  "handler": "subroute",
978  "routes": [
979  {
980  "handle": [
981  {
982  "handler": "vars",
983  "root": "/home/web/www/compiler.company"
984  }
985  ]
986  },
987  {
988  "group": "group33",
989  "handle": [
990  {
991  "handler": "subroute",
992  "routes": [
993  {
994  "handle": [
995  {
996  "handler": "headers",
997  "response": {
998  "deferred": true,
999  "set": {
1000  "Access-Control-Allow-Headers": [
1001  "*"
1002  ],
1003  "Access-Control-Allow-Methods": [
1004  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
1005  ],
1006  "Access-Control-Allow-Origin": [
1007  "https://cdn.compiler.company"
1008  ],
1009  "Access-Control-Max-Age": [
1010  "3600"
1011  ]
1012  }
1013  }
1014  },
1015  {
1016  "handler": "static_response",
1017  "status_code": 204
1018  }
1019  ]
1020  }
1021  ]
1022  }
1023  ],
1024  "match": [
1025  {
1026  "header": {
1027  "Origin": [
1028  "https://cdn.compiler.company"
1029  ]
1030  },
1031  "method": [
1032  "OPTIONS"
1033  ]
1034  }
1035  ]
1036  },
1037  {
1038  "group": "group33",
1039  "handle": [
1040  {
1041  "handler": "subroute",
1042  "routes": [
1043  {
1044  "handle": [
1045  {
1046  "handler": "headers",
1047  "response": {
1048  "deferred": true,
1049  "set": {
1050  "Access-Control-Allow-Origin": [
1051  "{http.request.header.origin}"
1052  ],
1053  "Access-Control-Expose-Headers": [
1054  "*"
1055  ]
1056  }
1057  }
1058  }
1059  ]
1060  }
1061  ]
1062  }
1063  ],
1064  "match": [
1065  {
1066  "header": {
1067  "Origin": [
1068  "https://cdn.compiler.company"
1069  ]
1070  },
1071  "not": [
1072  {
1073  "method": [
1074  "OPTIONS"
1075  ]
1076  }
1077  ]
1078  }
1079  ]
1080  },
1081  {
1082  "group": "group33",
1083  "handle": [
1084  {
1085  "handler": "subroute",
1086  "routes": [
1087  {
1088  "handle": [
1089  {
1090  "handler": "rewrite",
1091  "uri": "{http.matchers.file.relative}"
1092  }
1093  ],
1094  "match": [
1095  {
1096  "file": {
1097  "try_files": [
1098  "{http.request.uri.path}",
1099  "{http.request.uri.path.html}",
1100  "{http.request.uri.path}/"
1101  ]
1102  }
1103  }
1104  ]
1105  },
1106  {
1107  "handle": [
1108  {
1109  "handler": "file_server",
1110  "hide": [
1111  "/etc/caddy/Caddyfile"
1112  ]
1113  }
1114  ]
1115  }
1116  ]
1117  }
1118  ]
1119  }
1120  ]
1121  }
1122  ],
1123  "terminal": true
1124  }
1125  ],
1126  "logs": {
1127  "logger_names": {
1128  "cdn.compiler.company": [
1129  "log0"
1130  ],
1131  "hg.compiler.company": [
1132  "log3"
1133  ],
1134  "packy.compiler.company": [
1135  "log2"
1136  ]
1137  },
1138  "skip_hosts": [
1139  "compiler.company",
1140  "demo.compiler.company",
1141  "the.compiler.company"
1142  ]
1143  }
1144  },
1145  "srv1": {
1146  "listen": [
1147  ":80"
1148  ],
1149  "enable_full_duplex": true,
1150  "routes": [
1151  {
1152  "handle": [
1153  {
1154  "handler": "vars",
1155  "root": "/home/web/www"
1156  },
1157  {
1158  "browse": {},
1159  "handler": "file_server",
1160  "hide": [
1161  "/home/web/caddy.json"
1162  ]
1163  }
1164  ]
1165  }
1166  ]
1167  },
1168  "srv2": {
1169  "listen": [
1170  ":8080"
1171  ],
1172  "enable_full_duplex": true,
1173  "routes": [
1174  {
1175  "match": [
1176  {
1177  "host": [
1178  "0.0.0.0"
1179  ]
1180  }
1181  ],
1182  "handle": [
1183  {
1184  "handler": "subroute",
1185  "routes": [
1186  {
1187  "handle": [
1188  {
1189  "handler": "vars",
1190  "root": "/home/web/www"
1191  }
1192  ]
1193  },
1194  {
1195  "group": "group36",
1196  "handle": [
1197  {
1198  "handler": "subroute",
1199  "routes": [
1200  {
1201  "handle": [
1202  {
1203  "handler": "headers",
1204  "response": {
1205  "deferred": true,
1206  "set": {
1207  "Access-Control-Allow-Headers": [
1208  "*"
1209  ],
1210  "Access-Control-Allow-Methods": [
1211  "GET, POST, PUT, PATCH, DELETE, OPTIONS"
1212  ],
1213  "Access-Control-Allow-Origin": [
1214  "*"
1215  ],
1216  "Access-Control-Max-Age": [
1217  "3600"
1218  ]
1219  }
1220  }
1221  },
1222  {
1223  "handler": "static_response",
1224  "status_code": 204
1225  }
1226  ]
1227  }
1228  ]
1229  }
1230  ],
1231  "match": [
1232  {
1233  "header": {
1234  "Origin": [
1235  "*"
1236  ]
1237  },
1238  "method": [
1239  "OPTIONS"
1240  ]
1241  }
1242  ]
1243  },
1244  {
1245  "group": "group36",
1246  "handle": [
1247  {
1248  "handler": "subroute",
1249  "routes": [
1250  {
1251  "handle": [
1252  {
1253  "handler": "headers",
1254  "response": {
1255  "deferred": true,
1256  "set": {
1257  "Access-Control-Allow-Origin": [
1258  "{http.request.header.origin}"
1259  ],
1260  "Access-Control-Expose-Headers": [
1261  "*"
1262  ]
1263  }
1264  }
1265  }
1266  ]
1267  }
1268  ]
1269  }
1270  ],
1271  "match": [
1272  {
1273  "header": {
1274  "Origin": [
1275  "*"
1276  ]
1277  },
1278  "not": [
1279  {
1280  "method": [
1281  "OPTIONS"
1282  ]
1283  }
1284  ]
1285  }
1286  ]
1287  },
1288  {
1289  "handle": [
1290  {
1291  "handler": "subroute",
1292  "routes": [
1293  {
1294  "handle": [
1295  {
1296  "browse": {},
1297  "handler": "file_server",
1298  "hide": [
1299  "/home/web/caddy.json",
1300  ]
1301  }
1302  ],
1303  "match": [
1304  {
1305  "method": [
1306  "GET"
1307  ]
1308  }
1309  ]
1310  },
1311  {
1312  "handle": [
1313  {
1314  "handler": "webdav"
1315  }
1316  ]
1317  }
1318  ]
1319  }
1320  ]
1321  }
1322  ]
1323  }
1324  ],
1325  "terminal": true
1326  }
1327  ],
1328  "automatic_https": {
1329  "disable": true
1330  },
1331  "logs": {
1332  "logger_names": {
1333  "0.0.0.0": [
1334  "log1"
1335  ]
1336  }
1337  }
1338  }
1339  }
1340  },
1341  "tls": {
1342  "automation": {
1343  "policies": [
1344  {
1345  "subjects": [
1346  "packy.compiler.company",
1347  "demo.compiler.company",
1348  "cdn.compiler.company",
1349  "the.compiler.company",
1350  "hg.compiler.company",
1351  "compiler.company"
1352  ],
1353  "issuers": [
1354  {
1355  "email": "ellis@rwest.io",
1356  "module": "acme"
1357  },
1358  {
1359  "ca": "https://acme.zerossl.com/v2/DV90",
1360  "email": "ellis@rwest.io",
1361  "module": "acme"
1362  }
1363  ]
1364  }
1365  ]
1366  }
1367  }
1368  }
1369 }