bases:
  - ../common/templates.yaml

repositories:
  - name: coredns
    url: https://coredns.github.io/helm
  - name: zot
    url: https://zotregistry.dev/helm-charts/
  - name: cilium
    url: https://helm.cilium.io/
  - name: metrics-server
    url: https://kubernetes-sigs.github.io/metrics-server/
  - name: jetstack
    url: https://charts.jetstack.io
  - name: metallb
    url: https://metallb.github.io/metallb
  - name: traefik
    url: https://traefik.github.io/charts
  - name: local-path-provisioner
    url: git+https://github.com/rancher/local-path-provisioner@deploy/chart?ref=master
  - name: kyverno
    url: https://kyverno.github.io/kyverno/
  - name: vmware-tanzu
    url: https://vmware-tanzu.github.io/helm-charts/
  - name: openebs
    url: https://openebs.github.io/openebs
  - name: istio
    url: https://istio-release.storage.googleapis.com/charts

releases:
  - name: coredns
    chart: coredns/coredns
    version: 1.39.1
    namespace: kube-system
    inherit:
      - template: common-values-tpl

  - name: cilium
    chart: cilium/cilium
    version: 1.17.2
    namespace: kube-system
    needs:
      - kube-system/coredns
    inherit:
      - template: common-values
      - template: common-values-tpl

  - name: cert-manager
    chart: jetstack/cert-manager
    version: v1.17.1
    namespace: kube-system
    missingFileHandler: Warn
    needs:
      - kube-system/cilium
    inherit:
      - template: common-values
      - template: common-values-tpl

  - name: issuer
    chart: ../charts/issuer
    namespace: kube-system
    missingFileHandler: Warn
    needs:
      - kube-system/cert-manager
    inherit:
      - template: common-values

  - name: local-path-provisioner
    chart: local-path-provisioner/local-path-provisioner
    namespace: kube-system
    inherit:
      - template: common-values-tpl

  - name: kyverno
    chart: kyverno/kyverno
    namespace: kyverno
    version: 3.3.7
    needs:
      - kube-system/cilium
    inherit:
      - template: common-values-tpl

  - name: kyverno-policies
    chart: kyverno/kyverno-policies
    namespace: kyverno
    version: 3.3.4
    needs:
      - kyverno/kyverno

  - name: custom-kyverno-policies
    chart: ../kustomizations/kyverno/{{ .Environment.Name }}
    namespace: kyverno
    needs:
      - kyverno/kyverno

  - name: metallb
    chart: metallb/metallb
    namespace: kube-system
    condition: base.enabled
    version: 0.14.9
    needs:
      - registry/cluster-mirror
    inherit:
      - template: common-values
      - template: common-values-tpl

  - name: metallb-resources
    chart: ../charts/metallb-resources
    version: 2.0.0
    condition: base.enabled
    namespace: kube-system
    needs:
      - kube-system/metallb
    inherit:
      - template: common-values-tpl

  - name: traefik
    chart: traefik/traefik
    version: 34.4.1
    condition: base.enabled
    namespace: kube-system
    inherit:
      - template: common-values-tpl
      - template: common-values
      - template: env-values

  - name: cluster-mirror
    chart: zot/zot
    version: 0.1.67
    createNamespace: false
    installed: true
    namespace: registry
    needs:
      - kube-system/cilium
    inherit:
      - template: common-values-tpl
      - template: env-secrets

  - name: metrics-server
    chart: metrics-server/metrics-server
    version: 3.12.2
    namespace: kube-system
    needs:
      - registry/cluster-mirror
    inherit:
      - template: common-values-tpl

  - name: openebs
    chart: openebs/openebs
    condition: tools.openebs.enabled
    namespace: kube-system
    version: 4.2.0
    inherit:
      - template: common-values-tpl
      - template: env-values

  - name: velero
    chart: vmware-tanzu/velero
    namespace: velero
    version: 8.7.0
    condition: velero.enabled
    inherit:
      - template: common-values-tpl
      - template: env-values
      - template: env-secrets

  - name: istio-base
    chart: istio/base
    namespace: istio-system
    version: 1.25.1
    inherit:
      - template: common-values

  - name: istiod
    chart: istio/istiod
    namespace: istio-system
    version: 1.25.1
    inherit:
      - template: common-values-tpl
    needs:
      - istio-system/istio-base