apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

transformers:
  - |-
    apiVersion: builtin
    kind: NamespaceTransformer
    metadata:
      name: notImportantHere
      namespace: core
    unsetOnly: true

namePrefix: pgdump-
resources:
  - ../../../kustomize/backups/

labels:
  - includeSelectors: true
    pairs:
      app.kubernetes.io/appName: pgdump
  - pairs:
      app.kubernetes.io/appNamespace: core

configMapGenerator:
  - name: config
    literals:
      - HEALTHCHECK_BASE_URL="https://healthchecks.leechpepin.com"
      - HEALTHCHECK_ID="ping/7iBSS9akyokIWq-sbfEjHQ/pgdump"
      - ROTATE_PREFIX="pgdump"
      - BACKUP_COMMAND="pg_dumpall -U postgres -h postgres-svc.core -p 5432"

patches:
  - path: patches/batch.yaml
    target:
      kind: CronJob
      name: backup

replacements:
  - source:
      kind: CronJob
      name: backup
      fieldPath: metadata.labels.[app.kubernetes.io/appName]
    targets:
      - select:
          kind: CronJob
          name: backup
        options:
          delimiter: "-"
          index: 0
        fieldPaths:
          - spec.jobTemplate.spec.template.spec.containers.0.envFrom.0.configMapRef.name