{ "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "annotations": { "informed-decision.coulomb.social/admission": "approved; INFD-WP-0007 cutover", "argocd.argoproj.io/tracking-id": "informed-decision:apps/Deployment:informed-decision/informed-decision" }, "name": "informed-decision", "namespace": "informed-decision" }, "spec": { "progressDeadlineSeconds": 600, "replicas": 1, "selector": { "matchLabels": { "app.kubernetes.io/name": "informed-decision" } }, "strategy": { "type": "Recreate" }, "template": { "metadata": { "annotations": { "informed-decision.coulomb.social/admission": "approved; INFD-WP-0007 cutover" }, "labels": { "app.kubernetes.io/component": "review", "app.kubernetes.io/name": "informed-decision" } }, "spec": { "automountServiceAccountToken": false, "containers": [ { "env": [ { "name": "INFD_KEYCAPE_ISSUER", "value": "https://kc.coulomb.social" }, { "name": "INFD_CONTAINER_CONFIG", "value": "/configuration/runtime.json" } ], "image": "forgejo.coulomb.social/coulomb/informed-decision@sha256:7f5c6cb29c9f70a026bfe30e72934274ddc69261676cf6d476f81dd32812d173", "livenessProbe": { "httpGet": { "path": "/healthz", "port": "http" }, "periodSeconds": 10, "timeoutSeconds": 2 }, "name": "informed-decision", "ports": [ { "containerPort": 8080, "name": "http" }, { "containerPort": 8081, "name": "workload" } ], "readinessProbe": { "httpGet": { "path": "/healthz", "port": "http" }, "periodSeconds": 10, "timeoutSeconds": 2 }, "resources": { "limits": { "cpu": "500m", "memory": "256Mi" }, "requests": { "cpu": "5m", "memory": "64Mi" } }, "securityContext": { "allowPrivilegeEscalation": false, "capabilities": { "drop": [ "ALL" ] }, "readOnlyRootFilesystem": true }, "startupProbe": { "failureThreshold": 12, "httpGet": { "path": "/healthz", "port": "http" }, "periodSeconds": 10, "timeoutSeconds": 2 }, "volumeMounts": [ { "mountPath": "/data", "name": "data" }, { "mountPath": "/run/informed-decision", "name": "runtime" }, { "mountPath": "/tmp", "name": "tmp" }, { "mountPath": "/configuration", "name": "configuration", "readOnly": true }, { "mountPath": "/var/run/secrets/informed-decision/policy", "name": "caller", "readOnly": true }, { "mountPath": "/var/run/secrets/informed-decision/audit", "name": "audit", "readOnly": true }, { "mountPath": "/var/run/secrets/informed-decision/kubernetes", "name": "kubernetes-api", "readOnly": true }, { "mountPath": "/workload-registry", "name": "workload-registry", "readOnly": true }, { "mountPath": "/var/run/secrets/informed-decision/requester", "name": "sitting-requester", "readOnly": true } ] } ], "securityContext": { "fsGroup": 10001, "fsGroupChangePolicy": "OnRootMismatch", "runAsGroup": 10001, "runAsNonRoot": true, "runAsUser": 10001, "seccompProfile": { "type": "RuntimeDefault" } }, "serviceAccountName": "review", "terminationGracePeriodSeconds": 45, "volumes": [ { "name": "data", "persistentVolumeClaim": { "claimName": "informed-decision-data" } }, { "emptyDir": { "medium": "Memory", "sizeLimit": "16Mi" }, "name": "runtime" }, { "emptyDir": { "medium": "Memory", "sizeLimit": "16Mi" }, "name": "tmp" }, { "configMap": { "defaultMode": 292, "name": "informed-decision-runtime-6c221878d051" }, "name": "configuration" }, { "name": "caller", "projected": { "defaultMode": 288, "sources": [ { "serviceAccountToken": { "audience": "flex-auth", "expirationSeconds": 3600, "path": "token" } } ] } }, { "name": "audit", "secret": { "defaultMode": 288, "items": [ { "key": "token", "path": "token" } ], "secretName": "informed-decision-audit" } }, { "name": "kubernetes-api", "projected": { "defaultMode": 288, "sources": [ { "serviceAccountToken": { "expirationSeconds": 600, "path": "token" } }, { "configMap": { "items": [ { "key": "ca.crt", "path": "ca.crt" } ], "name": "kube-root-ca.crt" } } ] } }, { "configMap": { "defaultMode": 292, "name": "informed-decision-workload-registry" }, "name": "workload-registry" }, { "name": "sitting-requester", "secret": { "defaultMode": 288, "items": [ { "key": "client-secret", "path": "client-secret" } ], "optional": false, "secretName": "informed-decision-sitting-requester" } } ] } } } }