# 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