Merge "[CONTRIB] Correct serviceaccount for awx"
authorSylvain Desbureaux <sylvain.desbureaux@orange.com>
Fri, 15 Oct 2021 13:08:22 +0000 (13:08 +0000)
committerGerrit Code Review <gerrit@onap.org>
Fri, 15 Oct 2021 13:08:22 +0000 (13:08 +0000)
146 files changed:
kubernetes/a1policymanagement/values.yaml
kubernetes/aaf/components/aaf-sms/resources/config/osdf.json
kubernetes/aaf/components/aaf-sms/templates/job.yaml
kubernetes/aaf/components/aaf-sms/values.yaml
kubernetes/common/dgbuilder/values.yaml
kubernetes/common/network-name-gen/values.yaml
kubernetes/common/postgres-init/.helmignore [new file with mode: 0644]
kubernetes/common/postgres-init/Chart.yaml [new file with mode: 0644]
kubernetes/common/postgres-init/requirements.yaml [new file with mode: 0644]
kubernetes/common/postgres-init/resources/config/setup.sql [new file with mode: 0644]
kubernetes/common/postgres-init/templates/configmap.yaml [new file with mode: 0644]
kubernetes/common/postgres-init/templates/job.yaml [new file with mode: 0644]
kubernetes/common/postgres-init/templates/secrets.yaml [new file with mode: 0644]
kubernetes/common/postgres-init/values.yaml [new file with mode: 0644]
kubernetes/common/postgres/templates/_deployment.tpl
kubernetes/common/roles-wrapper/templates/role.yaml
kubernetes/common/timescaledb/templates/statefulset.yaml
kubernetes/common/timescaledb/values.yaml
kubernetes/cps/components/cps-core/requirements.yaml
kubernetes/cps/components/cps-core/resources/config/application-helm.yml
kubernetes/cps/components/cps-core/values.yaml
kubernetes/dcaegen2-services/common/dcaegen2-services-common/templates/_deployment.tpl
kubernetes/dcaegen2-services/components/dcae-bbs-eventprocessor-ms/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-bbs-eventprocessor-ms/values.yaml
kubernetes/dcaegen2-services/components/dcae-datafile-collector/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-datafile-collector/values.yaml
kubernetes/dcaegen2-services/components/dcae-datalake-admin-ui/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-datalake-admin-ui/values.yaml
kubernetes/dcaegen2-services/components/dcae-datalake-des/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-datalake-des/values.yaml
kubernetes/dcaegen2-services/components/dcae-datalake-feeder/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-datalake-feeder/values.yaml
kubernetes/dcaegen2-services/components/dcae-heartbeat/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-heartbeat/values.yaml
kubernetes/dcaegen2-services/components/dcae-hv-ves-collector/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-hv-ves-collector/values.yaml
kubernetes/dcaegen2-services/components/dcae-kpi-ms/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-kpi-ms/values.yaml
kubernetes/dcaegen2-services/components/dcae-ms-healthcheck/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-ms-healthcheck/values.yaml
kubernetes/dcaegen2-services/components/dcae-pm-mapper/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-pm-mapper/values.yaml
kubernetes/dcaegen2-services/components/dcae-pmsh/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-pmsh/values.yaml
kubernetes/dcaegen2-services/components/dcae-prh/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-prh/values.yaml
kubernetes/dcaegen2-services/components/dcae-restconf-collector/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-restconf-collector/values.yaml
kubernetes/dcaegen2-services/components/dcae-slice-analysis-ms/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-slice-analysis-ms/values.yaml
kubernetes/dcaegen2-services/components/dcae-snmptrap-collector/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-snmptrap-collector/values.yaml
kubernetes/dcaegen2-services/components/dcae-son-handler/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-son-handler/values.yaml
kubernetes/dcaegen2-services/components/dcae-tcagen2/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-tcagen2/values.yaml
kubernetes/dcaegen2-services/components/dcae-ves-collector/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-ves-collector/values.yaml
kubernetes/dcaegen2-services/components/dcae-ves-mapper/requirements.yaml
kubernetes/dcaegen2-services/components/dcae-ves-mapper/values.yaml
kubernetes/dcaegen2/components/dcae-bootstrap/requirements.yaml
kubernetes/dcaegen2/components/dcae-bootstrap/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-bootstrap/values.yaml
kubernetes/dcaegen2/components/dcae-cloudify-manager/requirements.yaml
kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-cloudify-manager/values.yaml
kubernetes/dcaegen2/components/dcae-config-binding-service/requirements.yaml
kubernetes/dcaegen2/components/dcae-config-binding-service/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-config-binding-service/values.yaml
kubernetes/dcaegen2/components/dcae-dashboard/requirements.yaml
kubernetes/dcaegen2/components/dcae-dashboard/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-dashboard/values.yaml
kubernetes/dcaegen2/components/dcae-deployment-handler/requirements.yaml
kubernetes/dcaegen2/components/dcae-deployment-handler/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-deployment-handler/values.yaml
kubernetes/dcaegen2/components/dcae-healthcheck/requirements.yaml
kubernetes/dcaegen2/components/dcae-healthcheck/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-healthcheck/values.yaml
kubernetes/dcaegen2/components/dcae-inventory-api/requirements.yaml
kubernetes/dcaegen2/components/dcae-inventory-api/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-inventory-api/values.yaml
kubernetes/dcaegen2/components/dcae-policy-handler/requirements.yaml
kubernetes/dcaegen2/components/dcae-policy-handler/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-policy-handler/values.yaml
kubernetes/dcaegen2/components/dcae-servicechange-handler/requirements.yaml
kubernetes/dcaegen2/components/dcae-servicechange-handler/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-servicechange-handler/values.yaml
kubernetes/dcaegen2/components/dcae-ves-openapi-manager/requirements.yaml
kubernetes/dcaegen2/components/dcae-ves-openapi-manager/templates/deployment.yaml
kubernetes/dcaegen2/components/dcae-ves-openapi-manager/values.yaml
kubernetes/dcaegen2/values.yaml
kubernetes/dmaap/components/dmaap-dr-prov/requirements.yaml
kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
kubernetes/modeling/components/modeling-etsicatalog/requirements.yaml
kubernetes/modeling/components/modeling-etsicatalog/templates/deployment.yaml
kubernetes/modeling/components/modeling-etsicatalog/values.yaml
kubernetes/msb/components/msb-eag/values.yaml
kubernetes/msb/components/msb-iag/values.yaml
kubernetes/multicloud/components/multicloud-k8s/values.yaml
kubernetes/onap/requirements.yaml
kubernetes/onap/resources/overrides/onap-all.yaml
kubernetes/oof/components/oof-has/components/oof-has-api/values.yaml
kubernetes/oof/components/oof-has/components/oof-has-controller/values.yaml
kubernetes/oof/components/oof-has/components/oof-has-data/values.yaml
kubernetes/oof/components/oof-has/components/oof-has-reservation/values.yaml
kubernetes/oof/components/oof-has/components/oof-has-solver/values.yaml
kubernetes/oof/components/oof-has/values.yaml
kubernetes/oof/resources/config/conf/osdf_config.yaml
kubernetes/oof/templates/deployment.yaml
kubernetes/oof/values.yaml
kubernetes/platform/components/oom-cert-service/values.yaml
kubernetes/policy/components/policy-clamp-cl-runtime/Chart.yaml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/requirements.yaml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/resources/config/clRuntimeParameters.yaml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/resources/config/logback.xml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/templates/configmap.yaml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/templates/deployment.yaml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/templates/secrets.yaml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/templates/service.yaml [new file with mode: 0644]
kubernetes/policy/components/policy-clamp-cl-runtime/values.yaml [new file with mode: 0644]
kubernetes/policy/requirements.yaml
kubernetes/policy/resources/config/db.sh
kubernetes/policy/values.yaml
kubernetes/sdc/components/sdc-be/values.yaml
kubernetes/sdc/components/sdc-cs/values.yaml
kubernetes/sdc/components/sdc-fe/values.yaml
kubernetes/sdc/components/sdc-onboarding-be/values.yaml
kubernetes/sdnc/components/dmaap-listener/values.yaml
kubernetes/sdnc/components/sdnc-ansible-server/templates/deployment.yaml
kubernetes/sdnc/components/sdnc-ansible-server/values.yaml
kubernetes/sdnc/components/sdnc-web/values.yaml
kubernetes/sdnc/components/ueb-listener/values.yaml
kubernetes/sdnc/values.yaml
kubernetes/so/components/so-cnf-adapter/resources/config/overrides/override.yaml
kubernetes/so/components/so-cnf-adapter/values.yaml
kubernetes/uui/components/uui-server/values.yaml
kubernetes/uui/values.yaml
kubernetes/vfc/components/vfc-generic-vnfm-driver/values.yaml
kubernetes/vfc/components/vfc-nslcm/values.yaml
kubernetes/vfc/components/vfc-redis/values.yaml
kubernetes/vfc/components/vfc-vnflcm/values.yaml
kubernetes/vfc/components/vfc-vnfmgr/values.yaml
kubernetes/vfc/components/vfc-vnfres/values.yaml
kubernetes/vfc/components/vfc-zte-vnfm-driver/values.yaml

index 103a621..07d1234 100644 (file)
@@ -63,7 +63,7 @@ certInitializer:
     echo "*** change ownership of certificates to targeted user"
     chown -R 1000 .
 
-image: onap/ccsdk-oran-a1policymanagementservice:1.1.3
+image: onap/ccsdk-oran-a1policymanagementservice:1.2.1
 userID: 1000 #Should match with image-defined user ID
 groupID: 999 #Should match with image-defined group ID
 pullPolicy: IfNotPresent
index add0808..3ede31d 100644 (file)
                     "UserName": "${OSDF_OPT_ENGINE_USER}",
                     "Password": "${OSDF_OPT_ENGINE_PASS}"
                 }
+            },
+            {
+                "name": "cps",
+                "values": {
+                    "UserName": "${CPS_USER}",
+                    "Password": "${CPS_PASS}"
+                }
             }
         ]
     }
