Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions platform/scaleway/external-secrets-store.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: external-secrets-store
namespace: argocd
annotations:
# Wave 1: applied after the operator + CRDs (external-secrets, wave 0) so the
# ClusterSecretStore CRD it relies on already exists.
argocd.argoproj.io/sync-wave: "1"
spec:
project: default

source:
repoURL: https://github.com/IntegratedDynamic/gitops.git
targetRevision: main
path: platform/scaleway/external-secrets-store

destination:
server: https://kubernetes.default.svc
namespace: external-secrets

syncPolicy:
automated:
prune: true
selfHeal: true
26 changes: 26 additions & 0 deletions platform/scaleway/external-secrets-store/cluster-secret-store.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Cluster-wide store: any namespace's ExternalSecret can pull from Infisical
# through this. Auth is the universal-auth credential seeded out-of-band by
# Terraform (02-cluster/scaleway/external-secrets.tf) into the secret below —
# the one secret ESO can't source from itself.
apiVersion: external-secrets.io/v1
kind: ClusterSecretStore
metadata:
name: infisical
spec:
provider:
infisical:
hostAPI: https://app.infisical.com
auth:
universalAuthCredentials:
clientId:
name: infisical-universal-auth
namespace: external-secrets
key: clientId
clientSecret:
name: infisical-universal-auth
namespace: external-secrets
key: clientSecret
secretsScope:
projectSlug: platform-p-qc1
environmentSlug: staging
secretsPath: /
30 changes: 30 additions & 0 deletions platform/scaleway/external-secrets.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: external-secrets
namespace: argocd
annotations:
# Wave 0: the operator + CRDs must exist before the ClusterSecretStore
# (external-secrets-store, wave 1) that references those CRDs.
argocd.argoproj.io/sync-wave: "0"
spec:
project: default

source:
repoURL: https://charts.external-secrets.io
chart: external-secrets
targetRevision: 2.6.0
helm:
values: |
installCRDs: true

destination:
server: https://kubernetes.default.svc
namespace: external-secrets

syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true