Remove reliance on NFS volumes

This commit is contained in:
Pim Kunis 2025-02-17 22:03:32 +01:00
parent f9541b865b
commit 7418159761
3 changed files with 15 additions and 30 deletions

View file

@ -87,16 +87,6 @@
ipAddressPools.main.spec.addresses = ["192.168.30.128-192.168.30.200" "2a0d:6e00:1a77:30::2-2a0d:6e00:1a77:30:ffff:ffff:ffff:fffe"]; ipAddressPools.main.spec.addresses = ["192.168.30.128-192.168.30.200" "2a0d:6e00:1a77:30::2-2a0d:6e00:1a77:30:ffff:ffff:ffff:fffe"];
l2Advertisements.main.metadata = {}; l2Advertisements.main.metadata = {};
persistentVolumes.media-media.spec = {
capacity.storage = "1Gi";
accessModes = ["ReadWriteMany"];
nfs = {
server = "lewis.dmz";
path = "/mnt/longhorn/persistent/media";
};
};
}; };
}; };

View file

@ -3,7 +3,7 @@
config, config,
... ...
}: let }: let
longhornVolumeOpts = {name, ...}: { longhornVolumeOpts = _: {
options = { options = {
storage = lib.mkOption { storage = lib.mkOption {
type = lib.types.str; type = lib.types.str;
@ -16,7 +16,7 @@
}; };
}; };
longhornPVOpts = {name, ...}: { longhornPVOpts = _: {
options = { options = {
storage = lib.mkOption { storage = lib.mkOption {
type = lib.types.str; type = lib.types.str;
@ -71,7 +71,7 @@ in {
claimRef = { claimRef = {
inherit name; inherit name;
namespace = longhornVolume.namespace; inherit (longhornVolume) namespace;
}; };
csi = { csi = {
@ -134,7 +134,7 @@ in {
persistentVolumeClaims = persistentVolumeClaims =
lib.mergeAttrs lib.mergeAttrs
(builtins.mapAttrs (builtins.mapAttrs
(name: longhornVolume: { (_name: longhornVolume: {
spec = { spec = {
accessModes = ["ReadWriteOnce"]; accessModes = ["ReadWriteOnce"];
resources.requests.storage = longhornVolume.storage; resources.requests.storage = longhornVolume.storage;
@ -143,12 +143,12 @@ in {
}) })
config.lab.longhornVolumes) config.lab.longhornVolumes)
(builtins.mapAttrs (builtins.mapAttrs
(name: longhornPVC: { (_name: longhornPVC: {
spec = { spec = {
accessModes = ["ReadWriteOnce"]; accessModes = ["ReadWriteOnce"];
resources.requests.storage = longhornPVC.storage; resources.requests.storage = longhornPVC.storage;
storageClassName = ""; storageClassName = "";
volumeName = longhornPVC.volumeName; inherit (longhornPVC) volumeName;
}; };
}) })
config.lab.longhorn.persistentVolumeClaim); config.lab.longhorn.persistentVolumeClaim);

View file

@ -151,7 +151,11 @@ in {
volumes = { volumes = {
config.persistentVolumeClaim.claimName = "deluge"; config.persistentVolumeClaim.claimName = "deluge";
media.persistentVolumeClaim.claimName = "media";
media.hostPath = {
path = "/mnt/longhorn/persistent/media";
type = "Directory";
};
}; };
securityContext = { securityContext = {
@ -575,19 +579,10 @@ in {
}; };
}; };
persistentVolumeClaims = { persistentVolumeClaims.jellyfin-cache = lib.mkIf cfg.jellyfin.enable {
jellyfin-cache = lib.mkIf cfg.jellyfin.enable { spec = {
spec = { accessModes = ["ReadWriteOnce"];
accessModes = ["ReadWriteOnce"]; resources.requests.storage = "20Gi";
resources.requests.storage = "20Gi";
};
};
media.spec = {
accessModes = ["ReadWriteMany"];
storageClassName = "";
resources.requests.storage = "1Mi";
volumeName = "media-media";
}; };
}; };
}; };