index 6e50620..6d9ecaa 100644 (file)
@@ -52,6 +52,7 @@ spec:
            export OSDF_OPT_ENGINE_PASS=${OSDF_OPT_ENGINE_PASS_PLAIN};
            export SO_PASS=${SO_PASS_PLAIN};
            export SDC_PASS=${SDC_PASS_PLAIN};
+           export CPS_PASS=${CPS_PASS_PLAIN};
            cd /config-input;
            for PFILE in `find . -not -type d | grep -v -F ..`; do
              envsubst <${PFILE} >/config/${PFILE};
@@ -137,6 +138,11 @@ spec:
         - name: SDC_PASS_PLAIN
           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "sdc-creds" "key" "password") | indent 10 }}
 
+        - name: CPS_USER
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cps-creds" "key" "login") | indent 10 }}
+        - name: CPS_PASS_PLAIN
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cps-creds" "key" "password") | indent 10 }}
+
         volumeMounts:
         - mountPath: /config-input
           name: {{ include "common.name" . }}-preload-input
index ab7d8fb..cde8529 100644 (file)
@@ -197,6 +197,12 @@ secrets:
     login: '{{ .Values.oofCreds.sdcUsername }}'
     password: '{{ .Values.oofCreds.sdcPassword }}'
     passwordPolicy: required
+  - uid: cps-creds
+    type: basicAuth
+    externalSecret: '{{ tpl (default "" .Values.oofCreds.cpsUserExternalSecret) . }}'
+    login: '{{ .Values.oofCreds.cpsUsername }}'
+    password: '{{ .Values.oofCreds.cpsPassword }}'
+    passwordPolicy: required
 oofCreds:
   aaiUsername: oof@oof.onap.org
   aaiPassword: demo123456!
@@ -246,6 +252,10 @@ oofCreds:
   sdcUsername: aai
   sdcPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
 
+  cpsUsername: ''
+  cpsPassword: ''
+  cpsUserExternalSecret: '{{ include "common.release" . }}-cps-core-app-user-creds'
+
 # Configure resource requests and limits
 resources:
   small:
index 0f91bbd..681c6af 100644 (file)
@@ -69,7 +69,7 @@ secrets:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/ccsdk-dgbuilder-image:1.1.1
+image: onap/ccsdk-dgbuilder-image:1.2.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index daf29cc..c1717c3 100644 (file)
@@ -74,7 +74,7 @@ mariadb-init:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/ccsdk-apps-ms-neng:1.1.1
+image: onap/ccsdk-apps-ms-neng:1.2.0
 pullPolicy: IfNotPresent
 
 # application configuration
