apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
  name: harbor
  namespace: harbor
spec:
  interval: 5m
  chart:
    spec:
      chart: harbor
      version: 1.3.x
      sourceRef:
        kind: HelmRepository
        name: harbor-charts
        namespace: flux-system

  values:
    logLevel: debug
    
    expose:
      type: clusterIP
    
      tls:
        enabled: false
#        secret:
#          secretName: wildcard-main-tls
#          notarySecretName: wildcard-main-tls
#
#      ingress:
#        hosts:
#          core: oci.${SECRET_NEW_DOMAIN}
#          notary: charts.${SECRET_NEW_DOMAIN}
#
#        annotations:
#          cert-manager.io/cluster-issuer: letsencrypt-production
#          traefik.ingress.kubernetes.io/router.entrypoints: websecure

    persistence:
      persistentVolumeClaim:
        registry:
          existingClaim: harbor-pv-claim
          subPath: "registry/"
        jobservice:
          jobLog:
            existingClaim: harbor-pv-claim
            subPath: "jobservice/"
        
#        trivy:
#          existingClaim:
#          subPath: "trivy/"

    imageChartStorage:
      type: s3
      s3:
        bucket: harbor
        existingSecret: "harbor-secret"
        regionendpoint: https://s3.seanomik.net:9000

    notary:
      enabled: false

    trivy:
      enabled: false

    database:
      type: external
      external:
        host: "postgresql.database"
        port: "5432"
        username: "k3spostgresql"
        existingSecret: "harbor-secret"
        coreDatabase: "harbor-registry"
    
    redis:
      type: external
      external:
        addr: "redis-master.database:6379"
        username: ""
        existingSecret: "harbor-secret"

    metrics:
      enabled: true

      serviceMonitor:
        enabled: true