summary refs log tree commit diff
path: root/host/Spacebar-nginx/containers/spacebar-server/services/spacebar-server.nix
diff options
context:
space:
mode:
Diffstat (limited to 'host/Spacebar-nginx/containers/spacebar-server/services/spacebar-server.nix')
-rwxr-xr-xhost/Spacebar-nginx/containers/spacebar-server/services/spacebar-server.nix74
1 files changed, 74 insertions, 0 deletions
diff --git a/host/Spacebar-nginx/containers/spacebar-server/services/spacebar-server.nix b/host/Spacebar-nginx/containers/spacebar-server/services/spacebar-server.nix
new file mode 100755
index 0000000..aaa1396
--- /dev/null
+++ b/host/Spacebar-nginx/containers/spacebar-server/services/spacebar-server.nix
@@ -0,0 +1,74 @@
+{ config, pkgs, lib, spacebar-server, ... }:
+
+{
+  services.rabbitmq.enable = true;
+
+  systemd.tmpfiles.rules = [  "d /var/lib/spacebar-server 0750 spacebar spacebar" ];
+  users.users.spacebar = {
+    isSystemUser = true;
+    group = "spacebar";
+    home = "/var/lib/spacebar-server";
+    createHome = true;
+    shell = "/bin/false";
+  };
+
+  users.groups.spacebar = {
+    #isSystemGroup = true;
+  };
+
+  systemd.services = {
+    "spacebar-server-api" = {
+        wantedBy = [ "multi-user.target" ];
+        after = [ "resolvconf.target" "postgresql.service" "rabbitmq.service" ];
+        serviceConfig = {
+          ExecStart = ''
+            ${spacebar-server.packages.${pkgs.system}.default}/bin/start-api
+            '';
+          #Restart = "never";
+          User = "spacebar";
+          WorkingDirectory = "/var/lib/spacebar-server";
+          Environment = [
+            "DATABASE=postgres://spacebar:spacebar@127.0.0.1/spacebar"
+            "LOG_REQUESTS='-'"
+            #"DB_LOGGING='true'"
+          ];
+      };
+    };
+    "spacebar-server-gateway" = {
+        wantedBy = [ "multi-user.target" ];
+        after = [ "resolvconf.target" "postgresql.service" "rabbitmq.service" "spacebar-server-api.service" ];
+        serviceConfig = {
+          ExecStart = ''
+            ${spacebar-server.packages.${pkgs.system}.default}/bin/start-gateway
+            '';
+          #Restart = "never";
+          User = "spacebar";
+          WorkingDirectory = "/var/lib/spacebar-server";
+          Environment = [
+            "DATABASE=postgres://spacebar:spacebar@127.0.0.1/spacebar"
+            "LOG_REQUESTS='-'"
+            #"DB_LOGGING='true'"
+          ];
+      };
+    };
+    "spacebar-server-cdn" = {
+        wantedBy = [ "multi-user.target" ];
+        after = [ "resolvconf.target" "postgresql.service" "rabbitmq.service" "spacebar-server-api.service" ];
+        serviceConfig = {
+          ExecStart = ''
+            ${spacebar-server.packages.${pkgs.system}.default}/bin/start-cdn
+            '';
+          #Restart = "never";
+          User = "spacebar";
+          WorkingDirectory = "/var/lib/spacebar-server";
+          Environment = [
+            "DATABASE=postgres://spacebar:spacebar@127.0.0.1/spacebar"
+            "LOG_REQUESTS='-'"
+            #"DB_LOGGING='true'"
+          ];
+      };
+    };
+  };
+
+  system.stateVersion = "22.11"; # DO NOT EDIT!
+}