Files
schemas/k8s/deploy.yaml
T
argoyleandClaude Opus 5.5 2aa64246f1
schemas / check (pull_request) Successful in 1m1s
schemas / vulnerabilities (pull_request) Successful in 42s
schemas / check-release (pull_request) Successful in 1m8s
pre-commit / pre-commit (pull_request) Successful in 1m36s
schemas / build (pull_request) Successful in 1m42s
schemas / deploy-prod-frostmoln (pull_request) Skipped
chore(k8s): send OTLP straight to the Frostmoln Alloy receiver
The AWS-era endpoint (k8s-monitoring-alloy*.monitoring) only resolves through an ExternalName alias the Frostmoln observability agent keeps for the migration; point at alloy-logs.observability directly so the alias can go.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H6eVuR4Yt3m7TbDTDwyZJi
2026-10-17 11:08:05 +02:00

104 lines
2.4 KiB
YAML

apiVersion: v1
kind: ServiceAccount
metadata:
name: schemas
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/name: schemas
name: schemas
annotations:
kubernetes.io/change-cause: "${TIMESTAMP} Deployed commit id: ${COMMIT}"
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: schemas
strategy:
rollingUpdate:
maxSurge: 1
maxUnavailable: 1
type: RollingUpdate
template:
metadata:
labels:
app.kubernetes.io/name: schemas
spec:
securityContext:
runAsNonRoot: true
runAsUser: 1000
seccompProfile:
type: RuntimeDefault
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: "app.kubernetes.io/name"
operator: In
values:
- schemas
topologyKey: kubernetes.io/hostname
containers:
- name: schemas
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop: ["ALL"]
resources:
requests:
cpu: "100m"
memory: "128Mi"
limits:
memory: "768Mi"
livenessProbe:
httpGet:
path: /health/live
port: 8080
initialDelaySeconds: 10
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 3
readinessProbe:
httpGet:
path: /health/ready
port: 8080
initialDelaySeconds: 5
periodSeconds: 5
timeoutSeconds: 5
failureThreshold: 3
imagePullPolicy: IfNotPresent
image: ${IMAGE}
ports:
- name: api
containerPort: 8080
env:
- name: OTEL_EXPORTER_OTLP_ENDPOINT
value: http://alloy-logs.observability.svc.cluster.local:4318
envFrom:
- configMapRef:
name: schemas
- secretRef:
name: schemas
restartPolicy: Always
serviceAccountName: schemas
---
apiVersion: v1
kind: Service
metadata:
name: schemas
spec:
ports:
- port: 80
name: api
protocol: TCP
targetPort: 8080
selector:
app.kubernetes.io/name: schemas
type: NodePort