69 lines
1.4 KiB
YAML
69 lines
1.4 KiB
YAML
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: ca-sync
|
|
namespace: vault
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: ca-sync-vso
|
|
namespace: vault
|
|
---
|
|
apiVersion: secrets.hashicorp.com/v1beta1
|
|
kind: VaultAuth
|
|
metadata:
|
|
name: ca-sync
|
|
namespace: vault
|
|
spec:
|
|
method: kubernetes
|
|
mount: kubernetes
|
|
kubernetes:
|
|
role: ca-sync-pull
|
|
serviceAccount: ca-sync-vso
|
|
vaultConnectionRef: vault/vault
|
|
---
|
|
apiVersion: secrets.hashicorp.com/v1beta1
|
|
kind: VaultStaticSecret
|
|
metadata:
|
|
name: ca-sync-pull
|
|
namespace: vault
|
|
spec:
|
|
type: kv-v2
|
|
mount: secret
|
|
path: quay/robots/cluster_pull
|
|
refreshAfter: 1h
|
|
vaultAuthRef: ca-sync
|
|
destination:
|
|
name: ca-sync-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 }}"}}}'
|
|
---
|
|
apiVersion: secrets.hashicorp.com/v1beta1
|
|
kind: VaultDynamicSecret
|
|
metadata:
|
|
name: ca-sync-root
|
|
namespace: vault
|
|
spec:
|
|
vaultAuthRef: ca-sync
|
|
mount: pki
|
|
path: cert/ca
|
|
requestHTTPMethod: GET
|
|
refreshAfter: 1h
|
|
destination:
|
|
create: true
|
|
overwrite: true
|
|
name: ca-sync-root
|
|
transformation:
|
|
excludeRaw: true
|
|
excludes: [.*]
|
|
templates:
|
|
ca.crt:
|
|
text: '{{ get .Secrets "certificate" }}'
|