# 배포별로 달라지는 설정만 담는다. # 환경과 무관한 기본값(timeout, 상한, management 포트 등)은 jar 안의 application-prod.yml이 소유하고, # 이 파일이 같은 이름으로 덮어써 identity와 bundle만 배포 시점에 결정한다. {{- include "mcp-server.validate" . }} {{- $deployment := index .Values.deployments .Values.deploymentKey }} {{- $toolServiceHost := include "mcp-server.toolServiceHost" . }} apiVersion: v1 kind: ConfigMap metadata: name: {{ include "mcp-server.name" . }}-config labels: {{- include "mcp-server.labels" . | nindent 4 }} data: application-prod.yml: | mcp: # "{배포 이름}-{global.env}"로 조립된다. 환경끼리 Redis key가 겹치지 않는다. identity: {{ include "mcp-server.identity" . }} # Agent Builder에 등록한 공개 path를 컨테이너가 그대로 처리한다. Route rewrite는 사용하지 않는다. endpoint-path: {{ $deployment.publicPath | quote }} registry: refreshIntervalSeconds: {{ .Values.mcp.refreshIntervalSeconds }} refreshJitterSeconds: {{ .Values.mcp.refreshJitterSeconds }} discovery: # 운영 profile은 Tool Service 매니페스트만 원천으로 쓴다. enabled: true # MCP 배포 하나는 Tool Service 하나만 본다(ADR-0007). # 이 목록은 항상 한 항목이며, 늘리려면 배포를 하나 더 만든다. # 주소는 여기서 조립한다. values에 URL을 적기 시작하면 오타가 라우팅 사고가 된다. bundles: - id: {{ .Values.deploymentKey | quote }} namePrefix: {{ $deployment.namePrefix | quote }} manifestUrl: http://{{ $toolServiceHost }}{{ .Values.toolService.manifestPath }} baseEndpoint: http://{{ $toolServiceHost }}{{ .Values.toolService.basePath }} enabled: true