From be2843ca8026046671318f9e9f7134365cd70e79 Mon Sep 17 00:00:00 2001 From: Chris Kruining Date: Thu, 16 Apr 2026 11:00:38 +0200 Subject: [PATCH] . --- modules/nixos/services/media/default.nix | 2 +- .../nixos/services/media/mydia/default.nix | 4 +-- .../nixos/services/media/servarr/default.nix | 10 +++--- .../services/observability/alloy/default.nix | 8 ++--- .../observability/grafana/default.nix | 8 ++--- .../services/observability/loki/default.nix | 4 +-- .../observability/prometheus/default.nix | 12 +++---- .../observability/promtail/default.nix | 6 ++-- .../services/observability/tempo/default.nix | 8 ++--- .../observability/uptime-kuma/default.nix | 4 +-- .../nixos/temp/services/arrtrix/default.nix | 20 ++++++++++++ packages/arrtrix/pkg/arr/catalog_test.go | 23 ++++++++++++++ packages/arrtrix/pkg/connector/config_test.go | 23 ++++++++++++++ packages/arrtrix/pkg/matrixcmd/help_test.go | 2 ++ packages/arrtrix/pkg/webhook/arr_test.go | 31 +++++++++++++++++++ shells/default/default.nix | 1 + systems/x86_64-linux/ulmo/default.nix | 12 +++---- .../ulmo/lidarr/api_key/machines/ulmo | 1 + .../ulmo/lidarr/api_key/users/chris | 1 + .../ulmo/lidarr/config.env/machines/ulmo | 1 + .../ulmo/lidarr/config.env/users/chris | 1 + .../ulmo/postgresql/.pgpass/machines/ulmo | 1 + .../ulmo/postgresql/.pgpass/users/chris | 1 + .../ulmo/postgresql/lidarr_hash/users/chris | 1 + .../postgresql/lidarr_password/users/chris | 1 + .../ulmo/postgresql/prowlarr_hash/users/chris | 1 + .../postgresql/prowlarr_password/users/chris | 1 + .../ulmo/postgresql/radarr_hash/users/chris | 1 + .../postgresql/radarr_password/users/chris | 1 + .../ulmo/postgresql/server.crt/machines/ulmo | 1 + .../ulmo/postgresql/server.crt/users/chris | 1 + .../ulmo/postgresql/server.key/machines/ulmo | 1 + .../ulmo/postgresql/server.key/users/chris | 1 + .../ulmo/postgresql/sonarr_hash/users/chris | 1 + .../postgresql/sonarr_password/users/chris | 1 + .../ulmo/prowlarr/api_key/machines/ulmo | 1 + .../ulmo/prowlarr/api_key/users/chris | 1 + .../ulmo/prowlarr/config.env/machines/ulmo | 1 + .../ulmo/prowlarr/config.env/users/chris | 1 + .../ulmo/qbittorrent/password/machines/ulmo | 1 + .../ulmo/qbittorrent/password/users/chris | 1 + .../qbittorrent/password_hash/machines/ulmo | 1 + .../qbittorrent/password_hash/users/chris | 1 + .../qBittorrent.conf/machines/ulmo | 1 + .../qbittorrent/qBittorrent.conf/users/chris | 1 + .../ulmo/radarr/api_key/machines/ulmo | 1 + .../ulmo/radarr/api_key/users/chris | 1 + .../ulmo/radarr/config.env/machines/ulmo | 1 + .../ulmo/radarr/config.env/users/chris | 1 + .../ulmo/sabnzbd/api_key/machines/ulmo | 1 + .../ulmo/sabnzbd/api_key/users/chris | 1 + .../ulmo/sabnzbd/config.ini/machines/ulmo | 1 + .../ulmo/sabnzbd/config.ini/users/chris | 1 + .../ulmo/sabnzbd/nzb_key/machines/ulmo | 1 + .../ulmo/sabnzbd/nzb_key/users/chris | 1 + .../ulmo/sabnzbd/password/machines/ulmo | 1 + .../ulmo/sabnzbd/password/users/chris | 1 + .../ulmo/sabnzbd/username/machines/ulmo | 1 + .../ulmo/sabnzbd/username/users/chris | 1 + .../ulmo/servarr/config.tfvars/machines/ulmo | 1 + .../ulmo/servarr/config.tfvars/users/chris | 1 + .../ulmo/sonarr/api_key/machines/ulmo | 1 + .../ulmo/sonarr/api_key/users/chris | 1 + .../ulmo/sonarr/config.env/machines/ulmo | 1 + .../ulmo/sonarr/config.env/users/chris | 1 + 65 files changed, 187 insertions(+), 39 deletions(-) create mode 100644 packages/arrtrix/pkg/arr/catalog_test.go create mode 100644 packages/arrtrix/pkg/connector/config_test.go create mode 120000 vars/per-machine/ulmo/lidarr/api_key/machines/ulmo create mode 120000 vars/per-machine/ulmo/lidarr/api_key/users/chris create mode 120000 vars/per-machine/ulmo/lidarr/config.env/machines/ulmo create mode 120000 vars/per-machine/ulmo/lidarr/config.env/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/.pgpass/machines/ulmo create mode 120000 vars/per-machine/ulmo/postgresql/.pgpass/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/lidarr_hash/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/lidarr_password/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/prowlarr_hash/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/prowlarr_password/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/radarr_hash/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/radarr_password/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/server.crt/machines/ulmo create mode 120000 vars/per-machine/ulmo/postgresql/server.crt/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/server.key/machines/ulmo create mode 120000 vars/per-machine/ulmo/postgresql/server.key/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/sonarr_hash/users/chris create mode 120000 vars/per-machine/ulmo/postgresql/sonarr_password/users/chris create mode 120000 vars/per-machine/ulmo/prowlarr/api_key/machines/ulmo create mode 120000 vars/per-machine/ulmo/prowlarr/api_key/users/chris create mode 120000 vars/per-machine/ulmo/prowlarr/config.env/machines/ulmo create mode 120000 vars/per-machine/ulmo/prowlarr/config.env/users/chris create mode 120000 vars/per-machine/ulmo/qbittorrent/password/machines/ulmo create mode 120000 vars/per-machine/ulmo/qbittorrent/password/users/chris create mode 120000 vars/per-machine/ulmo/qbittorrent/password_hash/machines/ulmo create mode 120000 vars/per-machine/ulmo/qbittorrent/password_hash/users/chris create mode 120000 vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/machines/ulmo create mode 120000 vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/users/chris create mode 120000 vars/per-machine/ulmo/radarr/api_key/machines/ulmo create mode 120000 vars/per-machine/ulmo/radarr/api_key/users/chris create mode 120000 vars/per-machine/ulmo/radarr/config.env/machines/ulmo create mode 120000 vars/per-machine/ulmo/radarr/config.env/users/chris create mode 120000 vars/per-machine/ulmo/sabnzbd/api_key/machines/ulmo create mode 120000 vars/per-machine/ulmo/sabnzbd/api_key/users/chris create mode 120000 vars/per-machine/ulmo/sabnzbd/config.ini/machines/ulmo create mode 120000 vars/per-machine/ulmo/sabnzbd/config.ini/users/chris create mode 120000 vars/per-machine/ulmo/sabnzbd/nzb_key/machines/ulmo create mode 120000 vars/per-machine/ulmo/sabnzbd/nzb_key/users/chris create mode 120000 vars/per-machine/ulmo/sabnzbd/password/machines/ulmo create mode 120000 vars/per-machine/ulmo/sabnzbd/password/users/chris create mode 120000 vars/per-machine/ulmo/sabnzbd/username/machines/ulmo create mode 120000 vars/per-machine/ulmo/sabnzbd/username/users/chris create mode 120000 vars/per-machine/ulmo/servarr/config.tfvars/machines/ulmo create mode 120000 vars/per-machine/ulmo/servarr/config.tfvars/users/chris create mode 120000 vars/per-machine/ulmo/sonarr/api_key/machines/ulmo create mode 120000 vars/per-machine/ulmo/sonarr/api_key/users/chris create mode 120000 vars/per-machine/ulmo/sonarr/config.env/machines/ulmo create mode 120000 vars/per-machine/ulmo/sonarr/config.env/users/chris diff --git a/modules/nixos/services/media/default.nix b/modules/nixos/services/media/default.nix index c10a08e..900eee4 100644 --- a/modules/nixos/services/media/default.nix +++ b/modules/nixos/services/media/default.nix @@ -64,7 +64,7 @@ in { openFirewall = true; user = cfg.user; group = cfg.group; - listenPort = 2005; + listenPort = 2050; }; postgresql = { diff --git a/modules/nixos/services/media/mydia/default.nix b/modules/nixos/services/media/mydia/default.nix index 7e082a3..9044c2e 100644 --- a/modules/nixos/services/media/mydia/default.nix +++ b/modules/nixos/services/media/mydia/default.nix @@ -22,7 +22,7 @@ in { services.mydia = { enable = true; - port = 2010; + port = 2100; listenAddress = "0.0.0.0"; openFirewall = true; @@ -54,7 +54,7 @@ in { qbittorrent = { type = "qbittorrent"; host = "localhost"; - port = 2008; + port = 2080; username = "admin"; passwordFile = config.sops.secrets."mydia/qbittorrent_password".path; useSsl = false; diff --git a/modules/nixos/services/media/servarr/default.nix b/modules/nixos/services/media/servarr/default.nix index 47461ef..18932b1 100644 --- a/modules/nixos/services/media/servarr/default.nix +++ b/modules/nixos/services/media/servarr/default.nix @@ -79,7 +79,7 @@ in { qbittorrent = { enable = true; openFirewall = true; - webuiPort = 2008; + webuiPort = 2080; serverConfig = lib.mkForce {}; user = "qbittorrent"; @@ -100,7 +100,7 @@ in { settings = { misc = { host = "0.0.0.0"; - port = 2009; + port = 2090; host_whitelist = "${config.networking.hostName}"; permissions = "770"; @@ -126,7 +126,7 @@ in { flaresolverr = { enable = true; openFirewall = true; - port = 2007; + port = 2070; }; postgresql = let @@ -239,7 +239,7 @@ in { username = "admin"; password = lib.tfRef "var.qbittorrent_api_key"; url_base = "/"; - port = 2008; + port = 2080; }; }; @@ -251,7 +251,7 @@ in { host = "localhost"; api_key = lib.tfRef "var.sabnzbd_api_key"; url_base = "/"; - port = 2009; + port = 2090; }; }; } diff --git a/modules/nixos/services/observability/alloy/default.nix b/modules/nixos/services/observability/alloy/default.nix index 4b6d787..c6f5cac 100644 --- a/modules/nixos/services/observability/alloy/default.nix +++ b/modules/nixos/services/observability/alloy/default.nix @@ -5,10 +5,10 @@ let cfg = config.${namespace}.services.observability.alloy; - httpPort = 9700; - otlpGrpcPort = 9701; - otlpHttpPort = 9702; - tempoOtlpGrpcPort = 9602; + httpPort = 9070; + otlpGrpcPort = 9071; + otlpHttpPort = 9072; + tempoOtlpGrpcPort = 9062; in { options.${namespace}.services.observability.alloy = { diff --git a/modules/nixos/services/observability/grafana/default.nix b/modules/nixos/services/observability/grafana/default.nix index 05fb1da..d9308c0 100644 --- a/modules/nixos/services/observability/grafana/default.nix +++ b/modules/nixos/services/observability/grafana/default.nix @@ -25,7 +25,7 @@ in { settings = { server = { - http_port = 9100; + http_port = 9010; http_addr = "0.0.0.0"; domain = "ulmo"; }; @@ -106,7 +106,7 @@ in { name = "Prometheus"; uid = "prometheus"; type = "prometheus"; - url = "http://localhost:9200"; + url = "http://localhost:9020"; isDefault = true; editable = false; } @@ -115,7 +115,7 @@ in { name = "Loki"; uid = "loki"; type = "loki"; - url = "http://localhost:9300"; + url = "http://localhost:9030"; editable = false; } @@ -123,7 +123,7 @@ in { name = "Tempo"; uid = "tempo"; type = "tempo"; - url = "http://localhost:9600"; + url = "http://localhost:9060"; editable = false; jsonData = { nodeGraph.enabled = true; diff --git a/modules/nixos/services/observability/loki/default.nix b/modules/nixos/services/observability/loki/default.nix index e99448e..bab5b3f 100644 --- a/modules/nixos/services/observability/loki/default.nix +++ b/modules/nixos/services/observability/loki/default.nix @@ -17,7 +17,7 @@ in auth_enabled = false; server = { - http_listen_port = 9300; + http_listen_port = 9030; }; common = { @@ -44,6 +44,6 @@ in }; }; - networking.firewall.allowedTCPPorts = [ 9300 ]; + networking.firewall.allowedTCPPorts = [ 9030 ]; }; } diff --git a/modules/nixos/services/observability/prometheus/default.nix b/modules/nixos/services/observability/prometheus/default.nix index fc09e01..c092286 100644 --- a/modules/nixos/services/observability/prometheus/default.nix +++ b/modules/nixos/services/observability/prometheus/default.nix @@ -13,7 +13,7 @@ in config = mkIf cfg.enable { services.prometheus = { enable = true; - port = 9200; + port = 9020; extraFlags = optionals config.${namespace}.services.observability.alloy.enable [ "--web.enable-remote-write-receiver" ]; @@ -24,7 +24,7 @@ in { job_name = "prometheus"; static_configs = [ - { targets = [ "localhost:9200" ]; } + { targets = [ "localhost:9020" ]; } ]; } @@ -39,7 +39,7 @@ in { job_name = "alloy"; static_configs = [ - { targets = [ "localhost:9700" ]; } + { targets = [ "localhost:9070" ]; } ]; } ] @@ -47,7 +47,7 @@ in { job_name = "tempo"; static_configs = [ - { targets = [ "localhost:9600" ]; } + { targets = [ "localhost:9060" ]; } ]; } ]; @@ -55,13 +55,13 @@ in exporters = { node = { enable = true; - port = 9201; + port = 9021; enabledCollectors = [ "systemd" ]; openFirewall = true; }; }; }; - networking.firewall.allowedTCPPorts = [ 9200 ]; + networking.firewall.allowedTCPPorts = [ 9020 ]; }; } diff --git a/modules/nixos/services/observability/promtail/default.nix b/modules/nixos/services/observability/promtail/default.nix index 40a1b87..b852f1f 100644 --- a/modules/nixos/services/observability/promtail/default.nix +++ b/modules/nixos/services/observability/promtail/default.nix @@ -25,7 +25,7 @@ in { configuration = { server = { - http_listen_port = 9400; + http_listen_port = 9040; grpc_listen_port = 0; }; @@ -35,7 +35,7 @@ in { clients = [ { - url = "http://[::1]:9300/loki/api/v1/push"; + url = "http://[::1]:9030/loki/api/v1/push"; } ]; @@ -60,6 +60,6 @@ in { }; }; - networking.firewall.allowedTCPPorts = [9400]; + networking.firewall.allowedTCPPorts = [9040]; }; } diff --git a/modules/nixos/services/observability/tempo/default.nix b/modules/nixos/services/observability/tempo/default.nix index 9a6bd89..dd0602c 100644 --- a/modules/nixos/services/observability/tempo/default.nix +++ b/modules/nixos/services/observability/tempo/default.nix @@ -4,10 +4,10 @@ let cfg = config.${namespace}.services.observability.tempo; - httpPort = 9600; - grpcPort = 9601; - otlpGrpcPort = 9602; - otlpHttpPort = 9603; + httpPort = 9060; + grpcPort = 9061; + otlpGrpcPort = 9062; + otlpHttpPort = 9063; in { options.${namespace}.services.observability.tempo = { diff --git a/modules/nixos/services/observability/uptime-kuma/default.nix b/modules/nixos/services/observability/uptime-kuma/default.nix index f4dcde4..af0cfa8 100644 --- a/modules/nixos/services/observability/uptime-kuma/default.nix +++ b/modules/nixos/services/observability/uptime-kuma/default.nix @@ -15,11 +15,11 @@ in enable = true; settings = { - PORT = toString 9500; + PORT = toString 9050; HOST = "0.0.0.0"; }; }; - networking.firewall.allowedTCPPorts = [ 9500 ]; + networking.firewall.allowedTCPPorts = [ 9050 ]; }; } diff --git a/modules/nixos/temp/services/arrtrix/default.nix b/modules/nixos/temp/services/arrtrix/default.nix index b8c7457..0e0d5c8 100644 --- a/modules/nixos/temp/services/arrtrix/default.nix +++ b/modules/nixos/temp/services/arrtrix/default.nix @@ -53,6 +53,26 @@ service_name = "arrtrix"; resource_attributes = {}; }; + network.content = { + movies = { + url = ""; + api_key = ""; + root_folder_path = ""; + quality_profile_id = 0; + minimum_availability = "released"; + search_on_add = true; + }; + series = { + url = ""; + api_key = ""; + root_folder_path = ""; + quality_profile_id = 0; + language_profile_id = 0; + season_folder = true; + series_type = "standard"; + search_on_add = true; + }; + }; }; in { options.services.arrtrix = { diff --git a/packages/arrtrix/pkg/arr/catalog_test.go b/packages/arrtrix/pkg/arr/catalog_test.go new file mode 100644 index 0000000..e3c2784 --- /dev/null +++ b/packages/arrtrix/pkg/arr/catalog_test.go @@ -0,0 +1,23 @@ +package arr + +import "testing" + +func TestParseContentType(t *testing.T) { + contentType, err := ParseContentType("Movies") + if err != nil { + t.Fatalf("ParseContentType returned error: %v", err) + } + if contentType != ContentTypeMovies { + t.Fatalf("expected movies content type, got %q", contentType) + } +} + +func TestParseEventType(t *testing.T) { + eventType, err := ParseEventType(ContentTypeSeries, "download") + if err != nil { + t.Fatalf("ParseEventType returned error: %v", err) + } + if eventType != "Download" { + t.Fatalf("expected Download event type, got %q", eventType) + } +} diff --git a/packages/arrtrix/pkg/connector/config_test.go b/packages/arrtrix/pkg/connector/config_test.go new file mode 100644 index 0000000..9516e37 --- /dev/null +++ b/packages/arrtrix/pkg/connector/config_test.go @@ -0,0 +1,23 @@ +package connector + +import "testing" + +func TestValidateConfigRejectsPartialMoviesConfig(t *testing.T) { + conn := &ArrtrixConnector{ + Config: Config{ + Content: ContentConfig{}, + }, + } + conn.Config.Content.Movies.URL = "http://radarr.test" + + if err := conn.ValidateConfig(); err == nil { + t.Fatal("expected partial movies config to fail validation") + } +} + +func TestValidateConfigAllowsEmptyContentConfig(t *testing.T) { + conn := &ArrtrixConnector{} + if err := conn.ValidateConfig(); err != nil { + t.Fatalf("ValidateConfig returned error: %v", err) + } +} diff --git a/packages/arrtrix/pkg/matrixcmd/help_test.go b/packages/arrtrix/pkg/matrixcmd/help_test.go index 73fed6d..817f7ed 100644 --- a/packages/arrtrix/pkg/matrixcmd/help_test.go +++ b/packages/arrtrix/pkg/matrixcmd/help_test.go @@ -18,6 +18,8 @@ func TestFormatHelpManagementRoom(t *testing.T) { alias: make(map[string]string), } proc.Add(NewHelpHandler(proc)) + proc.Add(NewDownloadHandler()) + proc.Add(NewSubscriptionsHandler()) out := formatHelp(proc, &Context{ Bridge: &bridgev2.Bridge{ diff --git a/packages/arrtrix/pkg/webhook/arr_test.go b/packages/arrtrix/pkg/webhook/arr_test.go index 246df72..e7e89f6 100644 --- a/packages/arrtrix/pkg/webhook/arr_test.go +++ b/packages/arrtrix/pkg/webhook/arr_test.go @@ -9,6 +9,8 @@ import ( "testing" "maunium.net/go/mautrix/id" + + "sneeuwvlok/packages/arrtrix/pkg/arr" ) type stubRoomResolver struct { @@ -26,12 +28,21 @@ type stubNoticeSender struct { err error } +type stubSubscriptionFilter struct { + allowed bool + err error +} + func (s *stubNoticeSender) SendNotice(_ context.Context, roomID id.RoomID, message string) error { s.roomID = roomID s.message = message return s.err } +func (s stubSubscriptionFilter) Allows(context.Context, id.UserID, arr.ContentType, string) (bool, error) { + return s.allowed, s.err +} + func TestMountArrRequiresBridge(t *testing.T) { router := http.NewServeMux() if err := MountArr(router, nil, nil); err == nil { @@ -112,3 +123,23 @@ func TestArrHandlerRejectsMissingEventType(t *testing.T) { t.Fatalf("expected bad request status, got %d", rec.Code) } } + +func TestArrHandlerFiltersDisabledSubscriptions(t *testing.T) { + sender := &stubNoticeSender{} + handler := &ArrHandler{ + resolver: stubRoomResolver{target: managementTarget{UserID: "@user:test", RoomID: "!room:test"}}, + sender: sender, + subscriptions: stubSubscriptionFilter{allowed: false}, + } + + req := httptest.NewRequest(http.MethodPost, ArrWebhookPath, strings.NewReader(`{"eventType":"Download","movie":{"title":"Dune","year":2021}}`)) + rec := httptest.NewRecorder() + handler.ServeHTTP(rec, req) + + if rec.Code != http.StatusAccepted { + t.Fatalf("expected accepted status, got %d", rec.Code) + } + if sender.roomID != "" { + t.Fatalf("expected no notice to be sent, got room %q", sender.roomID) + } +} diff --git a/shells/default/default.nix b/shells/default/default.nix index ed12b5c..76d15b7 100644 --- a/shells/default/default.nix +++ b/shells/default/default.nix @@ -18,5 +18,6 @@ mkShell { openssl inputs.clan-core.packages.${stdenv.hostPlatform.system}.clan-cli nix-output-monitor + dos2unix ]; } diff --git a/systems/x86_64-linux/ulmo/default.nix b/systems/x86_64-linux/ulmo/default.nix index 18c5751..59077d8 100644 --- a/systems/x86_64-linux/ulmo/default.nix +++ b/systems/x86_64-linux/ulmo/default.nix @@ -140,13 +140,13 @@ }; mydia = { - redirectUris = ["http://localhost:2010/auth/oidc/callback"]; + redirectUris = ["http://localhost:2100/auth/oidc/callback"]; grantTypes = ["authorizationCode"]; responseTypes = ["code"]; }; grafana = { - redirectUris = ["http://localhost:9100/login/generic_oauth"]; + redirectUris = ["http://localhost:9010/login/generic_oauth"]; grantTypes = ["authorizationCode"]; responseTypes = ["code"]; }; @@ -224,7 +224,7 @@ media.servarr = { radarr = { enable = true; - port = 2001; + port = 2010; rootFolders = [ "/var/media/movies" ]; @@ -233,7 +233,7 @@ sonarr = { enable = true; # debug = true; - port = 2002; + port = 2020; rootFolders = [ "/var/media/series" ]; @@ -242,7 +242,7 @@ lidarr = { enable = true; debug = true; - port = 2003; + port = 2030; rootFolders = [ "/var/media/music" ]; @@ -251,7 +251,7 @@ prowlarr = { enable = true; # debug = true; - port = 2004; + port = 2040; }; }; diff --git a/vars/per-machine/ulmo/lidarr/api_key/machines/ulmo b/vars/per-machine/ulmo/lidarr/api_key/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/lidarr/api_key/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/lidarr/api_key/users/chris b/vars/per-machine/ulmo/lidarr/api_key/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/lidarr/api_key/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/lidarr/config.env/machines/ulmo b/vars/per-machine/ulmo/lidarr/config.env/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/lidarr/config.env/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/lidarr/config.env/users/chris b/vars/per-machine/ulmo/lidarr/config.env/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/lidarr/config.env/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/.pgpass/machines/ulmo b/vars/per-machine/ulmo/postgresql/.pgpass/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/.pgpass/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/.pgpass/users/chris b/vars/per-machine/ulmo/postgresql/.pgpass/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/.pgpass/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/lidarr_hash/users/chris b/vars/per-machine/ulmo/postgresql/lidarr_hash/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/lidarr_hash/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/lidarr_password/users/chris b/vars/per-machine/ulmo/postgresql/lidarr_password/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/lidarr_password/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/prowlarr_hash/users/chris b/vars/per-machine/ulmo/postgresql/prowlarr_hash/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/prowlarr_hash/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/prowlarr_password/users/chris b/vars/per-machine/ulmo/postgresql/prowlarr_password/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/prowlarr_password/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/radarr_hash/users/chris b/vars/per-machine/ulmo/postgresql/radarr_hash/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/radarr_hash/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/radarr_password/users/chris b/vars/per-machine/ulmo/postgresql/radarr_password/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/radarr_password/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/server.crt/machines/ulmo b/vars/per-machine/ulmo/postgresql/server.crt/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/server.crt/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/server.crt/users/chris b/vars/per-machine/ulmo/postgresql/server.crt/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/server.crt/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/server.key/machines/ulmo b/vars/per-machine/ulmo/postgresql/server.key/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/server.key/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/server.key/users/chris b/vars/per-machine/ulmo/postgresql/server.key/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/server.key/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/sonarr_hash/users/chris b/vars/per-machine/ulmo/postgresql/sonarr_hash/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/sonarr_hash/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/postgresql/sonarr_password/users/chris b/vars/per-machine/ulmo/postgresql/sonarr_password/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/postgresql/sonarr_password/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/prowlarr/api_key/machines/ulmo b/vars/per-machine/ulmo/prowlarr/api_key/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/prowlarr/api_key/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/prowlarr/api_key/users/chris b/vars/per-machine/ulmo/prowlarr/api_key/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/prowlarr/api_key/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/prowlarr/config.env/machines/ulmo b/vars/per-machine/ulmo/prowlarr/config.env/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/prowlarr/config.env/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/prowlarr/config.env/users/chris b/vars/per-machine/ulmo/prowlarr/config.env/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/prowlarr/config.env/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/qbittorrent/password/machines/ulmo b/vars/per-machine/ulmo/qbittorrent/password/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/qbittorrent/password/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/qbittorrent/password/users/chris b/vars/per-machine/ulmo/qbittorrent/password/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/qbittorrent/password/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/qbittorrent/password_hash/machines/ulmo b/vars/per-machine/ulmo/qbittorrent/password_hash/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/qbittorrent/password_hash/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/qbittorrent/password_hash/users/chris b/vars/per-machine/ulmo/qbittorrent/password_hash/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/qbittorrent/password_hash/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/machines/ulmo b/vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/users/chris b/vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/qbittorrent/qBittorrent.conf/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/radarr/api_key/machines/ulmo b/vars/per-machine/ulmo/radarr/api_key/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/radarr/api_key/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/radarr/api_key/users/chris b/vars/per-machine/ulmo/radarr/api_key/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/radarr/api_key/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/radarr/config.env/machines/ulmo b/vars/per-machine/ulmo/radarr/config.env/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/radarr/config.env/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/radarr/config.env/users/chris b/vars/per-machine/ulmo/radarr/config.env/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/radarr/config.env/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/api_key/machines/ulmo b/vars/per-machine/ulmo/sabnzbd/api_key/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/api_key/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/api_key/users/chris b/vars/per-machine/ulmo/sabnzbd/api_key/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/api_key/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/config.ini/machines/ulmo b/vars/per-machine/ulmo/sabnzbd/config.ini/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/config.ini/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/config.ini/users/chris b/vars/per-machine/ulmo/sabnzbd/config.ini/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/config.ini/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/nzb_key/machines/ulmo b/vars/per-machine/ulmo/sabnzbd/nzb_key/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/nzb_key/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/nzb_key/users/chris b/vars/per-machine/ulmo/sabnzbd/nzb_key/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/nzb_key/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/password/machines/ulmo b/vars/per-machine/ulmo/sabnzbd/password/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/password/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/password/users/chris b/vars/per-machine/ulmo/sabnzbd/password/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/password/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/username/machines/ulmo b/vars/per-machine/ulmo/sabnzbd/username/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/username/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/sabnzbd/username/users/chris b/vars/per-machine/ulmo/sabnzbd/username/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/sabnzbd/username/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/servarr/config.tfvars/machines/ulmo b/vars/per-machine/ulmo/servarr/config.tfvars/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/servarr/config.tfvars/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/servarr/config.tfvars/users/chris b/vars/per-machine/ulmo/servarr/config.tfvars/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/servarr/config.tfvars/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/sonarr/api_key/machines/ulmo b/vars/per-machine/ulmo/sonarr/api_key/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/sonarr/api_key/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/sonarr/api_key/users/chris b/vars/per-machine/ulmo/sonarr/api_key/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/sonarr/api_key/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file diff --git a/vars/per-machine/ulmo/sonarr/config.env/machines/ulmo b/vars/per-machine/ulmo/sonarr/config.env/machines/ulmo new file mode 120000 index 0000000..e5129f9 --- /dev/null +++ b/vars/per-machine/ulmo/sonarr/config.env/machines/ulmo @@ -0,0 +1 @@ +../../../../../../sops/machines/ulmo \ No newline at end of file diff --git a/vars/per-machine/ulmo/sonarr/config.env/users/chris b/vars/per-machine/ulmo/sonarr/config.env/users/chris new file mode 120000 index 0000000..91b7741 --- /dev/null +++ b/vars/per-machine/ulmo/sonarr/config.env/users/chris @@ -0,0 +1 @@ +../../../../../../sops/users/chris \ No newline at end of file