Swap to config impl

This commit is contained in:
2025-10-07 22:25:27 -05:00
parent e75d68a7c7
commit e7e2c2be5a

View File

@@ -1,33 +1,21 @@
(ns k8s.services.nextcloud.service
(:require
[utils.k8s :refer [ make-transformer deploy-stack]]))
(:require [utils.k8s :refer [make-transformer]]))
(defn- add-skip-await-transformation [args _opts]
(let [kind (get-in args [:resource :kind])]
(if (some #{kind} ["StatefulSet" "PersistentVolumeClaim" "Ingress"])
(update-in args [:resource :metadata :annotations]
#(assoc (or % {}) "pulumi.com/skipAwait" "true"))
args)))
(defn deploy
"Deploy Nextcloud using direct vault connection info."
[provider vault-provider]
(let [nextcloud-values-transformer
(make-transformer
(fn [{:keys [app-name secrets]}]
(let [{:keys [host]} secrets]
[[["nextcloud" "host"] host]
[["nextcloud" "trustedDomains"] [host app-name]]])))
stack (deploy-stack
:namespace :vault-secrets :helm-fn :chart :ingress
{:provider provider
:vault-provider vault-provider
:app-namespace "nextcloud"
:app-name "nextcloud"
:image-port 8080
:vault-load-yaml true
:chart-repo "https://nextcloud.github.io/helm/"
:helm-values-fn nextcloud-values-transformer
:transformations add-skip-await-transformation})]
{:stack stack}))
(def config
{:stack [:vault-secrets :helm-fn :chart :ingress]
:app-namespace "nextcloud"
:app-name "nextcloud"
:chart-repo "https://nextcloud.github.io/helm/"
:image-port 8080
:vault-load-yaml true
:helm-values-fn (make-transformer
(fn [{:keys [app-name secrets]}]
(let [{:keys [host]} secrets]
[[["nextcloud" "host"] host]
[["nextcloud" "trustedDomains"] [host app-name]]])))
:transformations (fn [args _opts]
(let [kind (get-in args [:resource :kind])]
(if (some #{kind} ["StatefulSet" "PersistentVolumeClaim" "Ingress"])
(update-in args [:resource :metadata :annotations]
#(assoc (or % {}) "pulumi.com/skipAwait" "true"))
args)))})