- Build/push image: the-seas.local.mk-labs.cloud/library/maelstrom-ui:v0.3.17-1 (upstream volcengine/openviking web-studio/, pinned to commit 3cd1d4e9) - Deployment + Service serving the static SPA via nginx (reverse-proxies /api, /health, /ready to openviking backend; /bot deliberately NOT proxied) - Ingress at maelstrom.local.mk-labs.cloud (TLS via letsencrypt-internal) - ExternalSecret wiring scoped maelstrom-ui-key from op://mk-labs/openviking/maelstrom-ui-key into the pod env (MAELSTROM_UI_KEY) Per approved plan: inbox/ryan/2026-08-14-maelstrom-ui-deployment-plan.md Key mint + approval: system/inbox/agents/nick-fury/2026-08-14-maelstrom-ui-key-mint-complete.md Ryan approval: inbox/ryan/2026-08-14-maelstrom-key-approval.md
38 lines
888 B
YAML
38 lines
888 B
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: maelstrom-ui
|
|
namespace: openviking
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels: { app: maelstrom-ui }
|
|
template:
|
|
metadata:
|
|
labels: { app: maelstrom-ui }
|
|
spec:
|
|
containers:
|
|
- name: maelstrom-ui
|
|
image: the-seas.local.mk-labs.cloud/library/maelstrom-ui:v0.3.17-1
|
|
ports: [{ containerPort: 80 }]
|
|
env:
|
|
- name: MAELSTROM_UI_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: maelstrom-ui-credentials
|
|
key: maelstrom_ui_key
|
|
resources:
|
|
requests: { cpu: 50m, memory: 64Mi }
|
|
limits: { cpu: 200m, memory: 128Mi }
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: maelstrom-ui
|
|
namespace: openviking
|
|
spec:
|
|
selector: { app: maelstrom-ui }
|
|
ports:
|
|
- port: 80
|
|
targetPort: 80
|