Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions charts/digma-ng/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,13 @@ Return the proper jaeger fullname
{{- printf "%s-jaeger" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }}
{{- end -}}

{{/*
Return the proper mcp-server fullname
*/}}
{{- define "digma.mcp-server" -}}
{{- printf "%s-mcp-server" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }}
{{- end -}}

{{/*
Return the proper jaeger-ui fullname
*/}}
Expand Down
2 changes: 1 addition & 1 deletion charts/digma-ng/templates/analytics/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ spec:
- name: Analytics.Endpoints__Default__Secured
value: {{ include "digma.analytics-api.secured" . | quote}}
- name: CollectorUrl
value: http://{{(include "digma.collector-api" $)}}:{{ .Values.collectorApi.service.ports.internal }}
value: http://{{(include "digma.collector-api" $)}}:{{ .Values.collectorApi.service.ports.internal }}
{{- if .Values.digma.accessToken }}
- name: AccessToken
value: {{ .Values.digma.accessToken | quote }}
Expand Down
58 changes: 58 additions & 0 deletions charts/digma-ng/templates/mcp-server/deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
kind: Deployment
metadata:
name: {{ include "digma.mcp-server" . }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: mcp-server
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.mcpServer.podLabels .Values.commonLabels ) "context" . ) }}
replicas: {{ include "replicas.value" (dict "value" .Values.mcpServer.replicas "context" .) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: mcp-server
template:
metadata:
labels:
{{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }}
app.kubernetes.io/component: mcp-server
annotations:
{{- if .Values.commonAnnotations }}
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 8 }}
{{- end }}
{{- if .Values.mcpServer.podAnnotations }}
{{- include "common.tplvalues.render" (dict "value" .Values.mcpServer.podAnnotations "context" .) | nindent 8 }}
{{- end }}
spec:
{{- include "common.images.pullSecrets" ( dict "images" (list .Values.mcpServer.image) "global" .Values.global) | nindent 6 }}
{{- if .Values.mcpServer.affinity }}
affinity: {{- include "common.tplvalues.render" ( dict "value" .Values.mcpServer.affinity "context" $) | nindent 8 }}
{{- end }}
{{- if .Values.mcpServer.nodeSelector }}
nodeSelector: {{- include "common.tplvalues.render" ( dict "value" .Values.mcpServer.nodeSelector "context" .) | nindent 8 }}
{{- end }}
{{- $mergedTolerations := (concat .Values.global.tolerations .Values.mcpServer.tolerations) -}}
{{- if $mergedTolerations }}
tolerations:
{{- toYaml $mergedTolerations | nindent 6 -}}
{{- end }}
containers:
- name: mcp-server
image: {{ include "common.images.image" (dict "imageRoot" .Values.mcpServer.image "global" .Values.global) }}
imagePullPolicy: {{ .Values.mcpServer.image.pullPolicy }}
ports:
- name: http
containerPort: {{ .Values.mcpServer.service.ports.http }}
resources:
{{- toYaml .Values.mcpServer.resources | nindent 12 }}
env:
- name: Auth__Token
value: {{ .Values.digma.accessToken | quote }}
- name: Auth__UserName
value: {{ .Values.digma.auth.email | quote }}
- name: Auth__Password
value: {{ .Values.digma.auth.password | quote }}
- name: Digma__AnalyticsApi
value: http://{{(include "digma.analytics-api" $)}}:{{ .Values.analyticsApi.service.ports.http }}
19 changes: 19 additions & 0 deletions charts/digma-ng/templates/mcp-server/service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "digma.mcp-server" . }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: mcp-server
{{- if or .Values.mcpServer.service.annotations .Values.commonAnnotations }}
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.mcpServer.service.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }}
spec:
type: {{ .Values.mcpServer.service.type }}
ports:
- name: http
protocol: TCP
port: {{ .Values.mcpServer.service.ports.http }}
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.mcpServer.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: mcp-server
44 changes: 43 additions & 1 deletion charts/digma-ng/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2478,4 +2478,46 @@ clickhouse:
zookeeper:
enabled: false
metrics:
enabled: true
enabled: true
mcpServer:
enabled: true
image:
registry: docker.io
repository: digmatic/digma-sse-server
tag: latest
pullPolicy: IfNotPresent
replicas: 1
resources:
requests:
memory: 512Mi
cpu: 0.5
limits:
memory: 1024Mi
cpu: 1.0
service:
type: ClusterIP
ports:
http: 5194
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
# -- Extra labels for pods
podLabels: {}
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
# -- Extra annotations for pods
podAnnotations: {}
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
# -- Node labels for pods assignment
nodeSelector: {}
## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
# -- Tolerations for pods assignment
tolerations: []
## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
## NOTE: `controller.podAffinityPreset`, `controller.podAntiAffinityPreset`, and `controller.nodeAffinityPreset` will be ignored when it's set
# -- Affinity for pods assignment
affinity: {}
## e.g:
## extraEnvVars:
## - name: DEBUG
## value: "true"
# -- Array with extra environment variables to add
extraEnvVars: []
env: []