fix pods creation and folder management
This commit is contained in:
parent
fc7349aa48
commit
443a9c394a
@ -82,16 +82,17 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d ${data-dir}/db 0700 70 root -"
|
||||||
|
"d ${data-dir}/redis 0755 dhcpcd root -"
|
||||||
|
"d ${data-dir}/media 0755 ${owner} ${owner} -"
|
||||||
|
"d ${data-dir}/certs 0755 ${owner} ${owner} -"
|
||||||
|
"d ${data-dir}/custom-templates 0755 ${owner} ${owner} -"
|
||||||
|
];
|
||||||
|
|
||||||
systemd.services."podman-create-${pod-name}" = let
|
systemd.services."podman-create-${pod-name}" = let
|
||||||
portsMapping = lib.concatMapStrings (port: " -p " + port) open-ports;
|
portsMapping = lib.concatMapStrings (port: " -p " + port) open-ports;
|
||||||
start = pkgs.writeShellScript "create-pod" ''
|
start = pkgs.writeShellScript "create-pod" ''
|
||||||
if [[ ! -d "${data-dir}" ]]; then
|
|
||||||
mkdir -p "${data-dir}/db"
|
|
||||||
mkdir -p "${data-dir}/redis"
|
|
||||||
mkdir -p "${data-dir}/media" && chown ${owner}:${owner} "${data-dir}/media"
|
|
||||||
mkdir -p "${data-dir}/certs" && chown ${owner}:${owner} "${data-dir}/certs"
|
|
||||||
mkdir -p "${data-dir}/custom-templates" && chown ${owner}:${owner} "${data-dir}/custom-templates"
|
|
||||||
fi
|
|
||||||
podman pod exists ${pod-name} || podman pod create -n ${pod-name} ${portsMapping}
|
podman pod exists ${pod-name} || podman pod create -n ${pod-name} ${portsMapping}
|
||||||
'';
|
'';
|
||||||
stop = "podman pod rm -i -f ${pod-name}";
|
stop = "podman pod rm -i -f ${pod-name}";
|
||||||
@ -104,7 +105,7 @@ in {
|
|||||||
"${backend}-authentik-worker.service"
|
"${backend}-authentik-worker.service"
|
||||||
"${backend}-authentik-ldap.service"
|
"${backend}-authentik-ldap.service"
|
||||||
];
|
];
|
||||||
wantedBy = before;
|
requiredBy = before;
|
||||||
partOf = before;
|
partOf = before;
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
|
@ -108,7 +108,7 @@ in {
|
|||||||
older-than = "3"; # in days
|
older-than = "3"; # in days
|
||||||
in rec {
|
in rec {
|
||||||
before = [ "gitea-dump.service" ];
|
before = [ "gitea-dump.service" ];
|
||||||
wantedBy = before;
|
requiredBy = before;
|
||||||
script = ''
|
script = ''
|
||||||
${pkgs.findutils}/bin/find ${config.services.gitea.dump.backupDir} \
|
${pkgs.findutils}/bin/find ${config.services.gitea.dump.backupDir} \
|
||||||
-mindepth 1 -type f -mtime +${older-than} -delete
|
-mindepth 1 -type f -mtime +${older-than} -delete
|
||||||
|
@ -32,18 +32,22 @@ in {
|
|||||||
volumes = [ "${joplin-db-data}:/var/lib/postgresql/data" ];
|
volumes = [ "${joplin-db-data}:/var/lib/postgresql/data" ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d ${joplin-data} 0755 ${joplin-uid} ${joplin-uid} -"
|
||||||
|
"d ${joplin-db-data} 0700 dhcpcd dhcpcd -"
|
||||||
|
];
|
||||||
|
|
||||||
systemd.services."podman-create-${pod-name}" = let
|
systemd.services."podman-create-${pod-name}" = let
|
||||||
portsMapping = lib.concatMapStrings (port: " -p " + port) open-ports;
|
portsMapping = lib.concatMapStrings (port: " -p " + port) open-ports;
|
||||||
start = pkgs.writeShellScript "create-pod" ''
|
start = pkgs.writeShellScript "create-pod" ''
|
||||||
mkdir -p ${joplin-data} && chown ${joplin-uid} ${joplin-data}
|
|
||||||
mkdir -p ${joplin-db-data}
|
|
||||||
podman pod exists ${pod-name} || podman pod create -n ${pod-name} ${portsMapping}
|
podman pod exists ${pod-name} || podman pod create -n ${pod-name} ${portsMapping}
|
||||||
'';
|
'';
|
||||||
stop = "podman pod rm -i -f ${pod-name}";
|
stop = "podman pod rm -i -f ${pod-name}";
|
||||||
in rec {
|
in rec {
|
||||||
path = [ pkgs.coreutils config.virtualisation.podman.package ];
|
path = [ pkgs.coreutils config.virtualisation.podman.package ];
|
||||||
before = [ "${backend}-joplin.service" "${backend}-joplin-db.service" ];
|
before = [ "${backend}-joplin.service" "${backend}-joplin-db.service" ];
|
||||||
wantedBy = before;
|
requiredBy = before;
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
RemainAfterExit = "yes";
|
RemainAfterExit = "yes";
|
||||||
|
@ -43,7 +43,7 @@ in {
|
|||||||
"${backend}-recyclarr.service"
|
"${backend}-recyclarr.service"
|
||||||
"${backend}-sonarr.service"
|
"${backend}-sonarr.service"
|
||||||
];
|
];
|
||||||
wantedBy = before;
|
requiredBy = before;
|
||||||
partOf = before;
|
partOf = before;
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
|
@ -139,7 +139,7 @@ in {
|
|||||||
"${backend}-memcached.service"
|
"${backend}-memcached.service"
|
||||||
"${backend}-seafile-caddy.service"
|
"${backend}-seafile-caddy.service"
|
||||||
];
|
];
|
||||||
wantedBy = before;
|
requiredBy = before;
|
||||||
partOf = before;
|
partOf = before;
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user