diff --git a/kubernetes/common/postgres-init/.helmignore b/kubernetes/common/postgres-init/.helmignore
new file mode 100644 (file)
index 0000000..f0c1319
--- /dev/null
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/common/postgres-init/Chart.yaml b/kubernetes/common/postgres-init/Chart.yaml
new file mode 100644 (file)
index 0000000..7de0d9a
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright Â© 2021 Orange
+#
+# 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.
+
+apiVersion: v1
+description: Chart for Postgres init job
+name: postgres-init
+version: 8.0.0
diff --git a/kubernetes/common/postgres-init/requirements.yaml b/kubernetes/common/postgres-init/requirements.yaml
new file mode 100644 (file)
index 0000000..1a4ab2f
--- /dev/null
@@ -0,0 +1,21 @@
+# Copyright Â© 2021 Orange
+#
+# 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.
+
+dependencies:
+  - name: common
+    version: ~8.x-0
+    repository: 'file://../common'
+  - name: repositoryGenerator
+    version: ~8.x-0
+    repository: 'file://../repositoryGenerator'
diff --git a/kubernetes/common/postgres-init/resources/config/setup.sql b/kubernetes/common/postgres-init/resources/config/setup.sql
new file mode 100644 (file)
index 0000000..06e0724
--- /dev/null
@@ -0,0 +1,19 @@
+--- User Setup
+CREATE USER "${PG_USER}" LOGIN;
+ALTER USER "${PG_USER}" PASSWORD '${PG_PASSWORD}';
+
+CREATE DATABASE ${PG_DATABASE};
+GRANT ALL PRIVILEGES ON DATABASE ${PG_DATABASE} TO "${PG_USER}";
+
+--- PG_DATABASE Setup
+
+\c ${PG_DATABASE}
+
+CREATE EXTENSION IF NOT EXISTS pg_stat_statements;
+CREATE EXTENSION IF NOT EXISTS pgaudit;
+
+--- Create schema for PG_USER
+
+\c ${PG_DATABASE}
+
+CREATE SCHEMA IF NOT EXISTS "${PG_USER}" AUTHORIZATION "${PG_USER}";
diff --git a/kubernetes/common/postgres-init/templates/configmap.yaml b/kubernetes/common/postgres-init/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..66c28a0
--- /dev/null
@@ -0,0 +1,29 @@
+{{/*
+# Copyright Â© 2021 Orange
+#
+#
+# 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.
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ include "common.release" . }}
+    heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/common/postgres-init/templates/job.yaml b/kubernetes/common/postgres-init/templates/job.yaml
new file mode 100644 (file)
index 0000000..01151bb
--- /dev/null
@@ -0,0 +1,121 @@
+{{/*
+# Copyright Â© 2021 Orange
+#
+# 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.
+*/}}
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+  name: {{ include "common.fullname" . }}-config-job
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ include "common.release" . }}
+    heritage: {{ .Release.Service }}
+spec:
+  backoffLimit: 20
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ include "common.release" . }}
+      name: {{ include "common.name" . }}
+    spec:
+      initContainers:
+      - name: {{ include "common.name" . }}-readiness
+        command:
+        - /app/ready.py
+        args:
+        - --container-name
+        - {{ .Values.global.postgres.container.name }}
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: {{ include "repositoryGenerator.image.readiness" . }}
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+      containers:
+      - command:
+        - sh
+        args:
+        - -c
+        - |
+          function prepare_password {
+            echo -n $1 | sed -e "s/'/''/g"
+          }
+          export PG_PASSWORD=`prepare_password $PG_PASSWORD_INPUT`;
+          export PG_ROOT_PASSWORD=`prepare_password $PG_ROOT_PASSWORD_INPUT`;
+          cd /config-input && for PFILE in `ls -1 .`; do envsubst <${PFILE} >/config/${PFILE}; done;
+          psql "postgresql://postgres:$PG_ROOT_PASSWORD@$PG_HOST" < /config/setup.sql
+        env:
+        - name: PG_HOST
+          value: "{{ .Values.global.postgres.service.name2 }}"
+        - name: PG_PRIMARY_USER
+          value: primaryuser
+        - name: MODE
+          value: postgres
+        - name: PG_PRIMARY_PASSWORD_INPUT
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" (include "common.postgres.secret.primaryPasswordUID" .) "key" "password") | indent 10 }}
+        - name: PG_USER
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" (include "common.postgres.secret.userCredentialsUID" .) "key" "login") | indent 10 }}
+        - name: PG_PASSWORD_INPUT
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" (include "common.postgres.secret.userCredentialsUID" .) "key" "password") | indent 10 }}
+        - name: PG_DATABASE
+          value: "{{ .Values.config.pgDatabase }}"
+        - name: PG_ROOT_PASSWORD_INPUT
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" (include "common.postgres.secret.rootPassUID" .) "key" "password") | indent 10 }}
+        volumeMounts:
+        - mountPath: /config-input/setup.sql
+          name: config
+          subPath: setup.sql
+        - mountPath: /config
+          name: pgconf
+        image: {{ include "repositoryGenerator.image.postgres" . }}
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-update-config
+        volumeMounts:
+        - mountPath: /etc/localtime
+          name: localtime
+          readOnly: true
+        - mountPath: /config-input/setup.sql
+          name: config
+          subPath: setup.sql
+        - mountPath: /config
+          name: pgconf
+        resources:
+{{ include "common.resources" . | indent 12 }}
+      {{- if .Values.nodeSelector }}
+      nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+      {{- end -}}
+      {{- if .Values.affinity }}
+      affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+      {{- end }}
+      volumes:
+      - name: localtime
+        hostPath:
+          path: /etc/localtime
+      - name: config
+        configMap:
+          name: {{ include "common.fullname" . }}
+      - name: pgconf
+        emptyDir:
+          medium: Memory
+      restartPolicy: Never
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/common/postgres-init/templates/secrets.yaml b/kubernetes/common/postgres-init/templates/secrets.yaml
new file mode 100644 (file)
index 0000000..f3bea1f
--- /dev/null
@@ -0,0 +1,16 @@
+{{/*
+# Copyright Â© 2021 Orange
+# #
+# # 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.
+*/}}
+{{ include "common.secretFast" . }}
diff --git a/kubernetes/common/postgres-init/values.yaml b/kubernetes/common/postgres-init/values.yaml
new file mode 100644 (file)
index 0000000..7bcd8e2
--- /dev/null
@@ -0,0 +1,91 @@
+# Copyright Â© 2021 Orange
+#
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+  postgres:
+    service:
+      name: pgset
+    container:
+      name: postgres
+
+#################################################################
+# Secrets metaconfig
+#################################################################
+secrets:
+  - uid: '{{ include "common.postgres.secret.rootPassUID" . }}'
+    type: password
+    externalSecret: '{{ tpl (default "" .Values.config.pgRootPasswordExternalSecret) . }}'
+    password: '{{ .Values.config.pgRootPassword }}'
+  - uid: '{{ include "common.postgres.secret.userCredentialsUID" . }}'
+    type: basicAuth
+    externalSecret: '{{ tpl (default "" .Values.config.pgUserExternalSecret) . }}'
+    login: '{{ .Values.config.pgUserName }}'
+    password: '{{ .Values.config.pgUserPassword }}'
+  - uid: '{{ include "common.postgres.secret.primaryPasswordUID" . }}'
+    type: password
+    externalSecret: '{{ tpl (default "" .Values.config.pgPrimaryPasswordExternalSecret) . }}'
+    password: '{{ .Values.config.pgPrimaryPassword }}'
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+pullPolicy: Always
+
+# application configuration
+config:
+  pgUserName: testuser
+  pgDatabase: userdb
+  pgDataPath: data
+  pgRootPasswordExternalSecret: '{{ include "common.namespace" . }}-postgres-db-root-password'
+  # pgPrimaryPassword: password
+  # pgUserPassword: password
+  # pgRootPassword: password
+
+nodeSelector: {}
+
+affinity: {}
+
+flavor: small
+
+#resources: {}
+# We usually recommend not to specify default resources and to leave this as a conscious
+# choice for the user. This also increases chances charts run on environments with little
+# resources, such as Minikube. If you do want to specify resources, uncomment the following
+# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+#
+# Example:
+# Configure resource requests and limits
+# ref: http://kubernetes.io/docs/user-guide/compute-resources/
+# Minimum memory for development is 2 CPU cores and 4GB memory
+# Minimum memory for production is 4 CPU cores and 8GB memory
+resources:
+  small:
+    limits:
+      cpu: 100m
+      memory: 300Mi
+    requests:
+      cpu: 10m
+      memory: 90Mi
+  large:
+    limits:
+      cpu: 2
+      memory: 4Gi
+    requests:
+      cpu: 1
+      memory: 2Gi
+  unlimited: {}
index d93d401..341b4c8 100644 (file)
@@ -1,6 +1,7 @@
 {{/*
 # Copyright Â© 2018 Amdocs, AT&T, Bell Canada
 # Copyright Â© 2020 Samsung Electronics
+# Copyright Â© 2021 Orange
 # Modifications Copyright (C) 2021 Bell Canada.
 # #
 # # Licensed under the Apache License, Version 2.0 (the "License");
@@ -126,9 +127,9 @@ spec:
         - name: PG_MODE
           value: {{ $pgMode }}
         - name: PG_PRIMARY_HOST
-          value: "{{ $dot.Values.container.name.primary }}"
+          value: "{{ $dot.Values.service.name2 }}"
         - name: PG_REPLICA_HOST
-          value: "{{ $dot.Values.container.name.replica }}"
+          value: "{{ $dot.Values.service.name3 }}"
         - name: PG_PRIMARY_PORT
           value: "{{ $dot.Values.service.internalPort }}"
         - name: PG_PRIMARY_PASSWORD
index e2a84b4..0be6c7b 100644 (file)
@@ -32,6 +32,7 @@ rules:
   resources:
   - pods
   - deployments
+  - deployments/status
   - jobs
   - jobs/status
   - statefulsets
@@ -52,6 +53,7 @@ rules:
   resources:
   - pods
   - deployments
+  - deployments/status
   - jobs
   - jobs/status
   - statefulsets
@@ -59,6 +61,7 @@ rules:
   - replicasets/status
   - daemonsets
   - secrets
+  - services
   verbs:
   - get
   - watch
@@ -68,6 +71,7 @@ rules:
   - apps
   resources:
   - statefulsets
+  - configmaps
   verbs:
   - patch
 - apiGroups:
@@ -76,6 +80,8 @@ rules:
   resources:
   - deployments
   - secrets
+  - services
+  - pods
   verbs:
   - create
 - apiGroups:
@@ -85,7 +91,8 @@ rules:
   - pods
   - persistentvolumeclaims
   - secrets
-  - deployment
+  - deployments
+  - services
   verbs:
   - delete
 - apiGroups:
@@ -95,6 +102,13 @@ rules:
   - pods/exec
   verbs:
   - create
+- apiGroups:
+  - cert-manager.io
+  resources:
+  - certificates
+  verbs:
+  - create
+  - delete
 {{-     else }}
 # if you don't match read or create, then you're not allowed to use API
 # except to see basic information about yourself
index 435c925..0bd7d30 100644 (file)
@@ -29,25 +29,10 @@ spec:
     metadata: {{- include "common.templateMetadata" . | nindent 6 }}
     spec:
       serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . ) }}
-      securityContext:
-      {{- toYaml .Values.podSecurityContext | nindent 8 }}
-      initContainers:
-        - name: chowm-mount-path
-          command:
-            - /bin/sh
-          args:
-            - -c
-            - chown -R {{ .Values.securityContext.runAsUser }}:{{ .Values.securityContext.runAsGroup }} /var/lib/postgresql/data
-          image: {{ include "repositoryGenerator.image.busybox" . }}
-          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          volumeMounts:
-            - mountPath: /var/lib/postgresql/data
-              name: {{ include "common.fullname" . }}
+      {{ include "common.podSecurityContext" . | indent 10 | trim}}
       containers:
         - name: {{ include "common.name" . }}
           image: {{ include "repositoryGenerator.dockerHubRepository" . }}/{{ .Values.image }}
-          securityContext:
-          {{- toYaml .Values.securityContext | nindent 12 }}
           imagePullPolicy: {{ .Values.pullPolicy }}
           ports: {{ include "common.containerPorts" . | nindent 12  }}
           livenessProbe:
index 55acd92..258f516 100644 (file)
@@ -37,30 +37,45 @@ serviceAccount:
   roles:
     - read
 
-podSecurityContext: {}
-  # fsGroup: 2000
-
 securityContext:
   # Uid and gid to run the entrypoint of the container process (uid 70 is postgres user and gid 70 is postgres group)
-  runAsUser: 70
-  runAsGroup: 70
+  user_id: 70
+  group_id: 70
   # capabilities:
   #   drop:
   #   - ALL
   # readOnlyRootFilesystem: true
   # runAsNonRoot: true
 
+flavor: small
+
+#resources: {}
+# We usually recommend not to specify default resources and to leave this as a conscious
+# choice for the user. This also increases chances charts run on environments with little
+# resources, such as Minikube. If you do want to specify resources, uncomment the following
+# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+#
+# Example:
+# Configure resource requests and limits
+# ref: http://kubernetes.io/docs/user-guide/compute-resources/
+# Minimum memory for development is 2 CPU cores and 4GB memory
+# Minimum memory for production is 4 CPU cores and 8GB memory
 resources:
-  # We usually recommend not to specify default resources and to leave this as a conscious
-  # choice for the user. This also increases chances charts run on environments with little
-  # resources, such as Minikube. If you do want to specify resources, uncomment the following
-  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
- limits:
-   cpu: 0.5
-   memory: 256Mi
- requests:
-   cpu: 20m
-   memory: 256Mi
+  small:
+    limits:
+      cpu: 100m
+      memory: 300Mi
+    requests:
+      cpu: 10m
+      memory: 90Mi
+  large:
+    limits:
+      cpu: 2
+      memory: 4Gi
+    requests:
+      cpu: 1
+      memory: 2Gi
+  unlimited: {}
 
 nodeSelector: {}
 
index d6b6712..c42e72a 100644 (file)
@@ -19,6 +19,12 @@ dependencies:
   - name: postgres
     version: ~8.x-0
     repository: '@local'
+    condition: global.postgres.localCluster
+  - name: postgres-init
+    version: ~8.x-0
+    repository: '@local'
+    condition: not global.postgres.localCluster
+    #condition: global.postgres.postgresInit
   - name: readinessCheck
     version: ~8.x-0
     repository: '@local'
index 0bc7d5b..8f904ef 100644 (file)
@@ -2,6 +2,7 @@
 #  Copyright (C) 2021 Pantheon.tech
 #  Modifications Copyright (C) 2020 Bell Canada.
 #  Modifications Copyright (C) 2021 Nordix Foundation.
+#  Modifications Copyright (C) 2021 Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 
 spring:
   datasource:
+{{- if .Values.global.postgres.localCluster }}
     url: jdbc:postgresql://{{ .Values.postgres.service.name2 }}:5432/{{ .Values.postgres.config.pgDatabase }}
+{{- else }}
+    url: jdbc:postgresql://{{ .Values.global.postgres.service.name2 }}:5432/{{ .Values.postgres.config.pgDatabase }}
+{{- end }}
     username: ${DB_USERNAME}
     password: ${DB_PASSWORD}
     driverClassName: org.postgresql.Driver
index 4f788e7..55d9fcd 100644 (file)
@@ -52,6 +52,16 @@ global:
   ingress:
     virtualhost:
       baseurl: "simpledemo.onap.org"
+  #Service Names of the postgres db to connect to.
+  #Override it to cps-postgres if localCluster is enabled.
+  postgres:
+    localCluster: false
+    service:
+      name: pgset
+      name2: tcp-pgset-primary
+      name3: tcp-pgset-replica
+    container:
+      name: postgres
 
 image: onap/cps-and-ncmp:2.0.0
 containerPort: &svc_port 8080
@@ -206,9 +216,21 @@ postgres:
     pgUserExternalSecret: *pgUserCredsSecretName
     pgRootPasswordExternalSecret: *pgRootPassSecretName
 
+postgres-init:
+  nameOverride: cps-postgres-init
+  config:
+    pgUserName: cps
+    pgDatabase: cpsdb
+    pgDataPath: data
+    pgUserExternalSecret: *pgUserCredsSecretName
+
+    # pgPrimaryPassword: password
+    # pgUserPassword: password
+    # pgRootPassword: password
+
 readinessCheck:
   wait_for:
-    - *postgresName
+    - '{{ ternary .Values.postgres.service.name "postgres" .Values.global.postgres.localCluster }}'
 
 minReadySeconds: 10
 updateStrategy:
index 6be03de..dd0bf4b 100644 (file)
@@ -432,6 +432,7 @@ spec:
         {{- end }}
       {{- end }}
       hostname: {{ include "common.name" . }}
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
       - configMap:
           defaultMode: 420
index c6804b7..e267e89 100644 (file)
@@ -27,4 +27,7 @@ dependencies:
     repository: '@local'
   - name: dcaegen2-services-common
     version: ~8.x-0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 9815bf7..572e812 100644 (file)
@@ -199,3 +199,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-bbs-eventprocessor-ms
+  roles:
+    - read
index 9f1600e..540013e 100644 (file)
@@ -30,4 +30,7 @@ dependencies:
     repository: '@local'
   - name: dcaegen2-services-common
     version: ~8.x-0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index be76207..2342470 100644 (file)
@@ -148,7 +148,7 @@ applicationConfig:
 drFeedConfig:
   - feedName: bulk_pm_feed
     owner: dcaecm
-    feedVersion: 0.0
+    feedVersion: "0.0"
     asprClassification: unclassified
     feedDescription: DFC Feed Creation
 
@@ -184,3 +184,9 @@ resources:
       cpu: 1
       memory: 1Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-datafile-collector
+  roles:
+    - read
index 8e53236..6412c80 100644 (file)
@@ -28,3 +28,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index faff44c..0553b52 100644 (file)
@@ -116,3 +116,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-datalake-admin-ui
+  roles:
+    - read
index 34fe22e..e0ac99d 100644 (file)
@@ -28,4 +28,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
-
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index bc5fe3b..9373e82 100644 (file)
@@ -146,3 +146,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-datalake-des
+  roles:
+    - read
index 5ef1871..fded2ce 100644 (file)
@@ -31,4 +31,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
-
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 56017b7..2452dc8 100644 (file)
@@ -173,3 +173,9 @@ postgres:
     pgUserName: datalake
     pgDatabase: datalake
     pgUserExternalSecret: *pgUserCredsSecretName
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-datalake-feeder
+  roles:
+    - read
index 680c0d6..ebfdcdb 100644 (file)
@@ -30,4 +30,7 @@ dependencies:
     repository: '@local'
   - name: dcaegen2-services-common
     version: ~8.x-0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 8847f29..bbf815d 100644 (file)
@@ -190,3 +190,9 @@ postgres:
     pgUserName: heartbeat
     pgDatabase: heartbeat
     pgUserExternalSecret: *pgUserCredsSecretName
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-heartbeat
+  roles:
+    - read
index d457454..9a2dc1a 100644 (file)
@@ -30,3 +30,6 @@ dependencies:
   - name: certManagerCertificate
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 07b1061..650ec03 100644 (file)
@@ -199,3 +199,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-hv-ves-collector
+  roles:
+    - read
index 6b37d36..4239867 100644 (file)
@@ -28,5 +28,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
-
-
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 802c830..5d8c6d5 100644 (file)
@@ -159,3 +159,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-kpi-ms
+  roles:
+    - read
index 0697ceb..3762a2a 100644 (file)
@@ -23,3 +23,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index aa6af35..8ec60a7 100644 (file)
@@ -65,3 +65,8 @@ resources:
       memory: 2Gi
   unlimited: {}
 
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-ms-healthcheck
+  roles:
+    - read
index 5e1b36e..c39c209 100644 (file)
@@ -27,4 +27,7 @@ dependencies:
     repository: '@local'
   - name: dcaegen2-services-common
     version: ~8.x-0
-    repository: 'file://../../common/dcaegen2-services-common'
\ No newline at end of file
+    repository: 'file://../../common/dcaegen2-services-common'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 0dff427..caae1c3 100644 (file)
@@ -160,7 +160,7 @@ applicationConfig:
 drFeedConfig:
   - feedName: bulk_pm_feed
     owner: dcaecm
-    feedVersion: 0.0
+    feedVersion: "0.0"
     asprClassification: unclassified
     feedDescription: DFC Feed Creation
 
@@ -216,3 +216,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-pm-mapper
+  roles:
+    - read
index 4dfc837..44c3664 100644 (file)
@@ -31,3 +31,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 512bd26..b9005f0 100644 (file)
@@ -192,4 +192,10 @@ postgres:
   config:
     pgUserName: pmsh
     pgDatabase: pmsh
-    pgUserExternalSecret: *pgUserCredsSecretName
\ No newline at end of file
+    pgUserExternalSecret: *pgUserCredsSecretName
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-pmsh
+  roles:
+    - read
index 80e79fe..37ffafe 100644 (file)
@@ -26,3 +26,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index c7d4c1d..a7f6291 100644 (file)
@@ -168,3 +168,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-prh
+  roles:
+    - read
index c6804b7..e267e89 100644 (file)
@@ -27,4 +27,7 @@ dependencies:
     repository: '@local'
   - name: dcaegen2-services-common
     version: ~8.x-0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 789a807..ad29e33 100644 (file)
@@ -159,3 +159,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-restconf-collector
+  roles:
+    - read
index 9cab8e9..c6ccf13 100644 (file)
@@ -31,4 +31,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
-
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 5974d80..3300306 100644 (file)
@@ -210,3 +210,9 @@ postgres:
     pgUserName: sliceanalysisms
     pgDatabase: sliceanalysisms
     pgUserExternalSecret: *pgUserCredsSecretName
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-slice-analysis-ms
+  roles:
+    - read
index c6804b7..e267e89 100644 (file)
@@ -27,4 +27,7 @@ dependencies:
     repository: '@local'
   - name: dcaegen2-services-common
     version: ~8.x-0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 60295b9..266da24 100644 (file)
@@ -145,3 +145,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-snmptrap-collector
+  roles:
+    - read
index 3f52d6f..907f8f3 100644 (file)
@@ -31,3 +31,6 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index a0ab079..420814f 100644 (file)
@@ -242,3 +242,9 @@ postgres:
     pgUserName: sonhms
     pgDatabase: sonhms
     pgUserExternalSecret: *pgUserCredsSecretName
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-son-handler
+  roles:
+    - read
index 02a2a67..b1d9fb2 100644 (file)
@@ -26,3 +26,9 @@ dependencies:
   - name: dcaegen2-services-common
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 778f6c9..e7707dc 100644 (file)
@@ -162,3 +162,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-tcagen2
+  roles:
+    - read
index d457454..9a2dc1a 100644 (file)
@@ -30,3 +30,6 @@ dependencies:
   - name: certManagerCertificate
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index bfea92a..f863ff8 100644 (file)
@@ -200,3 +200,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-ves-collector
+  roles:
+    - read
index c6804b7..e267e89 100644 (file)
@@ -27,4 +27,7 @@ dependencies:
     repository: '@local'
   - name: dcaegen2-services-common
     version: ~8.x-0
-    repository: '@local'
\ No newline at end of file
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 7bde2e9..a7186a4 100644 (file)
@@ -189,3 +189,9 @@ resources:
       cpu: 2
       memory: 2Gi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-ves-mapper
+  roles:
+    - read
index 353f4ea..b6eeb5b 100644 (file)
@@ -32,3 +32,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index d95883a..4addb2b 100644 (file)
@@ -136,6 +136,7 @@ spec:
               value: {{ .Values.dcae_ns | default "" }}
             - name: ONAP_NAMESPACE
               value: {{ include "common.namespace" . }}
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - name: {{ include "common.fullname" . }}-dcae-inputs-input
           configMap:
index f3e6c29..b012ee4 100644 (file)
@@ -137,3 +137,9 @@ resources:
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
 # dcae_ns: "onap"
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-bootstrap
+  roles:
+    - read
index 413f997..877839e 100644 (file)
@@ -24,3 +24,6 @@ dependencies:
   - name: cmpv2Config
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 204a3e2..f5fc9ca 100644 (file)
@@ -169,6 +169,7 @@ spec:
             readOnly: true
           securityContext:
             privileged: True
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "create" "dot" . )}}
       volumes:
         - name: {{ include "common.fullname" . }}-config
           configMap:
index e6567d9..17ba5ec 100644 (file)
@@ -127,3 +127,10 @@ persistence:
   mountPath: /dockerdata-nfs
   mountSubPath: dcae-cm/data
   volumeReclaimPolicy: Retain
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-cloudify-manager
+  roles:
+    - create
+
index be5f059..f2c5b02 100644 (file)
@@ -20,3 +20,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 65d0b36..c7e1d70 100644 (file)
@@ -167,6 +167,7 @@ spec:
           - name: {{ include "common.fullname" . }}-logs-i
             mountPath: /var/log/onap/config-binding-service
         {{ end }}
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - name: {{ include "common.fullname" . }}-fb-conf
           configMap:
index 1d42142..719e73f 100644 (file)
@@ -91,3 +91,9 @@ resources:
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
 # dcae_ns: "dcae"
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-config-binding-service
+  roles:
+    - read
index 2fe8479..8759678 100644 (file)
@@ -22,3 +22,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index e93f8d8..dbb6c67 100644 (file)
@@ -161,6 +161,7 @@ spec:
           - mountPath: /usr/share/filebeat/filebeat.yml
             name: filebeat-conf
             subPath: filebeat.yml
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - emptyDir: {}
           name: component-log
index 6640f78..a083b51 100644 (file)
@@ -119,3 +119,9 @@ resources:
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
 # dcae_ns: "dcae"
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-dashboard
+  roles:
+    - read
index f19e412..78bcd76 100644 (file)
@@ -20,3 +20,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 1b39dc6..1ad42e0 100755 (executable)
@@ -154,6 +154,7 @@ spec:
           - mountPath: /usr/share/filebeat/filebeat.yml
             name: filebeat-conf
             subPath: filebeat.yml
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - emptyDir: {}
           name: component-log
index fc4d07d..3435462 100644 (file)
@@ -91,3 +91,8 @@ resources:
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
 # dcae_ns: "dcae"
+
+serviceAccount:
+  nameOverride: dcae-deployment-handler
+  roles:
+    - read
index 0697ceb..3762a2a 100644 (file)
@@ -23,3 +23,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 9514f41..641dfdf 100644 (file)
@@ -74,6 +74,7 @@ spec:
               value: {{ include "common.release" . }}
             - name: DEPLOY_LABEL
               value: cfydeployment
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - name: {{ include "common.fullname" . }}-expected-components
           configMap:
index 221e579..1c6cff0 100644 (file)
@@ -67,3 +67,8 @@ resources:
 # If empty, use the common namespace
 # dcae_ns: "onap"
 
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-healthcheck
+  roles:
+    - read
index 63ac56c..32d8b5b 100644 (file)
@@ -23,3 +23,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index d25d63c..7c3746a 100644 (file)
@@ -152,6 +152,7 @@ spec:
           - mountPath: /usr/share/filebeat/filebeat.yml
             name: filebeat-conf
             subPath: filebeat.yml
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - emptyDir: {}
           name: component-log
index 1bc13ef..fe39269 100644 (file)
@@ -110,3 +110,9 @@ resources:
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
 # dcae_ns: "dcae"
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-inventory-api
+  roles:
+    - read
index f19e412..78bcd76 100644 (file)
@@ -20,3 +20,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 916c5f6..b8c2435 100644 (file)
@@ -145,6 +145,7 @@ spec:
           - mountPath: /usr/share/filebeat/filebeat.yml
             name: filebeat-conf
             subPath: filebeat.yml
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - emptyDir: {}
           name: component-log
index 8f6a1a7..00ce47b 100644 (file)
@@ -92,3 +92,9 @@ resources:
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
 # dcae_ns: "dcae"
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-policy-handler
+  roles:
+    - read
index be5f059..f2c5b02 100644 (file)
@@ -20,3 +20,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 7c55628..6c4e695 100644 (file)
@@ -106,6 +106,7 @@ spec:
               value: "/opt/cert/cacert.pem"
             - name: SCH_ARGS
               value: "prod /opt/config.json"
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - name: {{ include "common.fullname" . }}-sch-config
           configMap:
index c363626..8686db4 100644 (file)
@@ -85,4 +85,10 @@ resources:
   unlimited: {}
 # Kubernetes namespace for components deployed via Cloudify manager
 # If empty, use the common namespace
-# dcae_ns: "dcae"
\ No newline at end of file
+# dcae_ns: "dcae"
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-servicechange-handler
+  roles:
+    - read
index 16f38f8..9a3009d 100644 (file)
@@ -24,3 +24,6 @@ dependencies:
   - name: readinessCheck
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index f2826a7..1c6e359 100644 (file)
@@ -52,6 +52,7 @@ spec:
           volumeMounts:
             - name: schema-map
               mountPath: {{ .Values.schemaMap.directory }}
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - name: schema-map
           configMap:
index 2209feb..873579e 100644 (file)
@@ -64,4 +64,10 @@ resources:
     requests:
       cpu: 1
       memory: 1Gi
-  unlimited: {}
\ No newline at end of file
+  unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: dcae-ves-openapi-manager
+  roles:
+    - read
index f82b410..17b077b 100644 (file)
@@ -68,4 +68,4 @@ dcae-policy-handler:
 dcae-servicechange-handler:
   enabled: true
 dcae-ves-openapi-manager:
-  enabled: true
\ No newline at end of file
+  enabled: true
index 65867f5..3c25c94 100644 (file)
@@ -23,7 +23,10 @@ dependencies:
     version: ~8.x-0
     repository: '@local'
   - name: mariadb-galera
-    alias: mariadb
+    version: ~8.x-0
+    repository: '@local'
+    condition: global.mariadbGalera.localCluster
+  - name: mariadb-init
     version: ~8.x-0
     repository: '@local'
   - name: certInitializer
index a747238..18ab419 100644 (file)
@@ -42,7 +42,7 @@ org.onap.dmaap.datarouter.provserver.isaddressauthenabled = false
 
 # Database access
 org.onap.dmaap.datarouter.db.driver   = org.mariadb.jdbc.Driver
-org.onap.dmaap.datarouter.db.url      = jdbc:mariadb://{{.Values.config.dmaapDrDb.mariadbServiceName}}:{{.Values.config.dmaapDrDb.mariadbServicePort}}/{{.Values.mariadb.db.name}}
+org.onap.dmaap.datarouter.db.url      = jdbc:mariadb://{{ include "common.mariadbService" . }}:{{ include "common.mariadbPort" . }}/{{index .Values "mariadb-galera" "db" "name"}}
 org.onap.dmaap.datarouter.db.login    = ${DB_USERNAME}
 org.onap.dmaap.datarouter.db.password = ${DB_PASSWORD}
 
index 6167896..a3051ee 100644 (file)
@@ -42,8 +42,8 @@ spec:
           command:
           - /app/ready.py
           args:
-          - --container-name
-          - {{ .Values.config.dmaapDrDb.mariadbContName }}
+          - --job-name
+          - {{ include "common.release" . }}-dmaap-dr-mariadb-init-config-job
           env:
           - name: NAMESPACE
             valueFrom:
@@ -81,9 +81,9 @@ spec:
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           env:
           - name: DB_USERNAME
-            {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-dr-db-user-secret" "key" "login") | indent 12 }}
+            {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-dr-db-user-credentials" "key" "login") | indent 12 }}
           - name: DB_PASSWORD
-            {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-dr-db-user-secret" "key" "password") | indent 12 }}
+            {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-dr-db-user-credentials" "key" "password") | indent 12 }}
           volumeMounts: {{ include "common.certInitializer.volumeMount" . | nindent 10 }}
           - mountPath: /etc/localtime
             name: localtime
index 7564ccf..cf25468 100644 (file)
@@ -19,17 +19,23 @@ global:
   nodePortPrefix: 302
   loggingDirectory: /opt/app/datartr/logs
   persistence: {}
+  mariadbGalera: &mariadbGalera
+    #This flag allows DMAAP-DR to instantiate its own mariadb-galera cluster
+    localCluster: false
+    service: mariadb-galera
+    internalPort: 3306
+    nameOverride: mariadb-galera
 
 #################################################################
 # Secrets metaconfig
 #################################################################
 secrets:
-  - uid: dmaap-dr-db-user-secret
-    name: &dbSecretName '{{ include "common.release" . }}-dmaap-dr-db-user-secret'
+  - name: &dbUserSecretName '{{ include "common.release" . }}-dmaap-dr-db-user-credentials'
+    uid: 'dmaap-dr-db-user-credentials'
     type: basicAuth
-    externalSecret: '{{ tpl (default "" .Values.config.dmaapDrDb.userCredentialsExternalSecret) . }}'
-    login: '{{ .Values.config.dmaapDrDb.userName }}'
-    password: '{{ .Values.config.dmaapDrDb.userPassword }}'
+    externalSecret: '{{ ternary "" (tpl (default "" (index .Values "mariadb-galera" "db" "externalSecret")) .) (hasSuffix "dmaap-dr-db-user-credentials" (index .Values "mariadb-galera" "db" "externalSecret"))}}'
+    login: '{{ index .Values "mariadb-galera" "db" "user" }}'
+    password: '{{ index .Values "mariadb-galera" "db" "password" }}'
 
 #################################################################
 # Application configuration defaults.
@@ -92,31 +98,29 @@ config:
     # and supports the following log levels: TRACE, DEBUG, INFO, WARN, ERROR, OFF
     logLevel: "INFO"
 
-  # dr-prov db configuration
-  dmaapDrDb:
-    mariadbServiceName: dmaap-dr-db
-    mariadbServicePort: 3306
-    mariadbContName: &dmaap-dr-db dmaap-dr-db
-    userName: datarouter
-#    userPassword: password
-#    userCredentialsExternalSecret: some secret
-
 # mariadb-galera configuration
-mariadb:
-  name: *dmaap-dr-db
-  nameOverride: *dmaap-dr-db
+mariadb-galera:
+  nameOverride: &dbServer dmaap-dr-db
   replicaCount: 1
   db:
-    externalSecret: *dbSecretName
-    name: datarouter
+    name: &mysqlDbName datarouter
+    user: datarouter
+    # password:
+    externalSecret: *dbUserSecretName 
   service:
-    name: dmaap-dr-db
+    name: *dbServer
   nfsprovisionerPrefix: dmaap-dr-db
   persistence:
     size: 1Gi
     mountSubPath: data-router/dr-db-data
   serviceAccount:
-    nameOverride: *dmaap-dr-db
+    nameOverride: *dbServer
+
+mariadb-init:
+  config:
+    userCredentialsExternalSecret: *dbUserSecretName
+    mysqlDatabase: *mysqlDbName
+  nameOverride: dmaap-dr-mariadb-init
 
 #################################################################
 # AAF part
index b9e4a44..6070b0c 100644 (file)
@@ -30,3 +30,6 @@ dependencies:
   - name: repositoryGenerator
     version: ~8.x-0
     repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
index 1a303ff..8e28071 100644 (file)
@@ -138,7 +138,7 @@ spec:
             mountPath: /var/log/onap
           - name: {{ include "common.fullname" . }}-data-filebeat
             mountPath: /usr/share/filebeat/data
-
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
       volumes:
         - name: {{ include "common.fullname" . }}-etsicatalog
         {{- if .Values.persistence.enabled }}
index 1672b6d..3af4bae 100644 (file)
@@ -177,3 +177,9 @@ resources:
       cpu: 200m
       memory: 500Mi
   unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: modeling-etsicatalog
+  roles:
+    - read
index ef36b13..5faae36 100644 (file)
@@ -52,7 +52,7 @@ certInitializer:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/msb/msb_apigateway:1.3.0
+image: onap/msb/msb_apigateway:1.3.1
 pullPolicy: Always
 istioSidecar: true
 
index 4610232..9b9f805 100644 (file)
@@ -52,7 +52,7 @@ certInitializer:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/msb/msb_apigateway:1.3.0
+image: onap/msb/msb_apigateway:1.3.1
 pullPolicy: Always
 istioSidecar: true
 
index ec3b956..3031968 100644 (file)
@@ -24,7 +24,7 @@ global:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/multicloud/k8s:0.9.0
+image: onap/multicloud/k8s:0.9.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 61d4314..0a1e769 100755 (executable)
@@ -1,6 +1,7 @@
 # Copyright Â© 2019 Amdocs, Bell Canada
 # Copyright (c) 2020 Nordix Foundation, Modifications
 # Modifications Copyright Â© 2020 Nokia
+# Modifications Copyright Â© 2021 Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -110,6 +111,10 @@ dependencies:
     version: ~8.x-0
     repository: '@local'
     condition: portal.enabled
+  - name: postgres
+    version: ~8.x-0
+    repository: '@local'
+    condition: postgres.enabled
   - name: oof
     version: ~8.x-0
     repository: '@local'
@@ -169,3 +174,7 @@ dependencies:
     version: ~8.x-0
     repository: '@local'
     condition: roles-wrapper.enabled
+  - name: timescaledb
+    version: ~8.x-0
+    repository: '@local'
+    condition: timescaledb.enabled
index 91e0157..229717a 100644 (file)
@@ -1,6 +1,7 @@
 # Copyright Â© 2019 Amdocs, Bell Canada
 # Copyright (c) 2020 Nordix Foundation, Modifications
 # Modifications Copyright Â© 2020 Nokia
+# Modifications Copyright Â© 2021 Orange
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -24,6 +25,8 @@ cassandra:
   enabled: true
 mariadb-galera:
   enabled: true
+postgres:
+  enabled: true
 aaf:
   enabled: true
 aai:
index 63461d9..fb40214 100755 (executable)
@@ -16,7 +16,7 @@
 global: # global defaults
   nodePortPrefix: 302
   image:
-    optf_has: onap/optf-has:2.2.0
+    optf_has: onap/optf-has:2.2.1
 
 #################################################################
 # secrets metaconfig
index 9e799e1..aa5b8fc 100755 (executable)
@@ -14,7 +14,7 @@
 
 global:
   image:
-    optf_has: onap/optf-has:2.2.0
+    optf_has: onap/optf-has:2.2.1
 
 #################################################################
 # Secrets metaconfig
index 915ffc0..666818d 100755 (executable)
@@ -14,7 +14,7 @@
 
 global:
   image:
-    optf_has: onap/optf-has:2.2.0
+    optf_has: onap/optf-has:2.2.1
 
 #################################################################
 # secrets metaconfig
index 915ffc0..666818d 100755 (executable)
@@ -14,7 +14,7 @@
 
 global:
   image:
-    optf_has: onap/optf-has:2.2.0
+    optf_has: onap/optf-has:2.2.1
 
 #################################################################
 # secrets metaconfig
index 915ffc0..666818d 100755 (executable)
@@ -14,7 +14,7 @@
 
 global:
   image:
-    optf_has: onap/optf-has:2.2.0
+    optf_has: onap/optf-has:2.2.1
 
 #################################################################
 # secrets metaconfig
index 9a8b605..248d3af 100755 (executable)
@@ -19,7 +19,7 @@
 global:
   commonConfigPrefix: onap-oof-has
   image:
-    optf_has: onap/optf-has:2.2.0
+    optf_has: onap/optf-has:2.2.1
   persistence:
     enabled: true
 
index aff6342..441a77a 100755 (executable)
@@ -43,11 +43,18 @@ aaf_sms_timeout: {{ .Values.config.aaf_sms_timeout }}
 secret_domain: {{ .Values.config.secret_domain }}
 aaf_ca_certs: {{ .Values.config.aaf_ca_certs }}
 
+configClientType: {{ .Values.config.configClientType }}
+
 # config db api
 configDbUrl: {{ .Values.config.configDbUrl }}
 configDbGetCellListUrl: {{ .Values.config.configDbGetCellListUrl }}
 configDbGetNbrListUrl: {{ .Values.config.configDbGetNbrListUrl }}
 
+# cps api
+cpsUrl: {{ .Values.config.cps.Url }}
+cpsCellListUrl: {{ .Values.config.cps.cellListUrl }}
+cpsNbrListUrl: {{ .Values.config.cps.nbrListUrl }}
+
 # AAI api
 aaiUrl: {{ .Values.config.aaiUrl }}
 aaiGetLinksUrl: {{ .Values.config.aaiGetLinksUrl }}
index 2b1eeba..0b19678 100644 (file)
@@ -82,7 +82,7 @@ spec:
           - |
             grep -v '^$'  /opt/osdf/osaaf/local/org.onap.oof.crt > /tmp/oof.crt
             cat /tmp/oof.crt /opt/app/ssl_cert/intermediate_root_ca.pem /opt/app/ssl_cert/aaf_root_ca.cer >> /opt/osdf/org.onap.oof.crt
-            ./osdfapp.sh -x osdfapp.py
+            python osdfapp.py
           ports:
           - containerPort: {{ .Values.service.internalPort }}
           # disable liveness probe when breakpoints set in debugger
index c7400e8..64c3e0a 100644 (file)
@@ -35,7 +35,7 @@ secrets:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/optf-osdf:3.0.4
+image: onap/optf-osdf:3.0.6
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -83,10 +83,17 @@ config:
   aaf_sms_timeout: 30
   secret_domain: osdf
   aaf_ca_certs: /opt/app/ssl_cert/aaf_root_ca.cer
+  configClientType: cps
   # config db api
   configDbUrl: http://configdb:8080
   configDbGetCellListUrl: 'api/sdnc-config-db/v3/getCellList'
   configDbGetNbrListUrl: 'api/sdnc-config-db/v3/getNbrList'
+  # cps api
+  cps:
+    url: cps-tbdmt:8080/execute
+    cellListUrl: 'ran-network/getCellList'
+    nbrListUrl: 'ran-network/getNbrList'
+
   #aai api
   aaiUrl: https://aai:8443
   aaiGetLinksUrl: /aai/v16/network/logical-links
index fbd545c..6cabde7 100644 (file)
@@ -79,7 +79,7 @@ tls:
     selfsigning:
       name: &selfSigningIssuer cmpv2-selfsigning-issuer
     ca:
-      name: &caIssuer cmpv2-ca-issuer
+      name: &caIssuer cmpv2-issuer-onap
       secret:
         name: &caKeyPairSecret  cmpv2-ca-key-pair
   server:
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/Chart.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/Chart.yaml
new file mode 100644 (file)
index 0000000..b7c44d7
--- /dev/null
@@ -0,0 +1,22 @@
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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=========================================================
+
+apiVersion: v1
+description: ONAP Policy Clamp Controlloop Runtime
+name: policy-clamp-cl-runtime
+version: 8.0.0
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/requirements.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/requirements.yaml
new file mode 100644 (file)
index 0000000..7878f91
--- /dev/null
@@ -0,0 +1,31 @@
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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=========================================================
+
+dependencies:
+  - name: common
+    version: ~8.x-0
+    repository: '@local'
+  - name: certInitializer
+    version: ~8.x-0
+    repository: '@local'
+  - name: repositoryGenerator
+    version: ~8.x-0
+    repository: '@local'
+  - name: serviceAccount
+    version: ~8.x-0
+    repository: '@local'
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/resources/config/clRuntimeParameters.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/resources/config/clRuntimeParameters.yaml
new file mode 100644 (file)
index 0000000..250e912
--- /dev/null
@@ -0,0 +1,79 @@
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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:
+  security:
+    user:
+      name: ${RUNTIME_USER}
+      password: ${RUNTIME_PASSWORD}
+  http:
+    converters:
+      preferred-json-mapper: gson
+
+security:
+  enable-csrf: false
+
+server:
+  port: 6969
+  servlet:
+    context-path: /onap/controlloop
+  error:
+    path: /error
+
+
+runtime:
+  supervisionScannerIntervalSec: 1000
+  participantClUpdateIntervalSec: 1000
+  participantClStateChangeIntervalSec: 1000
+  participantParameters:
+    heartBeatMs: 120000
+    maxMessageAgeMs: 600000
+    maxStatusWaitMs: 100000
+    updateParameters:
+      maxRetryCount: 3
+      maxWaitMs: 100000
+  databaseProviderParameters:
+    name: PolicyProviderParameterGroup
+    implementation: org.onap.policy.models.provider.impl.DatabasePolicyModelsProviderImpl
+    databaseDriver: org.mariadb.jdbc.Driver
+    databaseUrl: jdbc:mariadb://{{ .Values.db.service.name }}:{{ .Values.db.service.internalPort }}/controlloop
+    databaseUser: ${SQL_USER}
+    databasePassword: ${SQL_PASSWORD}
+    persistenceUnit: CommissioningMariaDb
+  topicParameterGroup:
+    topicSources:
+      -
+        topic: POLICY-CLRUNTIME-PARTICIPANT
+        servers:
+          - ${topicServer:message-router}
+        topicCommInfrastructure: dmaap
+        useHttps: true
+        fetchTimeout: 15000
+    topicSinks:
+      -
+        topic: POLICY-CLRUNTIME-PARTICIPANT
+        servers:
+          - ${topicServer:message-router}
+        topicCommInfrastructure: dmaap
+        useHttps: true
+
+management:
+  endpoints:
+    web:
+      exposure:
+        include: health, metrics, prometheus
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/resources/config/logback.xml b/kubernetes/policy/components/policy-clamp-cl-runtime/resources/config/logback.xml
new file mode 100644 (file)
index 0000000..43cea65
--- /dev/null
@@ -0,0 +1,103 @@
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2021 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=========================================================
+-->
+
+<configuration scan="true" scanPeriod="30 seconds" debug="false">
+
+    <appender name="ErrorOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>/var/log/onap/policy/pap/error.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>/var/log/onap/policy/policy-clamp-cl-runtime/error.%d{yyyy-MM-dd}.%i.log.zip
+            </fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>30</maxHistory>
+            <totalSizeCap>10GB</totalSizeCap>
+        </rollingPolicy>
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>WARN</level>
+        </filter>
+        <encoder>
+            <pattern>[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%level|%logger{0}|%thread] %msg%n</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="AsyncErrorOut" class="ch.qos.logback.classic.AsyncAppender">
+        <appender-ref ref="ErrorOut" />
+    </appender>
+
+    <appender name="DebugOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>/var/log/onap/policy/pap/debug.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>/var/log/onap/policy/policy-clamp-cl-runtime/debug.%d{yyyy-MM-dd}.%i.log.zip
+            </fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>30</maxHistory>
+            <totalSizeCap>10GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%level|%logger{0}|%thread] %msg%n</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="AsyncDebugOut" class="ch.qos.logback.classic.AsyncAppender">
+        <appender-ref ref="DebugOut" />
+    </appender>
+
+    <appender name="NetworkOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>/var/log/onap/policy/policy-clamp-cl-runtime/network.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>/var/log/onap/policy/policy-clamp-cl-runtime/network.%d{yyyy-MM-dd}.%i.log.zip
+            </fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>30</maxHistory>
+            <totalSizeCap>10GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%t]%m%n</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="AsyncNetworkOut" class="ch.qos.logback.classic.AsyncAppender">
+        <appender-ref ref="NetworkOut" />
+    </appender>
+
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <Pattern>[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%level|%logger{0}|%thread] %msg%n</Pattern>
+        </encoder>
+    </appender>
+
+    <appender name="AsyncStdOut" class="ch.qos.logback.classic.AsyncAppender">
+        <appender-ref ref="STDOUT" />
+    </appender>
+
+    <logger name="network" level="INFO" additivity="false">
+        <appender-ref ref="AsyncNetworkOut" />
+        <appender-ref ref="AsyncStdOut" />
+    </logger>
+
+    <logger name="org.eclipse.jetty.server.RequestLog" level="info" additivity="false">
+        <appender-ref ref="AsyncNetworkOut" />
+        <appender-ref ref="AsyncStdOut" />
+    </logger>
+
+    <root level="INFO">
+        <appender-ref ref="AsyncDebugOut" />
+        <appender-ref ref="AsyncErrorOut" />
+        <appender-ref ref="AsyncStdOut" />
+    </root>
+
+</configuration>
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/templates/configmap.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..66c096d
--- /dev/null
@@ -0,0 +1,38 @@
+{{/*
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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=========================================================
+*/}}
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ include "common.release" . }}
+    heritage: {{ .Release.Service }}
+{{- with .Files.Glob "resources/config/*store" }}
+binaryData:
+{{- range $path, $bytes := . }}
+  {{ base $path }}: {{ $.Files.Get $path | b64enc | quote }}
+{{- end }}
+{{- end }}
+data:
+{{ tpl (.Files.Glob "resources/config/*.{json,xml,yaml}").AsConfig . | indent 2 }}
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/templates/deployment.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..92e5c9e
--- /dev/null
@@ -0,0 +1,131 @@
+{{/*
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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=========================================================
+*/}}
+
+apiVersion: apps/v1
+kind: Deployment
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
+spec:
+  selector: {{- include "common.selectors" . | nindent 4 }}
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata: {{- include "common.templateMetadata" . | nindent 6 }}
+    spec:
+      initContainers:
+      - command:
+        - /app/ready.py
+        args:
+        - --job-name
+        - {{ include "common.release" . }}-policy-galera-config
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: {{ include "repositoryGenerator.image.readiness" . }}
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-readiness
+      - command:
+        - sh
+        args:
+        - -c
+        - "cd /config-input && for PFILE in `ls -1`; do envsubst <${PFILE} >/config/${PFILE}; done"
+        env:
+        - name: SQL_USER
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 10 }}
+        - name: SQL_PASSWORD
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 10 }}
+        - name: RUNTIME_USER
+            {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "runtime-secret" "key" "login") | indent 10 }}
+        - name: RUNTIME_PASSWORD
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "runtime-secret" "key" "password") | indent 10 }}
+        volumeMounts:
+        - mountPath: /config-input
+          name: cl-runtime-config
+        - mountPath: /config
+          name: cl-runtime-config-processed
+        image: {{ include "repositoryGenerator.image.envsubst" . }}
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-update-config
+{{ include "common.certInitializer.initContainer" . | indent 6 }}
+      containers:
+        - name: {{ include "common.name" . }}
+          image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+{{- if .Values.global.aafEnabled }}
+          command: ["sh","-c"]
+          args: ["source {{ .Values.certInitializer.credsPath }}/.ci;\
+                  /opt/app/policy/clamp/bin/controlloop-runtime.sh /opt/app/policy/clamp/etc/mounted/clRuntimeParameters.yaml"]
+{{- else }}
+          command: ["/opt/app/policy/clamp/bin/controlloop-runtime.sh"]
+          args: ["/opt/app/policy/clamp/etc/mounted/clRuntimeParameters.yaml"]
+          env:
+          - name: KEYSTORE_PASSWD
+            {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "keystore-password" "key" "password") | indent 12 }}
+          - name: TRUSTSTORE_PASSWD
+            {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "truststore-password" "key" "password") | indent 12 }}
+{{- end }}
+          ports: {{ include "common.containerPorts" . | nindent 12  }}
+          # disable liveness probe when breakpoints set in debugger
+          # so K8s doesn't restart unresponsive container
+          {{- if eq .Values.liveness.enabled true }}
+          livenessProbe:
+            tcpSocket:
+              port: {{ .Values.liveness.port }}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end -}}
+          readinessProbe:
+            tcpSocket:
+              port: {{ .Values.readiness.port }}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          volumeMounts:
+{{ include "common.certInitializer.volumeMount" . | indent 10 }}
+          - mountPath: /etc/localtime
+            name: localtime
+            readOnly: true
+          - mountPath: /opt/app/policy/clamp/etc/mounted
+            name: cl-runtime-config-processed
+          resources:
+{{ include "common.resources" . }}
+        {{- if .Values.nodeSelector }}
+        nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+        {{- end -}}
+        {{- if .Values.affinity }}
+        affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+        {{- end }}
+      serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
+      volumes:
+{{ include "common.certInitializer.volumes" . | indent 8 }}
+        - name: localtime
+          hostPath:
+             path: /etc/localtime
+        - name: cl-runtime-config
+          configMap:
+            name: {{ include "common.fullname" . }}-configmap
+            defaultMode: 0755
+        - name: cl-runtime-config-processed
+          emptyDir:
+            medium: Memory
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/templates/secrets.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/templates/secrets.yaml
new file mode 100644 (file)
index 0000000..abbfa3f
--- /dev/null
@@ -0,0 +1,21 @@
+{{/*
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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=========================================================
+*/}}
+
+{{ include "common.secretFast" . }}
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/templates/service.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/templates/service.yaml
new file mode 100644 (file)
index 0000000..be2449f
--- /dev/null
@@ -0,0 +1,21 @@
+{{/*
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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=========================================================
+*/}}
+
+{{ include "common.service" . }}
diff --git a/kubernetes/policy/components/policy-clamp-cl-runtime/values.yaml b/kubernetes/policy/components/policy-clamp-cl-runtime/values.yaml
new file mode 100644 (file)
index 0000000..4cf9e67
--- /dev/null
@@ -0,0 +1,154 @@
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2021 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=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+  nodePortPrefixExt: 304
+  persistence: {}
+  aafEnabled: true
+
+#################################################################
+# Secrets metaconfig
+#################################################################
+secrets:
+  - uid: db-secret
+    type: basicAuth
+    externalSecret: '{{ tpl (default "" .Values.db.credsExternalSecret) . }}'
+    login: '{{ .Values.db.user }}'
+    password: '{{ .Values.db.password }}'
+    passwordPolicy: required
+  - uid: keystore-password
+    type: password
+    externalSecret: '{{ tpl (default "" .Values.certStores.keyStorePasswordExternalSecret) . }}'
+    password: '{{ .Values.certStores.keyStorePassword }}'
+    passwordPolicy: required
+  - uid: truststore-password
+    type: password
+    externalSecret: '{{ tpl (default "" .Values.certStores.trustStorePasswordExternalSecret) . }}'
+    password: '{{ .Values.certStores.trustStorePassword }}'
+    passwordPolicy: required
+  - uid: runtime-secret
+    type: basicAuth
+    externalSecret: '{{ tpl (default "" .Values.config.appUserExternalSecret) . }}'
+    login: '{{ .Values.config.policyAppUserName }}'
+    password: '{{ .Values.config.policyAppUserPassword }}'
+    passwordPolicy: required
+
+certStores:
+  keyStorePassword: Pol1cy_0nap
+  trustStorePassword: Pol1cy_0nap
+
+certInitializer:
+  nameOverride: policy-clamp-cl-runtime-cert-initializer
+  aafDeployFqi: deployer@people.osaaf.org
+  aafDeployPass: demo123456!
+  fqdn: policy
+  fqi: policy@policy.onap.org
+  public_fqdn: policy.onap.org
+  cadi_latitude: "0.0"
+  cadi_longitude: "0.0"
+  credsPath: /opt/app/osaaf/local
+  app_ns: org.osaaf.aaf
+  uid: 100
+  gid: 101
+  aaf_add_config: >
+    echo "export KEYSTORE='{{ .Values.credsPath }}/org.onap.policy.p12'" > {{ .Values.credsPath }}/.ci;
+    echo "export KEYSTORE_PASSWD='${cadi_keystore_password_p12}'" >> {{ .Values.credsPath }}/.ci;
+    chown -R {{ .Values.uid }}:{{ .Values.gid }} $(dirname {{ .Values.credsPath }});
+
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+image: onap/policy-clamp-cl-runtime:6.1.2
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+  policyAppUserName: runtimeUser
+  policyAppUserPassword: none
+
+db:
+  user: policy_user
+  password: policy_user
+  service:
+    name: policy-mariadb
+    internalPort: 3306
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 20
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+  port: http-api
+
+readiness:
+  initialDelaySeconds: 20
+  periodSeconds: 10
+  port: http-api
+
+service:
+  type: ClusterIP
+  name: policy-clamp-cl-runtime
+  useNodePortExt: true
+  ports:
+  - name: http-api
+    port: 6969
+    nodePort: 42
+
+ingress:
+  enabled: false
+
+flavor: small
+resources:
+  small:
+    limits:
+      cpu: 1
+      memory: 4Gi
+    requests:
+      cpu: 100m
+      memory: 1Gi
+  large:
+    limits:
+      cpu: 2
+      memory: 8Gi
+    requests:
+      cpu: 200m
+      memory: 2Gi
+  unlimited: {}
+
+#Pods Service Account
+serviceAccount:
+  nameOverride: policy-clamp-cl-runtime
+  roles:
+    - read
index b391d27..0ba1535 100755 (executable)
@@ -61,6 +61,10 @@ dependencies:
     version: ~8.x-0
     repository: 'file://components/policy-clamp-cl-k8s-ppnt'
     condition: policy-clamp-cl-k8s-ppnt.enabled
