apiVersion: v2
description: ONAP Policy Clamp A1PMS Participant
name: policy-clamp-ac-a1pms-ppnt
-version: 17.0.0
+version: 17.0.1
dependencies:
- name: common
--- /dev/null
+# ============LICENSE_START=======================================================
+# Copyright (C) 2022,2024,2026 Nordix Foundation. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+spring:
+ application:
+ name: a1pms-ppnt
+ security:
+ user:
+ name: ${HTTP_USER:participantUser}
+ password: ${HTTP_PASSWORD:zb!XztG34}
+ autoconfigure:
+ exclude:
+ - org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration
+ - org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration
+security:
+ enable-csrf: false
+
+a1pms:
+ baseUrl: ${a1pmsBaseUrl:http://a1policymanagement.onap:8081}
+ headers:
+ content-type: application/json
+ endpoints:
+ health: /a1-policy/v2/rics
+ services: /a1-policy/v2/services
+ service: /a1-policy/v2/services/{service_id}
+
+participant:
+ intermediaryParameters:
+ topics:
+ operationTopic: policy-acruntime-participant
+ syncTopic: acm-ppnt-sync
+ threadPoolSize: 10
+ topicValidation: ${TOPIC_VALIDATION:false}
+ clampAdminTopics:
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ additionalProps:
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ reportingTimeIntervalMs: 120000
+ description: Participant A1pms
+ participantId: 101c62b3-8918-41b9-a747-d21eb79c6c00
+ clampAutomationCompositionTopics:
+ topicSources:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-a1pms-ppnt}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ - topic: ${participant.intermediaryParameters.topics.syncTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-a1pms-ppnt}-${POD_UID}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ topicSinks:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ participantSupportedElementTypes:
+ -
+ typeName: org.onap.policy.clamp.acm.A1PMSAutomationCompositionElement
+ typeVersion: 1.0.1
+
+management:
+ tracing:
+ propagation:
+ produce: ${jaegerProducerType:B3}
+ sampling:
+ probability: ${jaegerSamplingProbability:1.0}
+ endpoints:
+ web:
+ base-path: /
+ exposure:
+ include: health, metrics, prometheus
+ endpoint:
+ health:
+ access: unrestricted
+ show-details: always
+ probes:
+ enabled: true
+ show-components: always
+
+server:
+ port: 6969
+ ssl:
+ enabled: false
+ servlet:
+ context-path: /onap/policy/clamp/acm/a1pmsparticipant
+
+tracing:
+ enabled: ${allowTracing:false}
+ exporter:
+ endpoint: ${tracingExporterEndpoint:http://jaeger:4318/v1/traces}
+ protocol: ${tracingExporterProtocol:http}
+ sampler:
+ jaeger-remote:
+ endpoint: ${tracingSamplerEndpoint:http://jaeger:14250}
namespace: {{ include "common.namespace" . }}
labels: {{- include "common.labels" . | nindent 4 }}
data:
+{{ tpl (.Files.Glob "resources/config/application.yaml").AsConfig . | indent 2 }}
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command: ["java", "-jar", "/app/app.jar"]
env:
+ - name: SPRING_CONFIG_LOCATION
+ value: /opt/app/policy/clamp/etc/mounted/application.yaml
- name: HTTP_USER
{{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-secret" "key" "login") | indent 14 }}
- name: HTTP_PASSWORD
value: kafka
- name: kafkaServer
value: "{{ include "common.release" . }}-{{ .Values.global.kafkaBootstrap }}"
+ - name: KAFKA_GROUP_ID
+ value: {{ (first .Values.kafkaUser.acls).name }}
- name: allowAutoCreateTopics
value: "false"
- name: kafkaSecurityProtocol
- vale: SASL_PLAINTEXT
+ value: SASL_PLAINTEXT
- name: kafkaSaslMechanism
value: {{ .Values.kafkaUser.authenticationType | upper }}
- name: kafkaSaslJaasConfig
secretKeyRef:
name: {{ include "common.name" . }}-ku
key: sasl.jaas.config
+ - name: POD_UID
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.uid
ports: {{ include "common.containerPorts" . | nindent 12 }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
volumeMounts:
+ - mountPath: /opt/app/policy/clamp/etc/mounted
+ name: ac-a1pms-ppnt-config
- name: logs
mountPath: /var/log/onap
- name: empty-dir
{{- end }}
serviceAccountName: {{ include "common.fullname" (dict "suffix" "create" "dot" . )}}
volumes:
+ - name: ac-a1pms-ppnt-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ defaultMode: 0755
- name: empty-dir
emptyDir:
sizeLimit: {{ .Values.dirSizes.emptyDir.sizeLimit }}
- name: *componentName
type: group
operations: [Read]
+ patternType: prefix
- name: *acRuntimeOperationTopic
type: topic
operations: [Read, Write]
apiVersion: v2
description: ONAP Policy Clamp Controlloop Http Participant
name: policy-clamp-ac-http-ppnt
-version: 17.0.0
+version: 17.0.1
dependencies:
- name: common
--- /dev/null
+# ============LICENSE_START=======================================================
+# Copyright (C) 2021-2024,2026 Nordix Foundation. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+spring:
+ application:
+ name: http-ppnt
+ security:
+ user:
+ name: ${HTTP_USER:participantUser}
+ password: ${HTTP_PASSWORD:zb!XztG34}
+ autoconfigure:
+ exclude:
+ - org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration
+ - org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration
+
+security:
+ enable-csrf: false
+participant:
+ intermediaryParameters:
+ topics:
+ operationTopic: policy-acruntime-participant
+ syncTopic: acm-ppnt-sync
+ threadPoolSize: 10
+ topicValidation: ${TOPIC_VALIDATION:false}
+ clampAdminTopics:
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ additionalProps:
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ reportingTimeIntervalMs: 120000
+ description: Participant Http
+ participantId: 101c62b3-8918-41b9-a747-d21eb79c6c01
+ clampAutomationCompositionTopics:
+ topicSources:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-http-ppnt}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ - topic: ${participant.intermediaryParameters.topics.syncTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-http-ppnt}-${POD_UID}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ topicSinks:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ participantSupportedElementTypes:
+ -
+ typeName: org.onap.policy.clamp.acm.HttpAutomationCompositionElement
+ typeVersion: 1.0.0
+
+management:
+ tracing:
+ propagation:
+ produce: ${jaegerProducerType:B3}
+ sampling:
+ probability: ${jaegerSamplingProbability:1.0}
+ endpoints:
+ web:
+ base-path: /
+ exposure:
+ include: health, metrics, prometheus
+ endpoint:
+ health:
+ access: unrestricted
+ show-details: always
+ probes:
+ enabled: true
+ show-components: always
+
+server:
+ port: 6969
+ ssl:
+ enabled: false
+ servlet:
+ context-path: /onap/policy/clamp/acm/httpparticipant
+
+tracing:
+ enabled: ${allowTracing:false}
+ exporter:
+ endpoint: ${tracingExporterEndpoint:http://jaeger:4318/v1/traces}
+ protocol: ${tracingExporterProtocol:http}
+ sampler:
+ jaeger-remote:
+ endpoint: ${tracingSamplerEndpoint:http://jaeger:14250}
namespace: {{ include "common.namespace" . }}
labels: {{- include "common.labels" . | nindent 4 }}
data:
+{{ tpl (.Files.Glob "resources/config/application.yaml").AsConfig . | indent 2 }}
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command: ["java", "-jar", "/app/app.jar"]
env:
+ - name: SPRING_CONFIG_LOCATION
+ value: /opt/app/policy/clamp/etc/mounted/application.yaml
- name: HTTP_USER
{{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-secret" "key" "login") | indent 14 }}
- name: HTTP_PASSWORD
value: kafka
- name: kafkaServer
value: "{{ include "common.release" . }}-{{ .Values.global.kafkaBootstrap }}"
+ - name: KAFKA_GROUP_ID
+ value: {{ (first .Values.kafkaUser.acls).name }}
- name: allowAutoCreateTopics
value: "false"
- name: kafkaSecurityProtocol
- vale: SASL_PLAINTEXT
+ value: SASL_PLAINTEXT
- name: kafkaSaslMechanism
value: {{ .Values.kafkaUser.authenticationType | upper }}
- name: kafkaSaslJaasConfig
secretKeyRef:
name: {{ include "common.name" . }}-ku
key: sasl.jaas.config
+ - name: POD_UID
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.uid
ports: {{ include "common.containerPorts" . | nindent 12 }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
volumeMounts:
+ - mountPath: /opt/app/policy/clamp/etc/mounted
+ name: ac-http-ppnt-config
- name: logs
mountPath: /var/log/onap
- name: empty-dir
{{- end }}
serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
volumes:
+ - name: ac-http-ppnt-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ defaultMode: 0755
- name: empty-dir
emptyDir:
sizeLimit: {{ .Values.dirSizes.emptyDir.sizeLimit }}
- name: *componentName
type: group
operations: [Read]
+ patternType: prefix
- name: *acRuntimeOperationTopic
type: topic
operations: [Read, Write]
apiVersion: v2
description: ONAP Policy Clamp Kserve Participant
name: policy-clamp-ac-kserve-ppnt
-version: 17.0.0
+version: 17.0.1
dependencies:
- name: common
--- /dev/null
+# ============LICENSE_START=======================================================
+# Copyright (C) 2023,2026 Nordix Foundation. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+spring:
+ application:
+ name: kserve-ppnt
+ cloud:
+ kubernetes:
+ enabled: false
+ discovery:
+ enabled: false
+ security:
+ user:
+ name: ${HTTP_USER:participantUser}
+ password: ${HTTP_PASSWORD:zb!XztG34}
+ autoconfigure:
+ exclude:
+ - org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration
+ - org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration
+ - io.kubernetes.client.spring.extended.manifests.config.KubernetesManifestsAutoConfiguration
+ - io.kubernetes.client.spring.extended.network.config.KubernetesLoadBalancerAutoConfiguration
+
+security:
+ enable-csrf: false
+
+participant:
+ intermediaryParameters:
+ topics:
+ operationTopic: policy-acruntime-participant
+ syncTopic: acm-ppnt-sync
+ threadPoolSize: 10
+ topicValidation: ${TOPIC_VALIDATION:false}
+ clampAdminTopics:
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ additionalProps:
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ reportingTimeIntervalMs: 120000
+ description: Participant Kserve
+ participantId: 101c62b3-8918-41b9-a747-d21eb79c6c04
+ clampAutomationCompositionTopics:
+ topicSources:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-kserve-ppnt}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ - topic: ${participant.intermediaryParameters.topics.syncTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-kserve-ppnt}-${POD_UID}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ topicSinks:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ participantSupportedElementTypes:
+ -
+ typeName: org.onap.policy.clamp.acm.KserveAutomationCompositionElement
+ typeVersion: 1.0.1
+
+customresourcedefinition:
+ group: serving.kserve.io
+ version: v1beta1
+ plural: inferenceservices
+ grace-period: 10
+
+management:
+ tracing:
+ propagation:
+ produce: ${jaegerProducerType:B3}
+ sampling:
+ probability: ${jaegerSamplingProbability:1.0}
+ endpoints:
+ web:
+ base-path: /
+ exposure:
+ include: health, metrics, prometheus
+ endpoint:
+ health:
+ access: unrestricted
+ show-details: always
+ probes:
+ enabled: true
+ show-components: always
+
+server:
+ port: 6969
+ servlet:
+ context-path: /onap/policy/clamp/acm/kserveparticipant
+ ssl:
+ enabled: false
+
+tracing:
+ enabled: ${allowTracing:false}
+ exporter:
+ endpoint: ${tracingExporterEndpoint:http://jaeger:4318/v1/traces}
+ protocol: ${tracingExporterProtocol:http}
+ sampler:
+ jaeger-remote:
+ endpoint: ${tracingSamplerEndpoint:http://jaeger:14250}
namespace: {{ include "common.namespace" . }}
labels: {{- include "common.labels" . | nindent 4 }}
data:
+{{ tpl (.Files.Glob "resources/config/application.yaml").AsConfig . | indent 2 }}
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command: ["java", "-jar", "/app/app.jar"]
env:
+ - name: SPRING_CONFIG_LOCATION
+ value: /opt/app/policy/clamp/etc/mounted/application.yaml
- name: HTTP_USER
{{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-secret" "key" "login") | indent 14 }}
- name: HTTP_PASSWORD
value: kafka
- name: kafkaServer
value: "{{ include "common.release" . }}-{{ .Values.global.kafkaBootstrap }}"
+ - name: KAFKA_GROUP_ID
+ value: {{ (first .Values.kafkaUser.acls).name }}
- name: allowAutoCreateTopics
value: "false"
- name: kafkaSecurityProtocol
- vale: SASL_PLAINTEXT
+ value: SASL_PLAINTEXT
- name: kafkaSaslMechanism
value: {{ .Values.kafkaUser.authenticationType | upper }}
- name: kafkaSaslJaasConfig
secretKeyRef:
name: {{ include "common.name" . }}-ku
key: sasl.jaas.config
+ - name: POD_UID
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.uid
ports: {{ include "common.containerPorts" . | nindent 12 }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
volumeMounts:
+ - mountPath: /opt/app/policy/clamp/etc/mounted
+ name: ac-kserve-ppnt-config
- name: logs
mountPath: /var/log/onap
- name: empty-dir
{{- end }}
serviceAccountName: {{ include "common.fullname" (dict "suffix" "create" "dot" . )}}
volumes:
+ - name: ac-kserve-ppnt-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ defaultMode: 0755
- name: empty-dir
emptyDir:
sizeLimit: {{ .Values.dirSizes.emptyDir.sizeLimit }}
- name: *componentName
type: group
operations: [Read]
+ patternType: prefix
- name: *acRuntimeOperationTopic
type: topic
operations: [Read, Write]
apiVersion: v2
description: ONAP Policy Clamp Controlloop Policy Participant
name: policy-clamp-ac-pf-ppnt
-version: 17.0.0
+version: 17.0.1
dependencies:
- name: common
--- /dev/null
+# ============LICENSE_START=======================================================
+# Copyright (C) 2021-2024,2026 Nordix Foundation. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+spring:
+ application:
+ name: pf-ppnt
+ security:
+ user:
+ name: ${HTTP_USER:participantUser}
+ password: ${HTTP_PASSWORD:zb!XztG34}
+ autoconfigure:
+ exclude:
+ - org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
+ - org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration
+ - org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration
+
+participant:
+ pdpGroup: defaultGroup
+ pdpType: apex
+ policyApiParameters:
+ clientName: api
+ hostname: policy-api
+ port: 6969
+ userName: ${API_USER}
+ password: ${API_PASSWORD}
+ useHttps: false
+ allowSelfSignedCerts: true
+ policyPapParameters:
+ clientName: pap
+ hostname: policy-pap
+ port: 6969
+ userName: ${PAP_USER}
+ password: ${PAP_PASSWORD}
+ useHttps: false
+ allowSelfSignedCerts: true
+ intermediaryParameters:
+ topics:
+ operationTopic: policy-acruntime-participant
+ syncTopic: acm-ppnt-sync
+ threadPoolSize: 10
+ topicValidation: ${TOPIC_VALIDATION:false}
+ clampAdminTopics:
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ additionalProps:
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ reportingTimeIntervalMs: 120000
+ description: Participant Policy
+ participantId: 101c62b3-8918-41b9-a747-d21eb79c6c03
+ clampAutomationCompositionTopics:
+ topicSources:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-pf-ppnt}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ - topic: ${participant.intermediaryParameters.topics.syncTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ fetchTimeout: 15000
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ group.id: ${KAFKA_GROUP_ID:policy-clamp-ac-pf-ppnt}-${POD_UID}
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ topicSinks:
+ - topic: ${participant.intermediaryParameters.topics.operationTopic}
+ servers:
+ - ${kafkaServer:kafka:9092}
+ topicCommInfrastructure: ${topicCommInfrastructure:NOOP}
+ useHttps: ${kafkaUseHttps:false}
+ allowTracing: ${allowTracing:false}
+ additionalProps:
+ allow.auto.create.topics: ${allowAutoCreateTopics:true}
+ security.protocol: ${kafkaSecurityProtocol:PLAINTEXT}
+ sasl.mechanism: ${kafkaSaslMechanism:GSSAPI}
+ sasl.jaas.config: ${kafkaSaslJaasConfig:}
+ participantSupportedElementTypes:
+ -
+ typeName: org.onap.policy.clamp.acm.PolicyAutomationCompositionElement
+ typeVersion: 1.0.0
+
+management:
+ tracing:
+ propagation:
+ produce: ${jaegerProducerType:B3}
+ sampling:
+ probability: ${jaegerSamplingProbability:1.0}
+ endpoints:
+ web:
+ base-path: /
+ exposure:
+ include: health, metrics, prometheus
+ endpoint:
+ health:
+ access: unrestricted
+ show-details: always
+ probes:
+ enabled: true
+ show-components: always
+
+server:
+ port: 6969
+ ssl:
+ enabled: false
+ servlet:
+ context-path: /onap/policy/clamp/acm/policyparticipant
+
+tracing:
+ enabled: ${allowTracing:false}
+ exporter:
+ endpoint: ${tracingExporterEndpoint:http://jaeger:4318/v1/traces}
+ protocol: ${tracingExporterProtocol:http}
+ sampler:
+ jaeger-remote:
+ endpoint: ${tracingSamplerEndpoint:http://jaeger:14250}
namespace: {{ include "common.namespace" . }}
labels: {{- include "common.labels" . | nindent 4 }}
data:
+{{ tpl (.Files.Glob "resources/config/application.yaml").AsConfig . | indent 2 }}
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command: ["java", "-jar", "/app/app.jar"]
env:
+ - name: SPRING_CONFIG_LOCATION
+ value: /opt/app/policy/clamp/etc/mounted/application.yaml
- name: HTTP_USER
{{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restserver-secret" "key" "login") | indent 14 }}
- name: HTTP_PASSWORD
value: kafka
- name: kafkaServer
value: "{{ include "common.release" . }}-{{ .Values.global.kafkaBootstrap }}"
+ - name: KAFKA_GROUP_ID
+ value: {{ (first .Values.kafkaUser.acls).name }}
- name: allowAutoCreateTopics
value: "false"
- name: kafkaSecurityProtocol
- vale: SASL_PLAINTEXT
+ value: SASL_PLAINTEXT
- name: kafkaSaslMechanism
value: {{ .Values.kafkaUser.authenticationType | upper }}
- name: kafkaSaslJaasConfig
secretKeyRef:
name: {{ include "common.name" . }}-ku
key: sasl.jaas.config
+ - name: POD_UID
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.uid
ports: {{ include "common.containerPorts" . | nindent 12 }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
volumeMounts:
+ - mountPath: /opt/app/policy/clamp/etc/mounted
+ name: ac-pf-ppnt-config
- name: logs
mountPath: /var/log/onap
- name: empty-dir
{{- end }}
serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
volumes:
+ - name: ac-pf-ppnt-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ defaultMode: 0755
- name: empty-dir
emptyDir:
sizeLimit: {{ .Values.dirSizes.emptyDir.sizeLimit }}
- name: *componentName
type: group
operations: [Read]
+ patternType: prefix
- name: *acRuntimeOperationTopic
type: topic
operations: [Read, Write]