new file: infrastructure/cert-manager/external-secret.yaml
new file: infrastructure/external-secrets-app.yaml new file: infrastructure/external-secrets-config-app.yaml new file: infrastructure/external-secrets/cluster-secret-store.yaml
This commit is contained in:
18
infrastructure/cert-manager/external-secret.yaml
Normal file
18
infrastructure/cert-manager/external-secret.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
apiVersion: external-secrets.io/v1beta1
|
||||
kind: ExternalSecret
|
||||
metadata:
|
||||
name: cloudflare-api-token-secret
|
||||
namespace: cert-manager # Hier braucht es Cert-Manager
|
||||
spec:
|
||||
refreshInterval: "1h"
|
||||
secretStoreRef:
|
||||
name: vault-backend
|
||||
kind: ClusterSecretStore
|
||||
target:
|
||||
name: cloudflare-api-token-secret # Name des K8s Secrets
|
||||
creationPolicy: Owner
|
||||
data:
|
||||
- secretKey: api-token # Key im K8s Secret
|
||||
remoteRef:
|
||||
key: secret/infrastructure/opnsense # Pfad im Vault
|
||||
property: dns_api_token # Key im Vault
|
||||
25
infrastructure/external-secrets-app.yaml
Normal file
25
infrastructure/external-secrets-app.yaml
Normal file
@@ -0,0 +1,25 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: external-secrets
|
||||
namespace: argocd
|
||||
annotations:
|
||||
argocd.argoproj.io/sync-wave: "-2" # Muss VOR Cert-Manager und Apps da sein
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://charts.external-secrets.io
|
||||
chart: external-secrets
|
||||
targetRevision: 0.9.11
|
||||
helm:
|
||||
values: |
|
||||
installCRDs: true
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: external-secrets
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
18
infrastructure/external-secrets-config-app.yaml
Normal file
18
infrastructure/external-secrets-config-app.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: external-secrets-config
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://git.cloud-infra.prod.openmailserver.de/stabify/gitops.git
|
||||
targetRevision: HEAD
|
||||
path: infrastructure/external-secrets
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: external-secrets
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
17
infrastructure/external-secrets/cluster-secret-store.yaml
Normal file
17
infrastructure/external-secrets/cluster-secret-store.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
apiVersion: external-secrets.io/v1beta1
|
||||
kind: ClusterSecretStore
|
||||
metadata:
|
||||
name: vault-backend
|
||||
spec:
|
||||
provider:
|
||||
vault:
|
||||
server: "http://10.100.30.11:8200" # Interne IP vom Docker Host
|
||||
path: "secret"
|
||||
version: "v2"
|
||||
auth:
|
||||
kubernetes:
|
||||
mountPath: "kubernetes"
|
||||
role: "external-secrets-role"
|
||||
serviceAccountRef:
|
||||
name: external-secrets
|
||||
namespace: external-secrets
|
||||
Reference in New Issue
Block a user