activity-core/k8s/railiance/15-externalsecret-forgejo-admin.yaml
tegwick b690ce03fa Retire static OpenBao ESO token bootstrap (RPF-WP-0045-T06)
The openbao-activity-core store has used OpenBao Kubernetes auth since
2026-09-21 and synced cleanly for more than 24 hours. Remove the
openbao-eso-token-apply script and Makefile target, point the manifest
comments and runbooks at the Kubernetes-auth store, and guard against
reintroducing the script.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 151606@bnt-lap001
Assistant-Session: 3c0a4ad5-bb8b-4bf7-b9f0-fa5f29204e48
2026-09-23 17:47:11 +02:00

40 lines
1.4 KiB
YAML

# Sync FORGEJO_TOKEN from OpenBao into actcore-runtime-secret.
#
# Prereqs on railiance01:
# - External Secrets Operator (namespace external-secrets)
# - ClusterSecretStore openbao-activity-core (railiance-platform addon; OpenBao
# Kubernetes auth via ServiceAccount activity-core/activity-core-eso since
# RPF-WP-0045, 2026-09-21 — no static ESO token)
# - Store role policy includes workload-kv-read-forgejo-admin
#
# OpenBao path: platform/workloads/forgejo/forgejo-admin
# property: API_TOKEN → secret key FORGEJO_TOKEN
# Catalog: warden route show forgejo-admin-api-token
#
# Merge keeps bootstrap-owned keys (ACTCORE_DB_URL, webhook secrets) and the
# ISSUE_CORE_API_KEY ExternalSecret merge intact. Retires one-shot
# `kubectl patch secret` bootstrap for the weekly package prune (WP-0023-T05).
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: actcore-forgejo-admin
namespace: activity-core
labels:
app.kubernetes.io/name: activity-core
app.kubernetes.io/part-of: activity-core
annotations:
argocd.argoproj.io/sync-wave: "0"
spec:
refreshInterval: 1h
secretStoreRef:
kind: ClusterSecretStore
name: openbao-activity-core
target:
name: actcore-runtime-secret
creationPolicy: Merge
deletionPolicy: Retain
data:
- secretKey: FORGEJO_TOKEN
remoteRef:
key: platform/workloads/forgejo/forgejo-admin
property: API_TOKEN