Merge "[GENERAL] Use readiness container v3.0.1"
authorKrzysztof Opasiak <k.opasiak@samsung.com>
Fri, 4 Sep 2020 16:34:04 +0000 (16:34 +0000)
committerGerrit Code Review <gerrit@onap.org>
Fri, 4 Sep 2020 16:34:04 +0000 (16:34 +0000)
22 files changed:
kubernetes/aai
kubernetes/cds/charts/cds-blueprints-processor/resources/config/logback.xml
kubernetes/cds/charts/cds-blueprints-processor/values.yaml
kubernetes/cds/charts/cds-sdc-listener/resources/config/logback.xml
kubernetes/cds/charts/cds-sdc-listener/values.yaml
kubernetes/sdnc/templates/sdnrdb-init-job.yaml
kubernetes/sdnc/templates/statefulset.yaml
kubernetes/sdnc/values.yaml
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/Chart.yaml [new file with mode: 0644]
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/resources/config/overrides/override.yaml [new file with mode: 0644]
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/configmap.yaml [new file with mode: 0644]
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/deployment.yaml [new file with mode: 0644]
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/ingress.yaml [new file with mode: 0644]
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/secret.yaml [new file with mode: 0644]
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/service.yaml [new file with mode: 0644]
kubernetes/so/charts/so-etsi-nfvo-ns-lcm/values.yaml [new file with mode: 0644]
kubernetes/so/charts/so-mariadb/resources/config/docker-entrypoint-initdb.d/04-create-nfvo-db.sh [new file with mode: 0755]
kubernetes/so/charts/so-mariadb/resources/config/docker-entrypoint-initdb.d/98-create-so-user.sh [moved from kubernetes/so/charts/so-mariadb/resources/config/docker-entrypoint-initdb.d/04-create-so-user.sh with 94% similarity]
kubernetes/so/charts/so-mariadb/resources/config/docker-entrypoint-initdb.d/99-create-so-admin.sh [moved from kubernetes/so/charts/so-mariadb/resources/config/docker-entrypoint-initdb.d/05-create-so-admin.sh with 95% similarity]
kubernetes/so/charts/so-mariadb/templates/job.yaml
kubernetes/so/charts/so-mariadb/values.yaml
kubernetes/so/values.yaml

index bdbb699..1990a02 160000 (submodule)
@@ -1 +1 @@
-Subproject commit bdbb69908135f5cee7c27fab7fbbcdde17ff5d57
+Subproject commit 1990a02ce9295df7c94009401c24fa226a10f8e8
index 349336e..88ac8d9 100755 (executable)
         </encoder>
     </appender>
 
-    <logger name="org.springframework" level="info"/>
-    <logger name="org.springframework.web" level="info"/>
-    <logger name="org.springframework.security.web.authentication" level="warn"/>
-    <logger name="org.hibernate" level="error"/>
-    <logger name="org.onap.ccsdk.cds" level="info"/>
+    <logger name="org.springframework" level="{{ .Values.logback.logger.springframework }}"/>
+    <logger name="org.springframework.web" level="{{ .Values.logback.logger.springframeworkWeb }}"/>
+    <logger name="org.springframework.security.web.authentication" level="{{ .Values.logback.logger.springframeworkSecurityWebauthentication }}"/>
+    <logger name="org.hibernate" level="{{ .Values.logback.logger.hibernate }}"/>
+    <logger name="org.onap.ccsdk.cds" level="{{ .Values.logback.logger.onapCcsdkCds }}"/>
 
-    <root level="info">
+    <root level="{{ .Values.logback.rootLogLevel }}">
         <appender-ref ref="STDOUT"/>
     </root>
 
index 8f65732..f1b00c0 100755 (executable)
@@ -158,6 +158,15 @@ ingress:
   config:
     ssl: "none"
 
+logback:
+  rootLogLevel: INFO
+  logger:
+    springframework: INFO
+    springframeworkWeb: INFO
+    springframeworkSecurityWebauthentication: INFO
+    hibernate: INFO
+    onapCcsdkCds: INFO
+
 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
index 5715226..b48cad7 100644 (file)
     </encoder>
   </appender>
 
