Loading kubernetes/helm/openslice/files/org.etsi.osl.tmf.web/src/assets/config/config.prod.default.json +1 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ "BUGZILLA": "{BASEURL}/bugzilla/", "STATUS": "{BASEURL}/healthstatus/", "WEBURL": "{BASEURL}", "ASSISTANT_URL": "{BASEURL}/ask", "PORTAL_REPO_APIURL": "{BASEURL}/osapi", "ASSURANCE_SERVICE_MGMT_APIURL": "{BASEURL}/oas-api", "APITMFURL": "{BASEURL}/tmf-api", Loading kubernetes/helm/openslice/templates/mcp-backend.yaml 0 → 100644 +108 −0 Original line number Diff line number Diff line {{- if .Values.mcpbackend.enabled }} apiVersion: apps/v1 kind: Deployment metadata: namespace: {{ .Release.Namespace }} labels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" {{- include "openslice.labels" . | nindent 4 }} name: {{ include "openslice.fullname" . }}-mcpbackend spec: replicas: {{ .Values.replicaCount }} selector: matchLabels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend {{- include "openslice.selectorLabels" . | nindent 6 }} template: metadata: labels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend {{- include "openslice.selectorLabels" . | nindent 8 }} spec: containers: - name: {{ include "openslice.fullname" . }}-mcpbackend image: "{{ .Values.image.mcpbackend.repository }}:{{ .Values.image.mcpbackend.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.mcpbackend.pullPolicy | default "Always" }} env: - name: SPRING_APPLICATION_JSON value: >- { "origins":"{{ .Values.rooturl }}", "spring.config.import": "configtree:/etc/config/", "server.forward-headers-strategy":"FRAMEWORK" } - name: SERVER_PORT value: "11880" - name: SPRING_APPLICATION_NAME value: "osl-mcp-backend" - name: SPRING_AI_OLLAMA_BASE_URL value: "{{ .Values.mcpbackend.spring.ai.ollama.apiUrl }}" - name: SPRING_AI_OLLAMA_CHAT_MODEL value: "{{ .Values.mcpbackend.spring.ai.ollama.model }}" - name: SPRING_AI_OLLAMA_CHAT_TEMPERATURE value: "{{ .Values.mcpbackend.spring.ai.ollama.temperature }}" - name: SPRING_AI_CHAT_SYSTEM_PROMPT value: "{{ .Values.mcpbackend.spring.ai.chat.systemPrompt }}" - name: SPRING_AI_CHAT_MAX_MESSAGES value: "{{ .Values.mcpbackend.spring.ai.chat.maxMessages }}" - name: SPRING_AI_MCP_CLIENT_TYPE value: "SYNC" - name: SPRING_AI_MCP_CLIENT_STREAMABLE_HTTP_CONNECTIONS_OPENSLICE_SERVER_URL value: "http://{{ include "openslice.fullname" . }}-mcpserver:13015/sse" - name: SPRING_SECURITY_OAUTH2_RESOURCESERVER_JWT_ISSUER_URI value: "{{ .Values.rooturl }}/auth/realms/openslice" - name: SPRING_SECURITY_OAUTH2_CLIENT_PROVIDER_KEYCLOAK_ISSUER_URI value: "{{ .Values.rooturl }}/auth/realms/openslice" - name: SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_KEYCLOAK_CLIENT_ID value: "osapiWebClientId" - name: SPRING_ACTIVEMQ_BROKER_URL value: "tcp://{{ include "openslice.fullname" . }}-artemis:61616?jms.watchTopicAdvisories=false" - name: LOGGING_LEVEL_ROOT value: "{{ .Values.mcpbackend.logLevelRoot | default "INFO" }}" - name: LOGGING_LEVEL_OSL value: "{{ .Values.mcpbackend.logLevelOSL | default "INFO" }}" - name: LOGGING_LEVEL_SPRING_AI value: "{{ .Values.mcpbackend.spring.logLevel | default "INFO" }}" ports: - containerPort: 11880 resources: {{- toYaml .Values.resources | nindent 12 }} volumeMounts: - mountPath: "/etc/config/spring.activemq.user" name: artemis-secrets subPath: username readOnly: true - mountPath: "/etc/config/spring.activemq.password" name: artemis-secrets subPath: password readOnly: true restartPolicy: Always volumes: - name: artemis-secrets secret: secretName: {{ include "openslice.secrets.activemq" . }} --- apiVersion: v1 kind: Service metadata: namespace: {{ .Release.Namespace }} labels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" {{- include "openslice.labels" . | nindent 4 }} name: {{ include "openslice.fullname" . }}-mcpbackend spec: ports: - name: "11880" port: 11880 targetPort: 11880 selector: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend {{- include "openslice.selectorLabels" . | nindent 4 }} {{- end }} kubernetes/helm/openslice/templates/mcp-server-ingress.yaml.yaml→kubernetes/helm/openslice/templates/mcp-server-ingress.yaml +0 −0 File moved. View file kubernetes/helm/openslice/values.yaml +24 −1 Original line number Diff line number Diff line # Default values for openslice. # Default values for OpenSlice. # This is a YAML-formatted file. # Declare variables to be passed into your templates. Loading Loading @@ -90,6 +90,11 @@ image: # Overrides the image tag whose default is the chart appVersion. tag: develop pullPolicy: Always mcpbackend: repository: labs.etsi.org:5050/osl/code/org.etsi.osl.mcp.backend # Overrides the image tag whose default is the chart appVersion. tag: develop pullPolicy: Always bugzillaurl: example.com:443/bugzilla bugzillakey: VH2Vw0iI5aYgALFFzVDWqhACwt6Hu3bXla9kSC1Z Loading Loading @@ -219,6 +224,21 @@ mcpserver: spring: logLevel: INFO mcpbackend: enabled: true logLevelRoot: INFO logLevelOSL: INFO spring: logLevel: INFO ai: # AI Configuration ollama: model: "gtp-oss:20b" # Change the used model here temperature: 0.5 apiUrl: "http://ollama:11434" # Change the Ollama API here chat: systemPrompt: "You are an OpenSlice AI Assistant." # Customize your initial Assistant prompt maxMessages: 100 # Maximum number of messages to keep in context # Storage class to be used for provisioning. Default is manual # storageClass: ~ Loading Loading @@ -278,6 +298,9 @@ ingress: - path: "/" service: "tmfweb" port: 80 - path: "/ask" service: "mcpbackend" port: 11880 annotations: {} Loading Loading
kubernetes/helm/openslice/files/org.etsi.osl.tmf.web/src/assets/config/config.prod.default.json +1 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ "BUGZILLA": "{BASEURL}/bugzilla/", "STATUS": "{BASEURL}/healthstatus/", "WEBURL": "{BASEURL}", "ASSISTANT_URL": "{BASEURL}/ask", "PORTAL_REPO_APIURL": "{BASEURL}/osapi", "ASSURANCE_SERVICE_MGMT_APIURL": "{BASEURL}/oas-api", "APITMFURL": "{BASEURL}/tmf-api", Loading
kubernetes/helm/openslice/templates/mcp-backend.yaml 0 → 100644 +108 −0 Original line number Diff line number Diff line {{- if .Values.mcpbackend.enabled }} apiVersion: apps/v1 kind: Deployment metadata: namespace: {{ .Release.Namespace }} labels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" {{- include "openslice.labels" . | nindent 4 }} name: {{ include "openslice.fullname" . }}-mcpbackend spec: replicas: {{ .Values.replicaCount }} selector: matchLabels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend {{- include "openslice.selectorLabels" . | nindent 6 }} template: metadata: labels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend {{- include "openslice.selectorLabels" . | nindent 8 }} spec: containers: - name: {{ include "openslice.fullname" . }}-mcpbackend image: "{{ .Values.image.mcpbackend.repository }}:{{ .Values.image.mcpbackend.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.mcpbackend.pullPolicy | default "Always" }} env: - name: SPRING_APPLICATION_JSON value: >- { "origins":"{{ .Values.rooturl }}", "spring.config.import": "configtree:/etc/config/", "server.forward-headers-strategy":"FRAMEWORK" } - name: SERVER_PORT value: "11880" - name: SPRING_APPLICATION_NAME value: "osl-mcp-backend" - name: SPRING_AI_OLLAMA_BASE_URL value: "{{ .Values.mcpbackend.spring.ai.ollama.apiUrl }}" - name: SPRING_AI_OLLAMA_CHAT_MODEL value: "{{ .Values.mcpbackend.spring.ai.ollama.model }}" - name: SPRING_AI_OLLAMA_CHAT_TEMPERATURE value: "{{ .Values.mcpbackend.spring.ai.ollama.temperature }}" - name: SPRING_AI_CHAT_SYSTEM_PROMPT value: "{{ .Values.mcpbackend.spring.ai.chat.systemPrompt }}" - name: SPRING_AI_CHAT_MAX_MESSAGES value: "{{ .Values.mcpbackend.spring.ai.chat.maxMessages }}" - name: SPRING_AI_MCP_CLIENT_TYPE value: "SYNC" - name: SPRING_AI_MCP_CLIENT_STREAMABLE_HTTP_CONNECTIONS_OPENSLICE_SERVER_URL value: "http://{{ include "openslice.fullname" . }}-mcpserver:13015/sse" - name: SPRING_SECURITY_OAUTH2_RESOURCESERVER_JWT_ISSUER_URI value: "{{ .Values.rooturl }}/auth/realms/openslice" - name: SPRING_SECURITY_OAUTH2_CLIENT_PROVIDER_KEYCLOAK_ISSUER_URI value: "{{ .Values.rooturl }}/auth/realms/openslice" - name: SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_KEYCLOAK_CLIENT_ID value: "osapiWebClientId" - name: SPRING_ACTIVEMQ_BROKER_URL value: "tcp://{{ include "openslice.fullname" . }}-artemis:61616?jms.watchTopicAdvisories=false" - name: LOGGING_LEVEL_ROOT value: "{{ .Values.mcpbackend.logLevelRoot | default "INFO" }}" - name: LOGGING_LEVEL_OSL value: "{{ .Values.mcpbackend.logLevelOSL | default "INFO" }}" - name: LOGGING_LEVEL_SPRING_AI value: "{{ .Values.mcpbackend.spring.logLevel | default "INFO" }}" ports: - containerPort: 11880 resources: {{- toYaml .Values.resources | nindent 12 }} volumeMounts: - mountPath: "/etc/config/spring.activemq.user" name: artemis-secrets subPath: username readOnly: true - mountPath: "/etc/config/spring.activemq.password" name: artemis-secrets subPath: password readOnly: true restartPolicy: Always volumes: - name: artemis-secrets secret: secretName: {{ include "openslice.secrets.activemq" . }} --- apiVersion: v1 kind: Service metadata: namespace: {{ .Release.Namespace }} labels: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" {{- include "openslice.labels" . | nindent 4 }} name: {{ include "openslice.fullname" . }}-mcpbackend spec: ports: - name: "11880" port: 11880 targetPort: 11880 selector: app: {{ include "openslice.fullname" . }} org.etsi.osl.service: mcpbackend {{- include "openslice.selectorLabels" . | nindent 4 }} {{- end }}
kubernetes/helm/openslice/templates/mcp-server-ingress.yaml.yaml→kubernetes/helm/openslice/templates/mcp-server-ingress.yaml +0 −0 File moved. View file
kubernetes/helm/openslice/values.yaml +24 −1 Original line number Diff line number Diff line # Default values for openslice. # Default values for OpenSlice. # This is a YAML-formatted file. # Declare variables to be passed into your templates. Loading Loading @@ -90,6 +90,11 @@ image: # Overrides the image tag whose default is the chart appVersion. tag: develop pullPolicy: Always mcpbackend: repository: labs.etsi.org:5050/osl/code/org.etsi.osl.mcp.backend # Overrides the image tag whose default is the chart appVersion. tag: develop pullPolicy: Always bugzillaurl: example.com:443/bugzilla bugzillakey: VH2Vw0iI5aYgALFFzVDWqhACwt6Hu3bXla9kSC1Z Loading Loading @@ -219,6 +224,21 @@ mcpserver: spring: logLevel: INFO mcpbackend: enabled: true logLevelRoot: INFO logLevelOSL: INFO spring: logLevel: INFO ai: # AI Configuration ollama: model: "gtp-oss:20b" # Change the used model here temperature: 0.5 apiUrl: "http://ollama:11434" # Change the Ollama API here chat: systemPrompt: "You are an OpenSlice AI Assistant." # Customize your initial Assistant prompt maxMessages: 100 # Maximum number of messages to keep in context # Storage class to be used for provisioning. Default is manual # storageClass: ~ Loading Loading @@ -278,6 +298,9 @@ ingress: - path: "/" service: "tmfweb" port: 80 - path: "/ask" service: "mcpbackend" port: 11880 annotations: {} Loading