apiVersion: v1 kind: ServiceAccount metadata: name: cluster-health-vso namespace: cluster-health automountServiceAccountToken: false --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultAuth metadata: name: default namespace: cluster-health spec: method: kubernetes mount: kubernetes kubernetes: role: cluster-health serviceAccount: cluster-health-vso vaultConnectionRef: vault/vault --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultStaticSecret metadata: name: quay-cluster-pull namespace: cluster-health spec: type: kv-v2 mount: secret path: quay/robots/cluster_pull refreshAfter: 1h destination: name: quay-cluster-pull create: true overwrite: true type: kubernetes.io/dockerconfigjson transformation: excludeRaw: true excludes: [.*] templates: .dockerconfigjson: text: >- {"auths":{"registry.quorate.internal":{"auth":"{{ printf "%s:%s" (get .Secrets "username") (get .Secrets "token") | b64enc }}"}}} vaultAuthRef: default