-  <logger name="org.springframework" level="info"/>
-  <logger name="org.springframework.web" level="info"/>
-  <logger name="org.springframework.security.web.authentication" level="warn"/>
-  <logger name="org.hibernate" level="error"/>
-  <logger name="org.onap.ccsdk.cds" level="info"/>
+  <logger name="org.springframework" level="{{ .Values.logback.logger.springframework }}"/>
+  <logger name="org.springframework.web" level="{{ .Values.logback.logger.springframeworkWeb }}"/>
+  <logger name="org.springframework.security.web.authentication" level="{{ .Values.logback.logger.springframeworkSecurityWebauthentication }}"/>
+  <logger name="org.hibernate" level="{{ .Values.logback.logger.hibernate }}"/>
+  <logger name="org.onap.ccsdk.cds" level="{{ .Values.logback.logger.onapCcsdkCds }}"/>
 
-  <root level="warn">
+  <root level="{{ .Values.logback.rootLogLevel }}">
     <appender-ref ref="STDOUT"/>
   </root>
 
index afea8ea..50462bb 100644 (file)
@@ -79,6 +79,15 @@ persistence:
 ingress:
   enabled: false
 
+logback:
+  rootLogLevel: INFO
+  logger:
+    springframework: INFO
+    springframeworkWeb: INFO
+    springframeworkSecurityWebauthentication: INFO
+    hibernate: INFO
+    onapCcsdkCds: INFO
+
 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
index 007a797..aa156b5 100755 (executable)
@@ -24,7 +24,7 @@ spec:
       {{ include "common.certInitializer.initContainer" . | indent 6 }}
       {{ if .Values.global.aafEnabled }}
       - name: {{ include "common.name" . }}-chown
-        image: "busybox"
+        image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.global.busyboxImage | default .Values.busyboxImage }}
         command: ["sh", "-c", "chown -R {{ .Values.config.odlUid }}:{{ .Values.config.odlGid}} {{ .Values.certInitializer.credsPath }}"]
         volumeMounts: {{ include "common.certInitializer.volumeMount" . | nindent 10 }}
       {{ end }}
index f20701b..d765197 100644 (file)
@@ -95,7 +95,7 @@ spec:
 {{ include "common.certInitializer.initContainer" . | indent 6 }}
 
       - name: {{ include "common.name" . }}-chown
-        image: "busybox"
+        image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.global.busyboxImage | default .Values.busyboxImage }}
         command:
         - sh
         args:
index 44584fa..be4adf4 100644 (file)
@@ -111,7 +111,8 @@ secrets:
 repository: nexus3.onap.org:10001
 pullPolicy: Always
 image: onap/sdnc-image:1.8.4
-
+busyboxRepository: docker.io
+busyboxImage: busybox:1.30
 
 # flag to enable debugging - application support required
 debugEnabled: false
