apiVersion: apps/v1 kind: Deployment metadata: name: blog-openapi-agent namespace: agents labels: app: blog-openapi-agent a2a/managed-by: control-plane spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: blog-openapi-agent template: metadata: labels: app: blog-openapi-agent spec: containers: - name: agent image: registry.a2acloud.io/agents/blog-openapi-agent:latest imagePullPolicy: Always env: - name: A2A_AGENT_IMAGE value: registry.a2acloud.io/agents/blog-openapi-agent:latest - name: A2A_RENDER_IMAGE value: registry.a2acloud.io/agents/blog-openapi-agent:latest - name: A2A_CP_URL value: "http://control-plane.control-plane.svc.cluster.local" - name: A2A_LOGIN_URL value: "https://app.a2acloud.io" - name: A2A_SESSION_COOKIE_NAME value: "a2a_session" - name: A2A_GRANT_VERIFYING_KEY valueFrom: secretKeyRef: {name: platform-secrets, key: grant_verifying_key} - name: A2A_SANDBOX_URL value: http://sandbox.sandbox.svc.cluster.local:8000 - name: A2A_SANDBOX_TIMEOUT_S value: "180" envFrom: - secretRef: name: blog-openapi-agent-agent-secrets optional: true ports: - containerPort: 8000 name: http readinessProbe: httpGet: {path: /healthz, port: 8000} initialDelaySeconds: 2 periodSeconds: 5 timeoutSeconds: 3 failureThreshold: 6 livenessProbe: httpGet: {path: /healthz, port: 8000} initialDelaySeconds: 10 periodSeconds: 15 timeoutSeconds: 3 failureThreshold: 6 resources: requests: {cpu: "200m", memory: "512Mi"} limits: {cpu: "200m", memory: "512Mi"} --- apiVersion: v1 kind: Service metadata: name: blog-openapi-agent namespace: agents spec: type: ClusterIP selector: app: blog-openapi-agent ports: - name: http port: 80 targetPort: 8000 --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: blog-openapi-agent namespace: agents annotations: cert-manager.io/cluster-issuer: letsencrypt-prod traefik.ingress.kubernetes.io/router.entrypoints: web,websecure spec: tls: - hosts: [blog-openapi-agent.a2acloud.io] secretName: blog-openapi-agent-a2acloud-io-tls rules: - host: blog-openapi-agent.a2acloud.io http: paths: - path: / pathType: Prefix backend: service: name: blog-openapi-agent port: number: 80