diff --git a/modules/media.nix b/modules/media.nix index ee035b3..44535f7 100644 --- a/modules/media.nix +++ b/modules/media.nix @@ -162,6 +162,18 @@ in { fsGroup = 51; fsGroupChangePolicy = "OnRootMismatch"; }; + + affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms = [ + { + matchExpressions = [ + { + key = "hasMedia"; + operator = "In"; + values = ["true"]; + } + ]; + } + ]; }; }; }; @@ -268,13 +280,29 @@ in { volumes = { config.persistentVolumeClaim.claimName = "radarr"; - media.persistentVolumeClaim.claimName = "media"; + + media.hostPath = { + path = "/mnt/longhorn/persistent/media"; + type = "Directory"; + }; }; securityContext = { fsGroup = 410; fsGroupChangePolicy = "OnRootMismatch"; }; + + affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms = [ + { + matchExpressions = [ + { + key = "hasMedia"; + operator = "In"; + values = ["true"]; + } + ]; + } + ]; }; }; }; @@ -381,13 +409,29 @@ in { volumes = { config.persistentVolumeClaim.claimName = "sonarr"; - media.persistentVolumeClaim.claimName = "media"; + + media.hostPath = { + path = "/mnt/longhorn/persistent/media"; + type = "Directory"; + }; }; securityContext = { fsGroup = 411; fsGroupChangePolicy = "OnRootMismatch"; }; + + affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms = [ + { + matchExpressions = [ + { + key = "hasMedia"; + operator = "In"; + values = ["true"]; + } + ]; + } + ]; }; }; }; @@ -441,13 +485,29 @@ in { volumes = { config.persistentVolumeClaim.claimName = "bazarr"; - media.persistentVolumeClaim.claimName = "media"; + + media.hostPath = { + path = "/mnt/longhorn/persistent/media"; + type = "Directory"; + }; }; securityContext = { fsGroup = 412; fsGroupChangePolicy = "OnRootMismatch"; }; + + affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms = [ + { + matchExpressions = [ + { + key = "hasMedia"; + operator = "In"; + values = ["true"]; + } + ]; + } + ]; }; }; };