This means it will end up in journaldriver. Change-Id: I66f781085b5dac9946b3b9a2bf30e447863e1213 Reviewed-on: https://cl.tvl.fyi/c/depot/+/5122 Reviewed-by: lukegb <lukegb@tvl.fyi> Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su>
		
			
				
	
	
		
			58 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| { config, pkgs, ... }:
 | |
| 
 | |
| {
 | |
|   config = {
 | |
|     services.nginx = {
 | |
|       enable = true;
 | |
|       enableReload = true;
 | |
| 
 | |
|       recommendedTlsSettings = true;
 | |
|       recommendedGzipSettings = true;
 | |
|       recommendedProxySettings = true;
 | |
| 
 | |
|       commonHttpConfig = ''
 | |
|         log_format json_combined escape=json
 | |
|         '{'
 | |
|             '"remote_addr":"$remote_addr",'
 | |
|             '"method":"$request_method",'
 | |
|             '"host":"$host",'
 | |
|             '"uri":"$request_uri",'
 | |
|             '"status":$status,'
 | |
|             '"request_size":$request_length,'
 | |
|             '"response_size":$body_bytes_sent,'
 | |
|             '"response_time":$request_time,'
 | |
|             '"referrer":"$http_referer",'
 | |
|             '"user_agent":"$http_user_agent"'
 | |
|         '}';
 | |
| 
 | |
|         access_log syslog:server=unix:/dev/log,nohostname json_combined;
 | |
|       '';
 | |
| 
 | |
|       appendHttpConfig = ''
 | |
|         add_header Permissions-Policy "interest-cohort=()";
 | |
|       '';
 | |
|     };
 | |
| 
 | |
|     # NixOS 20.03 broke nginx and I can't be bothered to debug it
 | |
|     # anymore, all solution attempts have failed, so here's a
 | |
|     # brute-force fix.
 | |
|     #
 | |
|     # TODO(tazjin): Find a link to the upstream issue and see if
 | |
|     # they've sorted it after ~20.09
 | |
|     systemd.services.fix-nginx = {
 | |
|       script = "${pkgs.coreutils}/bin/chown -f -R nginx: /var/spool/nginx /var/cache/nginx";
 | |
| 
 | |
|       serviceConfig = {
 | |
|         User = "root";
 | |
|         Type = "oneshot";
 | |
|       };
 | |
|     };
 | |
| 
 | |
|     systemd.timers.fix-nginx = {
 | |
|       wantedBy = [ "multi-user.target" ];
 | |
|       timerConfig = {
 | |
|         OnCalendar = "minutely";
 | |
|       };
 | |
|     };
 | |
|   };
 | |
| }
 |