target-revenue/k8s/railiance/bootstrap-job.yaml
tegwick 9e4e84f9ee WP-0011: deploy scaffolding for revenue.coulomb.social
Record T01 package (in-repo k8s/railiance, combined /ui + API app,
dedicated CNPG). Add Dockerfile, healthz, migration/bootstrap scripts,
kustomize manifests, ArgoCD Application (in railiance-platform), and
docs/deployment.md. T05 left open for operator DNS/OpenBao/image push.
2026-08-05 16:41:00 +02:00

54 lines
1.6 KiB
YAML

# Idempotent founding binky admin credential (WP-0011-T01/T05).
# Safe to re-run: no-op when a binky credential already exists.
# Capture TOKEN= from job logs once on first bootstrap; store in a password
# manager — never commit.
apiVersion: batch/v1
kind: Job
metadata:
name: target-revenue-bootstrap-binky
namespace: target-revenue
labels:
app.kubernetes.io/name: target-revenue
app.kubernetes.io/component: bootstrap
annotations:
argocd.argoproj.io/sync-wave: "2"
argocd.argoproj.io/hook: Sync
argocd.argoproj.io/hook-delete-policy: BeforeHookCreation
spec:
ttlSecondsAfterFinished: 86400
backoffLimit: 2
template:
metadata:
labels:
app.kubernetes.io/name: target-revenue
app.kubernetes.io/component: bootstrap
spec:
restartPolicy: OnFailure
securityContext:
runAsNonRoot: true
runAsUser: 10001
fsGroup: 10001
containers:
- name: bootstrap
image: forgejo.coulomb.social/coulomb/target-revenue:0.1.0
imagePullPolicy: IfNotPresent
env:
- name: TRF_BOOTSTRAP_BINKY
value: "1"
- name: TRF_DATABASE_URL
valueFrom:
secretKeyRef:
name: target-revenue-runtime
key: TRF_MIGRATE_DATABASE_URL
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: ["ALL"]
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 500m
memory: 256Mi