+  - name: policy-clamp-cl-runtime
+    version: ~8.x-0
+    repository: 'file://components/policy-clamp-cl-runtime'
+    condition: policy-clamp-cl-runtime.enabled
   - name: policy-gui
     version: ~8.x-0
     repository: 'file://components/policy-gui'
index 7b94372..787ec0a 100755 (executable)
@@ -2,6 +2,7 @@
 {{/*
 # Copyright Â© 2017 Amdocs, Bell Canada, AT&T
 # Modifications Copyright Â© 2018, 2020 AT&T Intellectual Property
+# Modifications Copyright (C) 2021 Nordix Foundation.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -18,7 +19,7 @@
 
 mysql() { /usr/bin/mysql  -h ${MYSQL_HOST} -P ${MYSQL_USER} "$@"; };
 
-for db in migration pooling policyadmin policyclamp operationshistory
+for db in migration pooling policyadmin policyclamp operationshistory controlloop
 do
     mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "CREATE DATABASE IF NOT EXISTS ${db};"
     mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "GRANT ALL PRIVILEGES ON \`${db}\`.* TO '${MYSQL_USER}'@'%' ;"
index 054c7be..2960369 100755 (executable)
@@ -45,6 +45,13 @@ secrets:
     login: '{{ index .Values "mariadb-galera" "db" "user" }}'
     password: '{{ index .Values "mariadb-galera" "db" "password" }}'
     passwordPolicy: generate
+  - uid: policy-app-user-creds
+    name: &policyAppCredsSecret '{{ include "common.release" . }}-policy-app-user-creds'
+    type: basicAuth
+    externalSecret: '{{ tpl (default "" .Values.config.policyAppUserExternalSecret) . }}'
+    login: '{{ .Values.config.policyAppUserName }}'
+    password: '{{ .Values.config.policyAppUserPassword }}'
+    passwordPolicy: generate
 
 db: &dbSecretsHook
   credsExternalSecret: *dbSecretName
@@ -70,12 +77,19 @@ policy-distribution:
 policy-clamp-be:
   enabled: true
   db: *dbSecretsHook
+  config:
+    appUserExternalSecret: *policyAppCredsSecret
 policy-clamp-fe:
   enabled: true
 policy-clamp-cl-k8s-ppnt:
   enabled: true
 policy-nexus:
   enabled: false
+policy-clamp-cl-runtime:
+  enabled: true
+  db: *dbSecretsHook
+  config:
+    appUserExternalSecret: *policyAppCredsSecret
 policy-gui:
   enabled: true
 
@@ -119,6 +133,10 @@ readiness:
   initialDelaySeconds: 10
   periodSeconds: 10
 
+
+config:
+  policyAppUserName: runtimeUser
+
 mariadb-galera:
   # mariadb-galera.config and global.mariadb.config must be equals
   db:
index 070583b..d769f62 100644 (file)
@@ -35,8 +35,8 @@ global:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/sdc-backend-all-plugins:1.9.0
-backendInitImage: onap/sdc-backend-init:1.9.0
+image: onap/sdc-backend-all-plugins:1.9.3
+backendInitImage: onap/sdc-backend-init:1.9.3
 
 pullPolicy: Always
 
index fed4769..223e023 100644 (file)
@@ -38,8 +38,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-cassandra:1.9.0
-cassandraInitImage: onap/sdc-cassandra-init:1.9.0
+image: onap/sdc-cassandra:1.9.3
+cassandraInitImage: onap/sdc-cassandra-init:1.9.3
 pullPolicy: Always
 
 config:
index e9b2eee..d563e80 100644 (file)
@@ -47,7 +47,7 @@ certInitializer:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/sdc-frontend:1.9.0
+image: onap/sdc-frontend:1.9.3
 pullPolicy: Always
 
 config:
index aa7d535..1bce6b1 100644 (file)
@@ -59,8 +59,8 @@ certInitializer:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/sdc-onboard-backend:1.9.0
-onboardingInitImage: onap/sdc-onboard-cassandra-init:1.9.0
+image: onap/sdc-onboard-backend:1.9.3
+onboardingInitImage: onap/sdc-onboard-cassandra-init:1.9.3
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 0d180ec..95aba91 100644 (file)
@@ -49,7 +49,7 @@ secrets:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/sdnc-dmaap-listener-image:2.1.6
+image: onap/sdnc-dmaap-listener-image:2.2.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 1f0dbde..51263cf 100644 (file)
@@ -67,7 +67,7 @@ spec:
       containers:
         - name: {{ include "common.name" . }}
           command: ["/bin/bash"]
-          args: ["-c", "cd /opt/onap/ccsdk && ./startAnsibleServer.sh"]
+          args: ["-c", "cd /opt/ansible-server && ./startAnsibleServer.sh"]
 
           image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
index 13c53d3..7294dbc 100644 (file)
@@ -49,7 +49,7 @@ secrets:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/sdnc-ansible-server-image:2.1.6
+image: onap/sdnc-ansible-server-image:2.2.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 3d9f861..803488b 100644 (file)
@@ -23,7 +23,7 @@ global:
 # Application configuration defaults.
 #################################################################
 # application image
-image: "onap/sdnc-web-image:2.1.6"
+image: "onap/sdnc-web-image:2.2.0"
 pullPolicy: Always
 
 config:
index c35095c..b58154f 100644 (file)
@@ -55,7 +55,7 @@ secrets:
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/sdnc-ueb-listener-image:2.1.6
+image: onap/sdnc-ueb-listener-image:2.2.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 1c9a422..785435a 100644 (file)
@@ -206,7 +206,7 @@ certificates:
 # application images
 
 pullPolicy: Always
-image: onap/sdnc-image:2.1.6
+image: onap/sdnc-image:2.2.0
 
 # flag to enable debugging - application support required
 debugEnabled: false
index 9226434..c99465b 100755 (executable)
@@ -17,6 +17,7 @@
 aai:
   auth: {{ include "so.helpers.profileProperty" (dict "condition" .Values.global.security.aaf.enabled "value1" .Values.global.aaf.auth.header "value2" .Values.server.aai.auth ) }}
   endpoint: https://aai.{{ include "common.namespace" . }}:8443
+  enabled: {{ .Values.global.aai.enabled }}
 logging:
   path: logs
 spring:
index f3d53c9..b7e8dd9 100755 (executable)
@@ -26,6 +26,8 @@ global:
   aaf:
     auth:
       header: ${AAF_AUTH}
+  aai:
+    enabled: true
 #################################################################
 # Secrets metaconfig
 #################################################################
@@ -74,7 +76,7 @@ secrets:
 #################################################################
 # Application configuration defaults.
 #################################################################
-image: onap/so/so-cnf-adapter:1.8.3
+image: onap/so/so-cnf-adapter:1.9.1
 pullPolicy: Always
 
 readinessCheck:
index 980e462..6017f26 100644 (file)
@@ -25,7 +25,7 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/usecase-ui-server:4.0.3
+image: onap/usecase-ui-server:4.0.5
 pullPolicy: Always
 
 # application configuration
index ddac84e..32b8449 100644 (file)
@@ -24,7 +24,7 @@ subChartsOnly:
 flavor: small
 
 # application image
-image: onap/usecase-ui:4.0.3
+image: onap/usecase-ui:4.0.5
 pullPolicy: Always
 
 # application configuration
index ce52a3b..dcdcef8 100644 (file)
@@ -26,7 +26,7 @@ global:
 # application image
 flavor: small
 
-image: onap/vfc/gvnfmdriver:1.4.1
+image: onap/vfc/gvnfmdriver:1.4.3
 pullPolicy: Always
 
 #Istio sidecar injection policy
index ead1a4c..be78200 100644 (file)
@@ -41,7 +41,7 @@ secrets:
 # application image
 flavor: small
 
-image: onap/vfc/nslcm:1.4.3
+image: onap/vfc/nslcm:1.4.4
 pullPolicy: Always
 
 #Istio sidecar injection policy
index 6ea05d7..0bbb395 100644 (file)
@@ -24,7 +24,7 @@ global:
 # application image
 flavor: small
 
-image: onap/vfc/db:1.3.4
+image: onap/vfc/db:1.3.5
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index cd5e999..9098b44 100644 (file)
@@ -41,7 +41,7 @@ secrets:
 # application image
 flavor: small
 
-image: onap/vfc/vnflcm:1.4.1
+image: onap/vfc/vnflcm:1.4.2
 pullPolicy: Always
 
 #Istio sidecar injection policy
index 35aa0aa..f8a5b28 100644 (file)
@@ -41,7 +41,7 @@ secrets:
 # application image
 flavor: small
 
-image: onap/vfc/vnfmgr:1.4.0
+image: onap/vfc/vnfmgr:1.4.1
 pullPolicy: Always
 
 #Istio sidecar injection policy
index 204d414..74e5b21 100644 (file)
@@ -41,7 +41,7 @@ secrets:
 # application image
 flavor: small
 
-image: onap/vfc/vnfres:1.3.9
+image: onap/vfc/vnfres:1.4.0
 pullPolicy: Always
 
 #Istio sidecar injection policy
index 9edcfbf..643c3fb 100644 (file)
@@ -26,7 +26,7 @@ global:
 # application image
 flavor: small
 
-image: onap/vfc/ztevnfmdriver:1.4.0
+image: onap/vfc/ztevnfmdriver:1.4.1
 pullPolicy: Always
 
 #Istio sidecar injection policy