From 6e1d9eaa188cb3ec5367a49c301ad70a9fc17920 Mon Sep 17 00:00:00 2001 From: GigiaJ Date: Sun, 12 Oct 2025 12:49:42 -0500 Subject: [PATCH] Add resolve template for later --- iac/src/main/utils/k8s.cljs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/iac/src/main/utils/k8s.cljs b/iac/src/main/utils/k8s.cljs index 2ecc198..6321147 100644 --- a/iac/src/main/utils/k8s.cljs +++ b/iac/src/main/utils/k8s.cljs @@ -35,7 +35,25 @@ (merge-by-name a b) :else b)) +(defn generic-make-transformer + "Returns a Pulumi-compatible transformer that unwraps Output values via .apply." + [f] + (fn [{:keys [base-values app-name function-keys]}] + (.apply function-keys + (fn [smap] + (let [m (js->clj smap :keywordize-keys true) + updates (f {:app-name app-name + :function-keys m}) + result (clj->js (merge base-values updates))] + result))))) +(defn resolve-template [template values] + (clojure.walk/postwalk + (fn [x] + (if (and (keyword? x) (contains? values x)) + (get values x) + x)) + template)) (defn make-transformer "Given f that takes {:app-name .. :secrets ..}, where :secrets is a plain map (already unwrapped inside .apply), return a Helm transformer."