Add AppRole-backed Qonto secret store
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 0s

This commit is contained in:
codex 2026-07-27 03:14:07 +02:00
parent 09c6e41caa
commit 32ccc83076
2 changed files with 34 additions and 36 deletions

View file

@ -1,36 +0,0 @@
# DRAFT -- proposed alongside CCR-2026-0009 (status: proposed, not yet
# approved). Do not apply until CCR-2026-0009 is approved and the underlying
# OpenBao policy + Kubernetes auth role exist.
#
# Mirrors openbao-activity-core.clustersecretstore.yaml's interim pattern:
# reads from coulombcore OpenBao (https://bao.coulomb.social) via a
# policy-limited token until railiance01 OpenBao is bootstrapped and a real
# Kubernetes auth role (external-secrets-qonto-assistant, CCR-2026-0009) is
# live. Scoped to the tenants mount (matches CCR-2026-0008's mount, not
# CCR-2026-0003's platform mount) and restricted to the qonto-assistant
# namespace only via `conditions`.
#
# Prereq: Secret external-secrets/openbao-qonto-assistant-eso-token (key:
# token) with a policy-limited OpenBao token that can read
# tenants/binky/qonto-api (API_KEY, API_USER) -- see CCR-2026-0009.
apiVersion: external-secrets.io/v1beta1
kind: ClusterSecretStore
metadata:
name: openbao-qonto-assistant
labels:
app.kubernetes.io/part-of: railiance-gitops
railiance-platform/component: external-secrets
spec:
provider:
vault:
server: https://bao.coulomb.social
path: tenants
version: v2
auth:
tokenSecretRef:
name: openbao-qonto-assistant-eso-token
namespace: external-secrets
key: token
conditions:
- namespaces:
- qonto-assistant

View file

@ -0,0 +1,34 @@
# Transitional cross-cluster bridge: the credential remains in Coulombcore
# OpenBao while rapp-qonto runs on railiance01. ESO uses a dedicated AppRole
# to mint short-lived tokens; replace this with same-cluster Kubernetes auth
# when secret custody and workload placement are unified.
#
# Prerequisite: Secret external-secrets/openbao-rapp-qonto-approle with keys
# role-id and secret-id, delivered by the approved ops-mason construction plan.
apiVersion: external-secrets.io/v1
kind: ClusterSecretStore
metadata:
name: openbao-rapp-qonto
labels:
app.kubernetes.io/part-of: railiance-gitops
railiance-platform/component: external-secrets
spec:
provider:
vault:
server: https://bao.coulomb.social
path: tenants
version: v2
auth:
appRole:
path: approle
roleRef:
name: openbao-rapp-qonto-approle
namespace: external-secrets
key: role-id
secretRef:
name: openbao-rapp-qonto-approle
namespace: external-secrets
key: secret-id
conditions:
- namespaces:
- rapp-qonto