Swap to our template design

This commit is contained in:
2025-10-14 04:59:43 -05:00
parent 7a13836b34
commit 37120dd7f6

View File

@@ -28,51 +28,39 @@
"csi.storage.k8s.io/controller-publish-secret-name" "wasabi-csi-secrets" "csi.storage.k8s.io/controller-publish-secret-name" "wasabi-csi-secrets"
"csi.storage.k8s.io/controller-publish-secret-namespace" "kube-system"}} "csi.storage.k8s.io/controller-publish-secret-namespace" "kube-system"}}
:ingress-opts {:service-name "harbor-portal"} :ingress-opts {:spec {:ingressClassName "caddy"
:rules [{:host 'host
:http {:paths '(make-paths
{:paths ["/" "/c"]
:backend {:name (str app-name "-portal")
:port {:number image-port}}}
{:paths ["/api" "/v2" "/chartrepo" "/service"]
:backend {:name (str app-name "-core")
:port {:number image-port}}})}}]}}
:chart-opts {:fetchOpts {:repo "https://helm.goharbor.io"} :chart-opts {:fetchOpts {:repo "https://helm.goharbor.io"}
:transformations (fn [args _opts]
(let [kind (get-in args [:resource :kind])] :values {:externalURL '(str "https://" host)
(if (some #{kind} ["StatefulSet" "PersistentVolumeClaim" "Ingress"]) :expose {:ingress {:enabled true}
(update-in args [:resource :metadata :annotations] :tls {:enabled true}}
#(assoc (or % {}) "pulumi.com/skipAwait" "true")) :harborAdminPassword 'admin-password
args))) :secretKey 'secret-key
:helm-values-fn (make-transformer :database {:enabled true
(fn [{:keys [app-name secrets]}] :internal {:password 'db-password}}
(let [{:keys [host secret-key admin-password db-password region bucket s3-access-key s3-secret-key region-endpoint]} secrets] :postgresql {:auth {:postgresPassword 'db-password}}
[[["externalURL"] (str "https://" host)] :persistence {:enabled true
[["expose" "ingress" "enabled"] false] :resourcePolicy "keep"}
[["expose" "tls" "enabled"] false] :registry {:storage {:type "s3"
[["harborAdminPassword"] admin-password] :s3 {:region 'region
[["secretKey"] secret-key] :bucket 'bucket
[["database" "enabled"] true] :accessKey 's3-access-key
[["database" "internal" "password"] db-password] :secretKey 's3-secret-key
[["persistence" "enabled"] true] :regionendpoint 'region-endpoint}}}}
[["persistence" "resourcePolicy"] "keep"] :transformations [(fn [args _opts]
[["registry" "storage" "type" "s3"]] (let [kind (get-in args [:resource :kind])]
[["registry" "storage" "s3" "region" region]] (if (some #{kind} ["StatefulSet" "PersistentVolumeClaim" "Ingress"])
[["registry" "storage" "s3" "bucket" bucket]] (update-in args [:resource :metadata :annotations]
[["registry" "storage" "s3" "accessKey" s3-access-key]] #(assoc (or % {}) "pulumi.com/skipAwait" "true"))
[["registry" "storage" "s3" "secretKey" s3-secret-key]] args)))]
[["registry" "storage" "s3" "regionendpoint" region-endpoint]] }})
;;[["persistence" "persistentVolumeClaim" "registry" "storageClass"] "harbor"]
;;[["persistence" "persistentVolumeClaim" "database" "storageClass"] "harbor"]
;;[["persistence" "persistentVolumeClaim" "jobservice" "storageClass"] "harbor"]
;;[["persistence" "persistentVolumeClaim" "redis" "storageClass"] "harbor"]
])))}})
(def ingress-options
{:function-keys [:host :service-name :image-port]
:ingress-rules [{:host 'host
:http {:paths [{:path "/"
:pathType "Prefix"
:backend {:service {:name (str 'service-name "-core")
:port {:number 'image-port}}}}]}}
{:host 'host
:http {:paths [{:path "/api"
:pathType "Prefix"
:backend {:service {:name (str 'service-name "-portal")
:port {:number 'image-port}}}}]}}]})