forked from fediversity/fediversity
		
	Proxy all buckets that have website = true
				
					
				
			This commit is contained in:
		
							parent
							
								
									aed4b3a744
								
							
						
					
					
						commit
						373aae778c
					
				
					 1 changed files with 18 additions and 10 deletions
				
			
		|  | @ -14,6 +14,7 @@ let | |||
|   inherit (builtins) toString; | ||||
|   inherit (lib) types mkOption mkEnableOption optionalString concatStringsSep; | ||||
|   inherit (lib.strings) escapeShellArg; | ||||
|   inherit (lib.attrsets) filterAttrs mapAttrs'; | ||||
|   cfg = config.services.garage; | ||||
|   fedicfg = config.fediversity.internal.garage; | ||||
|   concatMapAttrs = scriptFn: attrset: concatStringsSep "\n" (lib.mapAttrsToList scriptFn attrset); | ||||
|  | @ -159,16 +160,23 @@ in | |||
|       }; | ||||
|     }; | ||||
| 
 | ||||
|     services.nginx.virtualHosts.${fedicfg.web.domainForBucket "pixelfed"} = { | ||||
|       forceSSL = true; | ||||
|       enableACME = true; | ||||
|       locations."/" = { | ||||
|         proxyPass = "http://localhost:3902"; | ||||
|         extraConfig = '' | ||||
|           proxy_set_header Host $host; | ||||
|         ''; | ||||
|       }; | ||||
|     }; | ||||
|     ## Create a proxy from <bucket>.web.garage.<domain> to localhost:3902 for | ||||
|     ## each bucket that has `website = true`. | ||||
|     services.nginx.virtualHosts = | ||||
|       let | ||||
|         value = { | ||||
|           forceSSL = true; | ||||
|           enableACME = true; | ||||
|           locations."/" = { | ||||
|             proxyPass = "http://localhost:3902"; | ||||
|             extraConfig = '' | ||||
|               proxy_set_header Host $host; | ||||
|             ''; | ||||
|           }; | ||||
|         }; | ||||
|       in mapAttrs' | ||||
|         (bucket: _: {name = fedicfg.web.domainForBucket bucket; inherit value;}) | ||||
|         (filterAttrs (_: {website, ...}: website) cfg.ensureBuckets); | ||||
| 
 | ||||
|     systemd.services.ensure-garage = { | ||||
|       after = [ "garage.service" ]; | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Valentin Gagarin
							Valentin Gagarin