ce7cb702218693d08ea6d83464d2457c9250027c

This commit is contained in:
ms2k 2026-11-12 20:46:28 +09:00
commit 34c5f8963c

160
vendor/workloads/grafana/vso.yaml vendored Normal file
View file

@ -0,0 +1,160 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: grafana-vso
namespace: grafana
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultAuth
metadata:
name: default
namespace: grafana
spec:
method: kubernetes
mount: kubernetes
kubernetes:
role: grafana
serviceAccount: grafana-vso
vaultConnectionRef: vault/vault
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultStaticSecret
metadata:
name: grafana-oidc-zitadel
namespace: grafana
spec:
type: kv-v2
mount: secret
path: grafana/oidc/zitadel
destination:
name: grafana-oidc-zitadel
create: true
refreshAfter: 1h
vaultAuthRef: default
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultDynamicSecret
metadata:
name: grafana-db
namespace: grafana
spec:
mount: database
path: static-creds/grafana
allowStaticCreds: true
refreshAfter: 5m
destination:
name: grafana-db
create: true
vaultAuthRef: default
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultStaticSecret
metadata:
name: grafana-s3
namespace: grafana
spec:
type: kv-v2
mount: secret
path: versitygw/users/grafana
destination:
name: grafana-s3
create: true
refreshAfter: 1h
vaultAuthRef: default
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultStaticSecret
metadata:
name: grafana-rcon
namespace: grafana
spec:
type: kv-v2
mount: secret
path: minecraft/rcon
destination:
name: grafana-rcon
create: true
transformation:
excludeRaw: true
excludes: [.*]
templates:
password:
text: '{{ get .Secrets "password" }}'
refreshAfter: 1h
vaultAuthRef: default
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultDynamicSecret
metadata:
name: grafana-ca
namespace: grafana
spec:
mount: pki
path: cert/ca
requestHTTPMethod: GET
destination:
name: grafana-ca
create: true
transformation:
excludeRaw: true
excludes: [.*]
templates:
ca.crt:
text: '{{ get .Secrets "certificate" }}'
refreshAfter: 1h
vaultAuthRef: default
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultStaticSecret
metadata:
name: grafana-pull
namespace: grafana
spec:
type: kv-v2
mount: secret
path: quay/oauth/project-delivery-reader
refreshAfter: 5m
destination:
name: grafana-pull
create: 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
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultStaticSecret
metadata:
name: grafana-vmauth-metrics-token
namespace: grafana
spec:
type: kv-v2
mount: secret
path: victoriametrics/vmauth/query
destination:
name: grafana-vmauth-metrics-token
create: true
refreshAfter: 1h
vaultAuthRef: default
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultStaticSecret
metadata:
name: grafana-vmauth-logs-token
namespace: grafana
spec:
type: kv-v2
mount: secret
path: victorialogs/vmauth/query
destination:
name: grafana-vmauth-logs-token
create: true
refreshAfter: 1h
vaultAuthRef: default