diff --git a/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/Chart.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/Chart.yaml
new file mode 100644 (file)
index 0000000..c4fb9a4
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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: ONAP SO ETSI NFVO NS LCM
+name: so-etsi-nfvo-ns-lcm
+version: 6.0.0
diff --git a/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/resources/config/overrides/override.yaml
new file mode 100644 (file)
index 0000000..13d72d8
--- /dev/null
@@ -0,0 +1,47 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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.
+
+aai:
+  auth: {{ include "helpers.profileProperty" (dict "condition" .Values.global.security.aaf.enabled "value1" .Values.global.aaf.auth.header "value2" .Values.aai.auth )}}
+  version: v19
+  endpoint: https://aai.{{ include "common.namespace" . }}:8443
+spring:
+  security:
+    usercredentials:
+    - username: ${ETSI_NFVO_USERNAME}
+      password: ${ETSI_NFVO_PASSWORD}
+      role: ETSI-NFVO-Client
+server:
+  port: {{ .Values.containerPort }}
+  tomcat:
+    max-threads: 50
+mso:
+  key: {{ .Values.mso.key }}
+so:
+  adapters:
+    sol003-adapter:
+      url: https://so-vnfm-adapter.{{ include "common.namespace" . }}:9092/so/vnfm-adapter/v1
+      auth: {{ .Values.so.sol003.adapter.auth }}
+etsi-catalog-manager:
+  base:
+  {{- if .Values.global.msbEnabled }}
+    endpoint: https://msb-iag:443/api
+  http:
+    client:
+      ssl:
+        trust-store: ${TRUSTSTORE}
+        trust-store-password: ${TRUSTSTORE_PASSWORD}
+  {{- else }}
+    endpoint: http://modeling-etsicatalog.{{ include "common.namespace" . }}:8806/api
+  {{- end }}
diff --git a/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/configmap.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..3b2e50c
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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" . }}-configmap
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ include "common.release" . }}
+    heritage: {{ .Release.Service }}
+data:
+  LOG_PATH: {{ index .Values.logPath }}
+  APP: {{ index .Values.app }}
+  ACTIVE_PROFILE: {{ include "helpers.profileProperty" (dict "condition" .Values.global.security.aaf.enabled "value1" "aaf" "value2" "basic")}}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ include "common.fullname" . }}-app-configmap
+  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/overrides/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/deployment.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..0d16ded
--- /dev/null
@@ -0,0 +1,92 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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: apps/v1
+kind: Deployment
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
+spec:
+  selector: {{- include "common.selectors" . | nindent 4 }}
+  replicas: {{ index .Values.replicaCount }}
+  minReadySeconds: {{ index .Values.minReadySeconds }}
+  strategy:
+    type: {{ index .Values.updateStrategy.type }}
+    rollingUpdate:
+      maxUnavailable: {{ index .Values.updateStrategy.maxUnavailable }}
+      maxSurge: {{ index .Values.updateStrategy.maxSurge }}
+  template:
+    metadata: {{- include "common.templateMetadata" . | nindent 6 }}
+    spec:
+      initContainers: {{ include "so.certificate.container_importer" . | nindent 8 }}
+      containers:
+        - name: {{ include "common.name" . }}
+          command:
+            - sh
+          args:
+            - -c
+            - export ETSI_NFVO_PASSWORD=`htpasswd -bnBC 10 "" $ETSI_NFVO_PASSWORD_INPUT | tr -d ':\n' | sed 's/\$2y/\$2a/'`; ./start-app.sh
+          image: {{ include "common.repository" . }}/{{ .Values.image }}
+          resources: {{ include "common.resources" . | nindent 12 }}
+          env:
+            - name: TRUSTSTORE
+              value: {{ .Values.global.client.certs.truststore }}
+            - name: TRUSTSTORE_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: {{ .Release.Name}}-so-client-certs-secret
+                  key: trustStorePassword
+            {{- if eq .Values.global.security.aaf.enabled true }}
+            - name: KEYSTORE
+              value: {{ .Values.global.client.certs.keystore }}
+            - name: KEYSTORE_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: {{ .Release.Name}}-so-client-certs-secret
+                  key: keyStorePassword
+            {{- end }}
+            - name: ETSI_NFVO_USERNAME
+              {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "etsi-nfvo-nslcm-creds" "key" "login") | indent 14 }}
+            - name: ETSI_NFVO_PASSWORD_INPUT
+              {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "etsi-nfvo-nslcm-creds" "key" "password") | indent 14 }}
+          envFrom:
+            - configMapRef:
+                name: {{ include "common.fullname" . }}-configmap
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          volumeMounts: {{ include "so.certificate.volume-mounts" . | nindent 12 }}
+            - name: logs
+              mountPath: /app/logs
+            - name: config
+              mountPath: /app/config
+              readOnly: true
+            - name: {{ include "common.fullname" . }}-truststore
+              mountPath: /app/client
+              readonly: true
+          livenessProbe:
+            tcpSocket:
+              port: {{ index .Values.livenessProbe.port }}
+            initialDelaySeconds: {{ index .Values.livenessProbe.initialDelaySeconds}}
+            periodSeconds: {{ index .Values.livenessProbe.periodSeconds}}
+            successThreshold: {{ index .Values.livenessProbe.successThreshold}}
+            failureThreshold: {{ index .Values.livenessProbe.failureThreshold}}
+          ports: {{ include "common.containerPorts" . | nindent 12  }}
+      volumes: {{ include "so.certificate.volumes" . | nindent 8 }}
+        - name: logs
+          emptyDir: {}
+        - name: config
+          configMap:
+            name: {{ include "common.fullname" . }}-app-configmap
+        - name: {{ include "common.fullname" . }}-truststore
+          secret:
+            secretName: {{ include "common.release" . }}-so-truststore-secret
+      imagePullSecrets:
+        - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/ingress.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/ingress.yaml
new file mode 100644 (file)
index 0000000..443e76b
--- /dev/null
@@ -0,0 +1,15 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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.ingress" . }}
diff --git a/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/secret.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/secret.yaml
new file mode 100644 (file)
index 0000000..493cfe5
--- /dev/null
@@ -0,0 +1,15 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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/so/charts/so-etsi-nfvo-ns-lcm/templates/service.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/templates/service.yaml
new file mode 100644 (file)
index 0000000..a1290de
--- /dev/null
@@ -0,0 +1,15 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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.service" . }}
diff --git a/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/values.yaml b/kubernetes/so/charts/so-etsi-nfvo-ns-lcm/values.yaml
new file mode 100644 (file)
index 0000000..20f5de8
--- /dev/null
@@ -0,0 +1,105 @@
+# Copyright © 2020 Nordix Foundation
+#
+# 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:
+  nodePortPrefixExt: 304
+  repository: nexus3.onap.org:10001
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.2
+  persistence:
+    mountPath: /dockerdata-nfs
+
+#################################################################
+# Secrets metaconfig
+#################################################################
+secrets:
+  - uid: "so-onap-certs"
+    externalSecret: '{{ tpl (default "" .Values.certSecret) . }}'
+    type: generic
+    filePaths: '{{ .Values.secretsFilePaths }}'
+  - uid: etsi-nfvo-nslcm-creds
+    name: '{{ include "common.release" . }}-so-etsi-nfvo-nslcm-creds'
+    type: basicAuth
+    externalSecret: '{{ tpl (default "" .Values.etsi.nfvo.nslcm.credsExternalSecret) . }}'
+    login: '{{ .Values.etsi.nfvo.nslcm.username }}'
+    password: '{{ .Values.etsi.nfvo.nslcm.password }}'
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+repository: nexus3.onap.org:10001
+image: onap/so/so-etsi-nfvo-ns-lcm:1.7.1
+pullPolicy: Always
+
+etsi:
+  nfvo:
+    nslcm:
+      username: so-etsi-nfvo-ns-lcm
+replicaCount: 1
+minReadySeconds: 10
+containerPort: 9095
+logPath: ./logs/so-etsi-nfvo-ns-lcm/
+app: so-etsi-nfvo-ns-lcm
+service:
+  type: ClusterIP
+  name: so-etsi-nfvo-ns-lcm
+  annotations:
+    service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+  ports:
+    - name: nfvo-nslcm-port
+      port: 9095
+updateStrategy:
+  type: RollingUpdate
+  maxUnavailable: 1
+  maxSurge: 1
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+  small:
+    limits:
+      memory: 4Gi
+      cpu: 2000m
+    requests:
+      memory: 1Gi
+      cpu: 500m
+  large:
+    limits:
+      memory: 8Gi
+      cpu: 4000m
+    requests:
+      memory: 2Gi
+      cpu: 1000m
+  unlimited: {}
+livenessProbe:
+  port: 9095
+  initialDelaySeconds: 600
+  periodSeconds: 60
+  timeoutSeconds: 10
+  successThreshold: 1
+  failureThreshold: 3
+ingress:
+  enabled: false
+  service:
+    - baseaddr: "soetsinfvonslcm"
+      name: "so-etsi-nfvo-ns-lcm"
+      port: 9095
+  config:
+    ssl: "redirect"
+nodeSelector: {}
+tolerations: []
+affinity: {}
diff --git a/kubernetes/so/charts/so-mariadb/resources/config/docker-entrypoint-initdb.d/04-create-nfvo-db.sh b/kubernetes/so/charts/so-mariadb/resources/config/docker-entrypoint-initdb.d/04-create-nfvo-db.sh
new file mode 100755 (executable)
index 0000000..3ed03aa
--- /dev/null
@@ -0,0 +1,37 @@
+#!/bin/sh
+# ============LICENSE_START=======================================================
+#  Copyright (C) 2020 Nordix Foundation.
+# ================================================================================
+# 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=========================================================
+
+echo "Creating nfvo database . . ." 1>/tmp/mariadb-nfvodb.log 2>&1
+
+prepare_password()
+{
+    echo "$1" | sed -e "s/'/\\\\'/g; s/\"/\\\\\"/g"
+}
+
+NFVO_DB_PASSWORD=`prepare_password $NFVO_DB_PASSWORD`
+
+mysql -uroot -p$MYSQL_ROOT_PASSWORD << EOF || exit 1
+CREATE DATABASE /*!32312 IF NOT EXISTS*/ nfvo /*!40100 DEFAULT CHARACTER SET latin1 */;
+DROP USER IF EXISTS '${NFVO_DB_USER}';
+CREATE USER '${NFVO_DB_USER}';
+GRANT ALL on nfvo.* to '${NFVO_DB_USER}' identified by '${NFVO_DB_PASSWORD}' with GRANT OPTION;
+FLUSH PRIVILEGES;
+EOF
+
+echo "Created nfvo database . . ." 1>>/tmp/mariadb-nfvodb.log 2>&1
@@ -30,6 +30,7 @@ GRANT USAGE ON *.* TO '${DB_USER}'@'%' IDENTIFIED BY '${DB_PASSWORD}';
 GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, SHOW VIEW ON requestdb.* TO '${DB_USER}'@'%';
 GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, SHOW VIEW ON catalogdb.* TO '${DB_USER}'@'%';
 GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, SHOW VIEW ON camundabpmn.* TO '${DB_USER}'@'%';
+GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, SHOW VIEW ON nfvo.* TO '${DB_USER}'@'%';
 FLUSH PRIVILEGES;
 EOF
 
@@ -30,6 +30,7 @@ GRANT USAGE ON *.* TO '${DB_ADMIN}'@'%' IDENTIFIED BY '${DB_ADMIN_PASSWORD}';
 GRANT ALL PRIVILEGES ON camundabpmn.* TO '${DB_ADMIN}'@'%' WITH GRANT OPTION;
 GRANT ALL PRIVILEGES ON requestdb.* TO '${DB_ADMIN}'@'%' WITH GRANT OPTION;
 GRANT ALL PRIVILEGES ON catalogdb.* TO '${DB_ADMIN}'@'%' WITH GRANT OPTION;
+GRANT ALL PRIVILEGES ON nfvo.* TO '${DB_ADMIN}'@'%' WITH GRANT OPTION;
 FLUSH PRIVILEGES;
 EOF
 
index 838c10f..f24ec25 100644 (file)
@@ -51,7 +51,7 @@ spec:
         command:
         - /bin/bash
         - -c
-        - mysqldump -vv --user=${DB_USER} --password=${DB_PASS} --host=${DB_HOST} --port=${DB_PORT} --databases --single-transaction --quick --lock-tables=false catalogdb requestdb > /var/data/mariadb/backup-`date +%s`.sql
+        - mysqldump -vv --user=${DB_USER} --password=${DB_PASS} --host=${DB_HOST} --port=${DB_PORT} --databases --single-transaction --quick --lock-tables=false catalogdb requestdb nfvo > /var/data/mariadb/backup-`date +%s`.sql
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
@@ -156,6 +156,10 @@ spec:
           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "catalog-db-creds" "key" "login") | indent 10 }}
         - name: CATALOG_DB_PASSWORD
           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "catalog-db-creds" "key" "password") | indent 10 }}
