diff options
author | Rory& <root@rory.gay> | 2024-07-04 00:47:48 +0200 |
---|---|---|
committer | Rory& <root@rory.gay> | 2024-07-04 14:45:02 +0200 |
commit | 983815864d6d052b3d46685feea02959e4b2238b (patch) | |
tree | 2a24ffa9e0c33f62d634ffb102937ea1cba1a36b /host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix | |
parent | Synapse main cleanup (diff) | |
download | Rory-Open-Architecture-983815864d6d052b3d46685feea02959e4b2238b.tar.xz |
Synapse workers work
Diffstat (limited to '')
-rw-r--r-- | host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix b/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix new file mode 100644 index 0000000..af7e544 --- /dev/null +++ b/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix @@ -0,0 +1,41 @@ + +{ config, pkgs, lib, ... }: +let + cfg = config.services.matrix-synapse; + streamWriters = lib.range 0 (cfg.eventStreamWriters - 1); +in +{ + services.matrix-synapse = { + settings = { + instance_map = lib.listToAttrs (lib.map (port: { + name = "stream-writer-${toString port}"; + value = { + path = "/run/matrix-synapse/stream-writer-${toString port}.sock"; + }; + }) streamWriters); + + stream_writers = { + events = lib.map (index: "stream-writer-events-${toString index}") streamWriters; + }; + }; + + workers = lib.listToAttrs (lib.map (index: { + name = "stream-writer-${toString index}"; + value = { + worker_app = "synapse.app.generic_worker"; + worker_listeners = [ + { + type = "http"; + path = "/run/matrix-synapse/stream-writer-${toString index}.sock"; + resources = [ + { + names = ["replication"]; + compress = false; + } + ]; + } + ]; + }; + }) streamWriters); + }; +} \ No newline at end of file |