image -> backup-image

This commit is contained in:
Michael Jerger 2025-04-16 18:18:42 +02:00
parent 51bcda92c1
commit b6a1a8bae2
4 changed files with 9 additions and 9 deletions
src
main/cljc/dda/c4k_common
test/cljc/dda/c4k_common

View file

@ -11,7 +11,7 @@
(s/def ::mount-path ::int/mount-path)
(s/def ::app-name ::int/app-name)
(s/def ::image ::int/image)
(s/def ::backup-image ::int/backup-image)
(s/def ::backup-postgres ::int/backup-postgres)
(s/def ::backup-volume-mount ::int/backup-volume-mount)
(s/def ::aws-access-key-id ::int/aws-access-key-id)

View file

@ -15,7 +15,7 @@
(s/def ::mount-path string?)
(s/def ::app-name string?)
(s/def ::image string?)
(s/def ::backup-image string?)
(s/def ::backup-postgres boolean?)
(s/def ::backup-volume-mount (s/keys :req-un [::mount-name ::pvc-name ::mount-path]))
(s/def ::aws-access-key-id p/bash-env-string?)
@ -26,7 +26,7 @@
(def config? (s/keys :req-un [::ns/namespace
::app-name
::image
::backup-image
::backup-postgres
::restic-repository]
:opt-un [::backup-volume-mount]))
@ -95,23 +95,23 @@
(defn-spec backup-restore-deployment map?
[config config?]
(let [{:keys [namespace app-name image]} config]
(let [{:keys [namespace app-name backup-image]} config]
(->
(ns/load-and-adjust-namespace "backup/backup-restore-deployment.yaml" namespace)
(assoc-in [:metadata :labels :app.kubernetes.io/part-of] app-name)
(assoc-in [:spec :template :metadata :labels :app.kubernetes.io/part-of] app-name)
(assoc-in [:spec :template :spec :containers 0 :image] image)
(assoc-in [:spec :template :spec :containers 0 :image] backup-image)
(assoc-in [:spec :template :spec :containers 0 :env] (backup-env config))
(assoc-in [:spec :template :spec :containers 0 :volumeMounts] (backup-volume-mounts config))
(assoc-in [:spec :template :spec :volumes] (backup-volumes config)))))
(defn-spec backup-cron map?
[config config?]
(let [{:keys [namespace app-name image]} config]
(let [{:keys [namespace app-name backup-image]} config]
(->
(ns/load-and-adjust-namespace "backup/backup-cron.yaml" namespace)
(assoc-in [:metadata :labels :app.kubernetes.io/part-of] app-name)
(assoc-in [:spec :jobTemplate :spec :template :spec :containers 0 :image] image)
(assoc-in [:spec :jobTemplate :spec :template :spec :containers 0 :image] backup-image)
(assoc-in [:spec :jobTemplate :spec :template :spec :containers 0 :env] (backup-env config))
(assoc-in [:spec :jobTemplate :spec :template :spec :containers 0 :volumeMounts] (backup-volume-mounts config))
(assoc-in [:spec :jobTemplate :spec :template :spec :volumes] (backup-volumes config)))))

View file

@ -12,7 +12,7 @@
(def config {:namespace "ns"
:app-name "app-name"
:image "image"
:backup-image "image"
:backup-postgres false
:restic-repository "repo"})

View file

@ -10,7 +10,7 @@
(def config {:namespace "ns"
:app-name "app-name"
:image "image"
:backup-image "image"
:backup-postgres true
:restic-repository "repo"
:backup-volume-mount