--- templates: # --------------------------- # -- Hooks # --------------------------- crd-management-hook: hooks: - events: ["preapply"] showlogs: true command: "sh" args: - -c - | helm show crds {{ .Release.Chart }} --version {{ .Release.Version }} | kubectl replace -f - \ || helm show crds {{ .Release.Chart }} --version {{ .Release.Version }} | kubectl create -f - \ || true - events: ["prepare"] showlogs: true command: "sh" args: - -c - "helm show crds {{ .Release.Chart }} --version {{ .Release.Version }} | kubectl diff -f - || true" - events: ["postuninstall"] showlogs: true command: "sh" args: - -c - "helm show crds {{ .Release.Chart }} --version {{ .Release.Version }} | kubectl delete -f - || true" # ---------------------------- # -- Configs # ---------------------------- default-common-values: values: - '{{ requiredEnv "PWD" }}/common/values.{{ .Release.Name }}.yaml' default-env-values: values: - '{{ requiredEnv "PWD" }}/{{ .Environment.Name }}/values/values.{{ .Release.Name }}.yaml' default-env-secrets: secrets: - '{{ requiredEnv "PWD" }}/{{ .Environment.Name }}/values/secrets.{{ .Release.Name }}.yaml' # ---------------------------- # -- Extensions # ---------------------------- ext-istio-gateway: dependencies: - chart: bedag/raw version: 2.0.0 alias: istio-gateway values: - '{{ requiredEnv "PWD" }}/common/values.istio-gateway.yaml' ext-istio-resource: dependencies: - chart: bedag/raw version: 2.0.0 alias: istio values: - '{{ requiredEnv "PWD" }}/common/values.istio.yaml' ext-certificate: dependencies: - chart: bedag/raw version: 2.0.0 alias: certificate values: - '{{ requiredEnv "PWD" }}/common/values.certificate.yaml' ext-metallb: dependencies: - chart: bedag/raw version: 2.0.0 alias: metallb values: - '{{ requiredEnv "PWD" }}/common/values.metallb.yaml' service-monitor: dependencies: - chart: bedag/raw version: 2.0.0 alias: service-monitor values: - '{{ requiredEnv "PWD" }}/common/values.service-monitor.yaml' namespace: dependencies: - chart: bedag/raw version: 2.0.0 alias: ns inherit: - template: default-common-values - template: default-env-values ext-database: dependencies: - chart: bedag/raw version: 2.0.0 alias: ext-database values: - '{{ requiredEnv "PWD" }}/common/values.database.yaml' # ---------------------------- # -- Releases # ---------------------------- # -- System # ---------------------------- namespaces: &namespaces name: namespaces chart: '{{ requiredEnv "PWD" }}/charts/namespaces/chart' namespace: kube-public createNamespace: false inherit: - template: default-env-values roles: &roles name: roles chart: '{{ requiredEnv "PWD" }}/charts/roles' namespace: kube-public createNamespace: false inherit: - template: default-env-values metrics-server: &metrics-server name: metrics-server chart: metrics-server/metrics-server version: 3.12.1 values: - common/values.{{ .Release.Name }}.yaml metallb: &metallb name: metallb chart: metallb/metallb version: 0.14.5 metallb-resources: &metallb-resources name: metallb-resources chart: bedag/raw version: 2.0.0 inherit: - template: ext-metallb - template: default-env-values cert-manager: &cert-manager name: cert-manager chart: jetstack/cert-manager version: 1.14.5 set: - name: installCRDs value: true longhorn: &longhorn name: longhorn chart: longhorn/longhorn version: 1.6.1 inherit: - template: default-env-values argocd: &argocd name: argocd chart: argo/argo-cd version: 6.9.3 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource monitoring-common: labels: bundle: monitoring prometheus: &prometheus name: prometheus chart: prometheus-community/kube-prometheus-stack version: 58.5.3 inherit: - template: monitoring-common - template: default-env-values - template: default-env-secrets - template: crd-management-hook - template: ext-istio-resource loki: &loki name: loki chart: grafana/loki version: 6.5.2 inherit: - template: monitoring-common - template: default-env-values promtail: &promtail name: promtail chart: grafana/promtail version: 6.15.5 inherit: - template: monitoring-common - template: default-env-values # ---------------------------- # -- Istio # ---------------------------- istio-common: labels: bundle: istio version: 1.22.0 istio-base: &istio-base name: istio-base chart: istio/base inherit: - template: crd-management-hook - template: istio-common istio-gateway: &istio-gateway name: istio-ingressgateway chart: istio/gateway inherit: - template: istio-common - template: default-env-values istio-gateway-resources: &istio-gateway-resources name: istio-gateway-resources chart: bedag/raw version: 2.0.0 inherit: - template: ext-istio-gateway - template: ext-certificate - template: default-env-values istiod: &istiod name: istiod chart: istio/istiod inherit: - template: istio-common - template: default-env-values # ---------------------------- # -- Applications # ---------------------------- openvpn-xor: &openvpn-xor name: openvpn-xor chart: allanger-gitea/openvpn-xor version: 1.3.0 inherit: - template: default-env-values - template: ext-istio-resource openvpn: &openvpn name: openvpn chart: allanger-gitea/openvpn version: 1.2.0 inherit: - template: default-env-values - template: ext-istio-resource # ---------------------------- # -- Drone # ---------------------------- drone-common: labels: bundle: drone drone: &drone name: drone chart: drone/drone version: 0.6.5 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource - template: drone-common drone-runner-docker: &drone-runner-docker name: drone-runner-docker chart: drone/drone-runner-docker version: 0.6.2 inherit: - template: default-env-values - template: default-env-secrets - template: drone-common woodpecker-ci: &woodpecker-ci name: woodpecker-ci chart: woodpecker/woodpecker version: 1.3.0 inherit: - template: ext-database - template: default-env-values - template: default-env-secrets - template: ext-istio-resource nrodionov: &nrodionov name: nrodionov chart: bitnami/wordpress version: 22.2.11 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource minio: &minio name: minio chart: minio/minio version: 5.2.0 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource gitea: &gitea name: gitea chart: gitea/gitea version: 10.1.4 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource - template: ext-database funkwhale: &funkwhale name: funkwhale chart: ananace-charts/funkwhale version: 2.0.5 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource - template: ext-database bitwarden: &bitwarden name: bitwarden chart: bitwarden/vaultwarden version: 0.1.7 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource redis: &redis name: redis chart: bitnami/redis version: 19.3.3 inherit: - template: default-env-values - template: default-env-secrets postgres16: &postgres16 name: postgres16 chart: bitnami/postgresql version: 15.3.3 inherit: - template: default-env-values - template: default-env-secrets db-operator: &db-operator name: db-operator chart: db-operator/db-operator version: 1.25.0 db-instances: &db-instances name: db-instances chart: db-operator/db-instances version: 2.3.1 inherit: - template: default-env-values - template: default-env-secrets mysql: &mysql name: mysql chart: bitnami/mysql version: 10.2.4 inherit: - template: default-env-values - template: default-env-secrets docker-mailserver: &docker-mailserver name: docker-mailserver chart: allanger-gitea/docker-mailserver version: 2.3.1 inherit: - template: default-env-values - template: ext-istio-gateway - template: ext-istio-resource vaultwarden: &vaultwarden name: vaultwarden chart: allanger-gitea/vaultwarden version: 1.2.0 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource - template: ext-database reflector: &reflector name: reflector chart: emberstack/reflector version: 7.1.262 mailu: &mailu name: mailu chart: mailu/mailu version: 1.5.0 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource - template: ext-certificate tandoor: &tandoor name: tandoor chart: gabe565/tandoor version: 0.9.5 inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource - template: ext-database coredns: &coredns name: coredns chart: coredns/coredns version: 1.29.0 namespace: kube-system inherit: - template: default-env-values cilium: &cilium name: cilium chart: cilium/cilium version: 1.15.5 createNamespace: false namespace: kube-system inherit: - template: default-env-values zot: &zot name: zot chart: zot/zot version: 0.1.54 createNamespace: false namespace: kube-services inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource chartmuseum: &chartmuseum name: chartmuseum chart: chartmuseum/chartmuseum version: 3.10.2 createNamespace: false namespace: kube-services inherit: - template: default-env-values - template: default-env-secrets - template: ext-istio-resource keel: &keel name: keel chart: keel/keel version: 1.0.3 createNamespace: false namespace: kube-system