apiVersion: score.dev/v1b1 metadata: name: gate-svc-1 containers: app: image: . variables: OTEL_SERVICE_NAME: "gate-svc-1" OTEL_EXPORTER_OTLP_ENDPOINT: "http://otel-collector.monitoring.svc.cluster.local:4318" OTEL_EXPORTER_OTLP_PROTOCOL: "http/protobuf" OTEL_RESOURCE_ATTRIBUTES: "service.name=gate-svc-1" OTEL_METRICS_EXPORTER: "otlp" OTEL_TRACES_EXPORTER: "otlp" OTEL_LOGS_EXPORTER: "none" livenessProbe: httpGet: path: /health port: 8080 readinessProbe: httpGet: path: /health port: 8080 resources: limits: memory: "128Mi" cpu: "200m" requests: memory: "32Mi" cpu: "25m" service: ports: http: port: 80 targetPort: 8080 resources: env: type: environment # Gives the workload a public HTTPS URL. Replaces a `dns` resource that named a # resource type which does not exist on this control plane -- the orchestrator # rejected the plan before creating anything. # # hostname is hardcoded to the apps domain deliberately: it is the only domain # the apps cluster serves, and both the wildcard A record (*.apps.dev) and the # cert-manager ClusterIssuer are scoped to exactly it. Introducing a template # parameter for it would imply a choice that does not exist. # # service_name is the workload name because the score-workload module names the # Service after the workload. service_port is the Score `service.ports.http.port` # above (80), NOT the container port -- an Ingress that names a Service or port # that does not exist fails at neither plan nor apply, and surfaces only as nginx # answering 503. ingress: type: workload-ingress params: name: gate-svc-1 hostname: gate-svc-1.apps.dev.crucible.kyndemo.live service_name: gate-svc-1 service_port: 80 # ----- Uncomment to add a PostgreSQL database (deployment_profile: db-only or db+cache) ----- # db: # type: postgres # ----- Uncomment to add Redis cache (deployment_profile: db+cache) ----- # cache: # type: redis