prole/deploy/opentofu/k3s/manifests/openbao/deployment.yaml
chrisfu b03efa8f69 Kong API gateway, docker-import preload, OpenTofu graceful fallback, milestone fix
Kong API Gateway (replacing prole nginx):
- Add etc/init_kong.sh provisioning script (DB-less mode, prole-db namespace)
- Add kong-deployment.yaml and kong-service.yaml manifests
- Rewire ingress rules (svc/git/api.prole.org) to prole-db-kong:8000
- Update kustomization.yaml to reference kong manifests

PostgREST & DB Manager in prole-db namespace:
- Add etc/init_postgrest.sh and etc/init_db_manager.sh scripts
- Add postgrest/db-manager deployment and service manifests
- Add src/db-manager/ Node.js REST endpoint for backup triggers
- Default NAMESPACE changed to prole-db in both scripts

Docker image pre-load from PROLE_DATA/docker-import:
- Add _preload_docker_images() to init_common_services.sh
- Scan for .tar files exported by final_deployment.sh
- Import via k3d image import (k3d) or ctr (k3s) before deployments
- Increase rollout timeouts to 300s (configurable via ROLLOUT_TIMEOUT) in init_openbao.sh, init_opentofu.sh, init_garage_store.sh, init_registry.sh

OpenTofu password resolution fix:
- Add Kubernetes secret fallback in resolve_admin_password()
- Change hard exit 1 to graceful return 1 with warning
- Wrap call in if-guard so set -e doesn't abort the script chain

Milestone fix (init scripts not running):
- Add init_kong.sh, init_postgrest.sh, init_db_manager.sh to InitializationScriptsMilestone.execute() script list and arg branches
- Previously only actions.py had these; milestones.py was missing them

Installer integration:
- Add Kong/PostgREST/DB Manager to silent installer _step_init_scripts
- Add corresponding tabs and execution blocks in UI services.py
2026-02-22 00:57:49 -08:00

61 lines
1.3 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: openbao
labels:
app: openbao
spec:
replicas: 1
selector:
matchLabels:
app: openbao
template:
metadata:
labels:
app: openbao
spec:
containers:
- name: openbao
image: ghcr.io/openbao/openbao:2.0.0
imagePullPolicy: IfNotPresent
args:
- "server"
- "-dev"
- "-dev-listen-address=0.0.0.0:8200"
- "-dev-root-token-id=405f3fd4ceea0f00952532333e3035b240b404e9d30e0b7f"
ports:
- name: http
containerPort: 8200
env:
- name: VAULT_DEV_ROOT_TOKEN_ID
valueFrom:
secretKeyRef:
name: openbao-root
key: token
readinessProbe:
httpGet:
path: /v1/sys/health
port: 8200
initialDelaySeconds: 3
periodSeconds: 3
---
apiVersion: v1
kind: Service
metadata:
name: openbao
spec:
selector:
app: openbao
ports:
- name: http
port: 8200
targetPort: 8200
---
apiVersion: v1
kind: Secret
metadata:
name: openbao-root
type: Opaque
data:
token: NDA1ZjNmZDRjZWVhMGYwMDk1MjUzMjMzM2UzMDM1YjI0MGI0MDRlOWQzMGUwYjdm