diff options
Diffstat (limited to 'workadventure.nix')
-rw-r--r-- | workadventure.nix | 32 |
1 files changed, 28 insertions, 4 deletions
diff --git a/workadventure.nix b/workadventure.nix index 189921c..b1aec77 100644 --- a/workadventure.nix +++ b/workadventure.nix @@ -6,6 +6,22 @@ with lib; let cfg = config.services.workadventure; + + workadventureOverlay = let + src = "/home/stuebinm/Dokumente/Nous Sommes l'Utopie/hacc/workadventure/workadventure-nix"; + #src = pkgs.fetchgit { + # url = "https://gitlab.infra4future.de/stuebinm/workadventure-nix"; + # rev = "7ec4c291d8ec93bc205af5c238dfe6a5176f4da4"; + # sha256 = "1372iwwbw7ji3v1wx3ncx9xiwnmjhahb8ivxcg8ykkci80hj0ci5"; + #}; + in import "${src}/overlay.nix"; + + urls = instanceConfig: if instanceConfig.nginx.domain != null then { + api = instanceConfig.nginx.domain + instanceConfig.frontend.urls.api; + uploader = instanceConfig.nginx.domain + instanceConfig.frontend.urls.uploader; + admin = instanceConfig.nginx.domain + instanceConfig.frontend.urls.admin; + maps = instanceConfig.nginx.domain + instanceConfig.frontend.urls.maps; + } else instanceConfig.urls; servicesBack = mapAttrs' (instanceName: instanceConfig: { name = "wa-back-${instanceName}"; @@ -31,6 +47,9 @@ let environment = { HTTP_PORT = toString instanceConfig.backend.httpPort; GRPC_PORT = toString instanceConfig.backend.grpcPort; + #ADMIN_API_TOKEN = "lalala"; + #ADMIN_API_URL = toString (urls instanceConfig).admin; + #ALLOW_ARTILLERY = "true"; }; serviceConfig = { User = "workadventure-backend"; @@ -56,6 +75,8 @@ let environment = { PUSHER_HTTP_PORT = toString instanceConfig.pusher.port; API_URL = "localhost:${toString instanceConfig.backend.grpcPort}"; + #ADMIN_API_URL = toString (urls instanceConfig).admin; + #ADMIN_API_TOKEN = "lalala"; }; serviceConfig = { User = "workadventure-pusher"; @@ -71,10 +92,10 @@ let frontPackage = mapAttrs (instanceName: instanceConfig: instanceConfig.frontend.package.override { settings = { - apiUrl = instanceConfig.frontend.urls.api; - uploaderUrl = instanceConfig.frontend.urls.uploader; - adminUrl = instanceConfig.frontend.urls.admin; - mapsUrl = instanceConfig.frontend.urls.maps; + apiUrl = (urls instanceConfig).api; + uploaderUrl = (urls instanceConfig).uploader; + adminUrl = (urls instanceConfig).admin; + mapsUrl = (urls instanceConfig).maps; } // instanceConfig.frontend.settings; } ) cfg.instances; @@ -90,7 +111,9 @@ let }; "/pusher/" = { + #proxyPass = "http://10.233.3.1:9000"; proxyPass = "http://localhost:${toString instanceConfig.pusher.port}/"; + proxyWebsockets = true; }; "/maps/" = mkIf instanceConfig.nginx.serveDefaultMaps { @@ -134,5 +157,6 @@ in { inherit virtualHosts; enable = mkDefault true; }; + nixpkgs.overlays = [ workadventureOverlay ]; }; } |