Add ArgoCD GitOps bootstrap contract for railiance01

Define platform-owned AppProjects, root app-of-apps, repository registration
templates, and tenant onboarding docs so issue-core can deploy via ArgoCD.
Ignore encrypted repository secrets locally and cross-link OpenBao delivery
guidance with the new GitOps contract.
This commit is contained in:
tegwick 2026-06-19 21:05:12 +02:00
parent cb45f29fb2
commit 64d7c18c3f
13 changed files with 655 additions and 1 deletions

View file

@ -0,0 +1,23 @@
# ArgoCD Repository Registration
ArgoCD discovers Git repositories from Kubernetes Secrets in the `argocd`
namespace with `argocd.argoproj.io/secret-type: repository`.
Use the templates in this directory to create SOPS-encrypted, non-plaintext
repository Secret files. Credentials must be sourced from the approved
operator/OpenBao path and must never be committed in plaintext.
Recommended OpenBao path:
```text
platform/operators/argocd/repositories/<repo-name>
```
After creating an encrypted file such as
`argocd/repositories/railiance-platform.repository.sops.yaml`, apply it with:
```bash
ARGOCD_REPOSITORY_SECRET=argocd/repositories/railiance-platform.repository.sops.yaml \
make argocd-repo-apply
```

View file

@ -0,0 +1,21 @@
# Copy to issue-core.repository.sops.yaml, fill from the approved
# operator/OpenBao path, then encrypt with:
# sops -e -i argocd/repositories/issue-core.repository.sops.yaml
#
# Do not commit plaintext credentials.
apiVersion: v1
kind: Secret
metadata:
name: issue-core-repository
namespace: argocd
labels:
argocd.argoproj.io/secret-type: repository
app.kubernetes.io/part-of: railiance-gitops
railiance-platform/component: gitops
stringData:
type: git
project: railiance-tenants
url: https://gitea.coulomb.social/coulomb/issue-core.git
username: CHANGE_ME
password: CHANGE_ME

View file

@ -0,0 +1,21 @@
# Copy to railiance-platform.repository.sops.yaml, fill from the approved
# operator/OpenBao path, then encrypt with:
# sops -e -i argocd/repositories/railiance-platform.repository.sops.yaml
#
# Do not commit plaintext credentials.
apiVersion: v1
kind: Secret
metadata:
name: railiance-platform-repository
namespace: argocd
labels:
argocd.argoproj.io/secret-type: repository
app.kubernetes.io/part-of: railiance-gitops
railiance-platform/component: gitops
stringData:
type: git
project: railiance-bootstrap
url: https://gitea.coulomb.social/coulomb/railiance-platform.git
username: CHANGE_ME
password: CHANGE_ME