From 0cb4bc43f928f1e07d50337958ded5540217b59a Mon Sep 17 00:00:00 2001 From: Mirco Date: Wed, 17 Apr 2024 11:37:13 +0200 Subject: [PATCH] store state passwords in map & edn --- .../image/resources/restic_management.clj | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/infrastructure/backup/image/resources/restic_management.clj b/infrastructure/backup/image/resources/restic_management.clj index 1723193..1939351 100755 --- a/infrastructure/backup/image/resources/restic_management.clj +++ b/infrastructure/backup/image/resources/restic_management.clj @@ -26,8 +26,26 @@ (catch RuntimeException e (printf "Error parsing edn file '%s': %s\n" "backup-repository-state.edn" (.getMessage e))))) -(println (read-backup-repository-state)) +(defn read-secret [s] + (slurp (str "/var/run/secrets/" s))) + ;"/var/run/secrets/rotation-credential-secret/rotation-credential")) -(println (:state (read-backup-repository-state))) +;(println (read-backup-repository-state)) -(println (s/valid? ::backup-repository-state (read-backup-repository-state))) +;(println (:state (read-backup-repository-state))) + +;(println (s/valid? ::backup-repository-state (read-backup-repository-state))) + +(println (read-secret "rotation-credential-secret/rotation-credential")) +(println (read-secret "backup-secrets/restic-password")) + +(s/def ::new-password string?) +(s/def ::old-password string?) +(s/def ::password-state + (s/keys :req-un [::new-password ::old-password])) + +(defn rotate [] + (let [state {:new-password (read-secret "rotation-credential-secret/rotation-credential") + :old-password (read-secret "backup-secrets/restic-password")}] + (store-backup-repository-state (prn-str state)))) +(rotate)