apiVersion: v1 kind: ServiceAccount metadata: name: minecraft-vso namespace: minecraft --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultAuth metadata: name: default namespace: minecraft spec: method: kubernetes mount: kubernetes kubernetes: role: minecraft serviceAccount: minecraft-vso vaultConnectionRef: vault/vault --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultStaticSecret metadata: name: minecraft-artifacts namespace: minecraft spec: type: kv-v2 mount: secret path: versitygw/users/minecraft refreshAfter: 1h destination: name: minecraft-artifacts create: true transformation: excludeRaw: true excludes: [.*] templates: accesskey: text: minecraft secretkey: text: '{{ get .Secrets "secretAccessKey" }}' vaultAuthRef: default --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultStaticSecret metadata: name: minecraft-ca namespace: minecraft spec: type: kv-v2 mount: secret path: ca/internal refreshAfter: 1h destination: name: minecraft-ca create: true transformation: excludeRaw: true vaultAuthRef: default --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultStaticSecret metadata: name: minecraft namespace: minecraft spec: type: kv-v2 mount: secret path: minecraft/server destination: name: minecraft create: true overwrite: true refreshAfter: 1h vaultAuthRef: default rolloutRestartTargets: - kind: Deployment name: minecraft --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultStaticSecret metadata: name: minecraft-files namespace: minecraft spec: type: kv-v2 mount: secret path: minecraft/files destination: name: minecraft-files create: true overwrite: true transformation: excludeRaw: true excludes: [.*] templates: server.properties: text: '{{ get .Secrets "server.properties" }}' refreshAfter: 1h vaultAuthRef: default --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultStaticSecret metadata: name: minecraft-rcon namespace: minecraft spec: type: kv-v2 mount: secret path: minecraft/rcon destination: name: minecraft-rcon create: true transformation: excludeRaw: true excludes: [.*] templates: password: text: '{{ get .Secrets "password" }}' refreshAfter: 1h vaultAuthRef: default rolloutRestartTargets: - kind: Deployment name: minecraft --- apiVersion: secrets.hashicorp.com/v1beta1 kind: VaultStaticSecret metadata: name: minecraft-pull namespace: minecraft spec: type: kv-v2 mount: secret path: quay/oauth/project-delivery-reader refreshAfter: 5m destination: name: minecraft-pull create: true overwrite: true type: kubernetes.io/dockerconfigjson transformation: excludeRaw: true excludes: [.*] templates: .dockerconfigjson: text: | {{- $token := get .Secrets "token" -}} {"auths":{"registry.quorate.internal":{"username":"$oauthtoken","password":"{{ $token }}","auth":"{{ printf "%s:%s" "$oauthtoken" $token | b64enc }}"}}} vaultAuthRef: default