+        - name: NFVO_DB_USER
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "nfvo-db-creds" "key" "login") | indent 10 }}
+        - name: NFVO_DB_PASSWORD
+          {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "nfvo-db-creds" "key" "password") | indent 10 }}
         volumeMounts:
         - mountPath: /etc/localtime
           name: localtime
index 5bca4da..0a5a056 100755 (executable)
@@ -70,8 +70,11 @@ secrets:
     externalSecret: '{{ tpl (default "" .Values.db.catalog.dbCredsExternalSecret) . }}'
     login: '{{ .Values.db.catalog.userName }}'
     password: '{{ .Values.db.catalog.password }}'
-
-
+  - uid: nfvo-db-creds
+    type: basicAuth
+    externalSecret: '{{ tpl (default "" .Values.db.nfvo.dbCredsExternalSecret) . }}'
+    login: '{{ .Values.db.nfvo.userName }}'
+    password: '{{ .Values.db.nfvo.password }}'
 
 #################################################################
 # Application configuration defaults.
@@ -107,6 +110,9 @@ db:
     userName: cataloguser
     password: catalog123
     # dbCredsExternalSecret: some secret
+  nfvo:
+    userName: nfvouser
+    # dbCredsExternalSecret: some secret
 
 # application configuration
 config:
index 328f4f2..8d03786 100755 (executable)
@@ -449,6 +449,17 @@ so-vnfm-adapter:
         apiEnforcement: org.onap.so.vnfmAdapterPerm
         noAuthn: /manage/health
 
+so-etsi-nfvo-ns-lcm:
+  certSecret: *so-certs
+  aai:
+    auth: 2A11B07DB6214A839394AA1EC5844695F5114FC407FF5422625FB00175A3DCB8A1FF745F22867EFA72D5369D599BBD88DA8BED4233CF5586
+  mso:
+    key: 07a7159d3bf51a0e53be7a8f89699be7
+  so:
+    sol003:
+      adapter:
+        auth: Basic dm5mbTpwYXNzd29yZDEk
+
 so-mariadb:
   db:
     rootPasswordExternalSecretLocalDb: *dbRootPassSecretName