apiVersion: v1
kind: Namespace
metadata:
  name: tp21
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: demo
  namespace: tp21
  labels: { app: demo }
spec:
  replicas: 2
  selector:
    matchLabels: { app: demo }
  template:
    metadata:
      labels: { app: demo }
    spec:
      containers:
        - name: demo
          image: TODO-registre/observability-demo:1.0.0
          ports:
            - { name: http, containerPort: 3000 }
          env:
            - { name: ERROR_RATE, value: "0.05" }
            - { name: OTEL_SERVICE_NAME, value: observability-demo }
            # Tempo reçoit l'OTLP HTTP sur le port 4318
            - { name: OTEL_EXPORTER_OTLP_ENDPOINT, value: "http://tempo.monitoring.svc:4318" }
          readinessProbe:
            httpGet: { path: /health, port: http }
          resources:
            requests: { cpu: 50m, memory: 64Mi }
            limits: { memory: 128Mi }
---
apiVersion: v1
kind: Service
metadata:
  name: demo
  namespace: tp21
  labels: { app: demo }
spec:
  selector: { app: demo }
  ports:
    - { name: http, port: 80, targetPort: http }
