nxtgauge-gitops/apps/ai-guard/base/deployment.yaml
sync-test d52b911aba
All checks were successful
sync-to-forgejo / sync (push) Successful in 16s
chore(ai-guard): scale to 0 — Phase 0 stabilization per AI architecture doc
ai-guard has been in ImagePullBackOff for 14+ days: no Dockerfile exists
in its source repo so no image was ever successfully built by CI, it
has no Kubernetes Service (unreachable even if the pod were healthy),
and its own dependencies (llm-guard, presidio) were never deployed.
Nothing currently routes through it anyway — both AI consumers call
LiteLLM directly. Scaling to 0 stops the wasted pull-retry churn until
it's properly rebuilt (Phase 3 of the target architecture).
2026-07-21 06:20:44 +05:30

71 lines
2.3 KiB
YAML

# Scaled to 0 (Phase 0 of the AI architecture doc — "Stabilize the Existing
# Environment"): ai-guard has no Dockerfile in its source repo, so no image
# has ever been successfully built by its CI. The pod has been in
# ImagePullBackOff for 14+ days (90,000+ failed pulls) pulling an image that
# doesn't exist. It also has no Service (unreachable even if healthy) and
# depends on llm-guard/presidio, neither of which are deployed. Nothing
# currently routes through it — both AI consumers (nxtgauge-ai-assistant,
# nxtgauge-backend-rust) call LiteLLM directly. Scaling to 0 stops the
# wasted kubelet pull-retry churn until Phase 3 (Rebuild ai-guard) is done
# properly, per the architecture doc.
apiVersion: apps/v1
kind: Deployment
metadata:
name: ai-guard
namespace: nxtgauge-ai
labels:
app: ai-guard
spec:
replicas: 0
selector:
matchLabels:
app: ai-guard
template:
metadata:
labels:
app: ai-guard
spec:
containers:
- name: ai-guard
image: registry.nxtgauge.com/ai-guard:latest
imagePullPolicy: Always
ports:
- containerPort: 8080
name: http
env:
- name: RUST_LOG
value: "info"
- name: PORT
value: "8080"
- name: OLLAMA_BASE_URL
value: "http://ollama.nxtgauge-ai.svc.cluster.local:11434"
- name: OLLAMA_CHAT_MODEL
value: "gemma3:270m"
- name: LLM_GUARD_URL
value: "http://llm-guard.nxtgauge-ai.svc.cluster.local:8000"
- name: PRESIDIO_URL
value: "http://presidio.nxtgauge-ai.svc.cluster.local:3000"
- name: AI_SERVICE_KEY
valueFrom:
secretKeyRef:
name: ai-guard-secrets
key: ai-service-key
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 1000m
memory: 512Mi
livenessProbe:
httpGet:
path: /health
port: 8080
initialDelaySeconds: 10
periodSeconds: 20
readinessProbe:
httpGet:
path: /health
port: 8080
initialDelaySeconds: 5
periodSeconds: 10