Merge "Add msb environment to oom"
authorBorislav Glozman <Borislav.Glozman@amdocs.com>
Mon, 23 Sep 2019 12:03:39 +0000 (12:03 +0000)
committerGerrit Code Review <gerrit@onap.org>
Mon, 23 Sep 2019 12:03:39 +0000 (12:03 +0000)
199 files changed:
.gitmodules
kubernetes/aai
kubernetes/appc/charts/appc-cdt/templates/deployment.yaml
kubernetes/appc/charts/appc-cdt/values.yaml
kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaa-app-config.xml
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/bath_config.csv [new file with mode: 0644]
kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/cadi.properties
kubernetes/appc/templates/service.yaml
kubernetes/appc/templates/statefulset.yaml
kubernetes/appc/values.yaml
kubernetes/cds/charts/cds-blueprints-processor/resources/config/application.properties
kubernetes/cds/charts/cds-blueprints-processor/templates/deployment.yaml
kubernetes/cds/charts/cds-blueprints-processor/values.yaml
kubernetes/cds/charts/cds-command-executor/values.yaml
kubernetes/cds/charts/cds-controller-blueprints/resources/config/application.properties
kubernetes/cds/charts/cds-controller-blueprints/values.yaml
kubernetes/cds/charts/cds-sdc-listener/values.yaml
kubernetes/cds/charts/cds-ui/values.yaml
kubernetes/cds/values.yaml
kubernetes/clamp/charts/clamp-backend/Chart.yaml [moved from kubernetes/multicloud/charts/multicloud-ocata/Chart.yaml with 89% similarity]
kubernetes/clamp/charts/clamp-backend/requirements.yaml [moved from kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf with 63% similarity]
kubernetes/clamp/charts/clamp-backend/resources/config/log/filebeat/filebeat.yml [moved from kubernetes/clamp/resources/config/log/filebeat/filebeat.yml with 100% similarity]
kubernetes/clamp/charts/clamp-backend/resources/config/logback.xml [moved from kubernetes/clamp/resources/config/logback.xml with 100% similarity]
kubernetes/clamp/charts/clamp-backend/resources/config/sdc-controllers-config.json [moved from kubernetes/clamp/resources/config/sdc-controllers-config.json with 100% similarity]
kubernetes/clamp/charts/clamp-backend/templates/NOTES.txt [moved from kubernetes/multicloud/charts/multicloud-ocata/templates/NOTES.txt with 83% similarity]
kubernetes/clamp/charts/clamp-backend/templates/configmap.yaml [new file with mode: 0644]
kubernetes/clamp/charts/clamp-backend/templates/deployment.yaml [new file with mode: 0644]
kubernetes/clamp/charts/clamp-backend/templates/service.yaml [new file with mode: 0644]
kubernetes/clamp/charts/clamp-backend/values.yaml [new file with mode: 0644]
kubernetes/clamp/charts/clamp-dash-es/resources/config/elasticsearch.yml
kubernetes/clamp/charts/clamp-dash-es/templates/deployment.yaml
kubernetes/clamp/charts/clamp-dash-es/values.yaml
kubernetes/clamp/charts/clamp-dash-kibana/resources/config/kibana.yml
kubernetes/clamp/charts/clamp-dash-kibana/values.yaml
kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/create-tables.sql
kubernetes/clamp/charts/mariadb/templates/service.yaml
kubernetes/clamp/resources/config/nginx.conf [new file with mode: 0644]
kubernetes/clamp/templates/configmap.yaml
kubernetes/clamp/templates/deployment.yaml
kubernetes/clamp/templates/service.yaml
kubernetes/clamp/values.yaml
kubernetes/common/cassandra/resources/exec.py [new file with mode: 0644]
kubernetes/common/cassandra/resources/restore.sh [new file with mode: 0644]
kubernetes/common/cassandra/templates/backup/configmap.yaml [new file with mode: 0644]
kubernetes/common/cassandra/templates/backup/cronjob.yaml [new file with mode: 0644]
kubernetes/common/cassandra/templates/backup/pv.yaml [new file with mode: 0644]
kubernetes/common/cassandra/templates/backup/pvc.yaml [new file with mode: 0644]
kubernetes/common/cassandra/values.yaml
kubernetes/common/common/templates/_ingress.tpl
kubernetes/common/dgbuilder/values.yaml
kubernetes/common/mariadb-galera/templates/backup/cronjob.yaml [new file with mode: 0644]
kubernetes/common/mariadb-galera/templates/backup/pv.yaml [new file with mode: 0644]
kubernetes/common/mariadb-galera/templates/backup/pvc.yaml [new file with mode: 0644]
kubernetes/common/mariadb-galera/values.yaml
kubernetes/common/mongo/values.yaml
kubernetes/common/network-name-gen/values.yaml
kubernetes/consul/resources/config/consul-agent-config/multicloud-health-check.json
kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/job.yaml [new file with mode: 0644]
kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
kubernetes/dcaegen2/charts/dcae-config-binding-service/templates/deployment.yaml
kubernetes/dcaegen2/charts/dcae-config-binding-service/values.yaml
kubernetes/dcaegen2/charts/dcae-policy-handler/templates/deployment.yaml
kubernetes/dmaap/components/dmaap-bc/templates/post-install-job.yaml
kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh [deleted file]
kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json [deleted file]
kubernetes/dmaap/components/dmaap-dr-node/resources/config/log/filebeat/filebeat.yml
kubernetes/dmaap/components/dmaap-dr-node/resources/config/logback.xml
kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties
kubernetes/dmaap/components/dmaap-dr-node/templates/configmap.yaml
kubernetes/dmaap/components/dmaap-dr-node/templates/post-install-job.yaml
kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml
kubernetes/dmaap/components/dmaap-dr-node/values.yaml
kubernetes/dmaap/components/dmaap-dr-prov/resources/config/log/filebeat/filebeat.yml
kubernetes/dmaap/components/dmaap-dr-prov/resources/config/logback.xml
kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/DefaultPM.json [deleted file]
kubernetes/dmaap/components/dmaap-dr-prov/templates/configmap.yaml
kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
kubernetes/dmaap/components/dmaap-dr-prov/templates/post-install-job.yaml
kubernetes/dmaap/components/dmaap-dr-prov/templates/service.yaml
kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
kubernetes/dmaap/components/message-router/charts/message-router-kafka/values.yaml
kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/values.yaml
kubernetes/dmaap/components/message-router/resources/topics/PM_MAPPER.json [deleted file]
kubernetes/dmaap/components/message-router/templates/post-install-job.yaml
kubernetes/dmaap/resources/config/log/filebeat/filebeat.yml
kubernetes/dmaap/values.yaml
kubernetes/helm/plugins/deploy/deploy.sh
kubernetes/modeling/charts/modeling-genericparser/values.yaml
kubernetes/multicloud/charts/multicloud-ocata/.helmignore [deleted file]
kubernetes/multicloud/charts/multicloud-ocata/resources/config/log/log.yml [deleted file]
kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml [deleted file]
kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml [deleted file]
kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml [deleted file]
kubernetes/multicloud/charts/multicloud-ocata/values.yaml [deleted file]
kubernetes/multicloud/charts/multicloud-vio/values.yaml
kubernetes/multicloud/charts/multicloud-windriver/templates/deployment.yaml
kubernetes/multicloud/charts/multicloud-windriver/templates/pv.yaml [new file with mode: 0644]
kubernetes/multicloud/charts/multicloud-windriver/templates/pvc.yaml [new file with mode: 0644]
kubernetes/multicloud/charts/multicloud-windriver/values.yaml
kubernetes/multicloud/resources/config/provider-plugin.json
kubernetes/multicloud/values.yaml
kubernetes/nbi/charts/mariadb/values.yaml
kubernetes/nbi/values.yaml
kubernetes/onap/Chart.yaml
kubernetes/onap/requirements.yaml
kubernetes/onap/resources/overrides/onap-all-ingress-nginx.yaml
kubernetes/onap/resources/overrides/onap-all.yaml
kubernetes/onap/values.yaml
kubernetes/oof/charts/oof-has/values.yaml
kubernetes/oof/values.yaml
kubernetes/policy/charts/brmsgw/values.yaml
kubernetes/policy/charts/drools/charts/nexus/values.yaml
kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/policy-keystore [deleted file]
kubernetes/policy/charts/drools/resources/configmaps/amsterdam.pre.sh [new file with mode: 0644]
kubernetes/policy/charts/drools/resources/configmaps/base.conf [moved from kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf with 66% similarity]
kubernetes/policy/charts/drools/resources/configmaps/feature-pooling-dmaap.conf [moved from kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/feature-pooling-dmaap.conf with 81% similarity]
kubernetes/policy/charts/drools/resources/configmaps/status.post.sh [moved from kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/policy-management.conf with 50% similarity]
kubernetes/policy/charts/drools/resources/scripts/update-vfw-op-policy.sh [deleted file]
kubernetes/policy/charts/drools/resources/secrets/credentials.conf [new file with mode: 0644]
kubernetes/policy/charts/drools/templates/NOTES.txt [deleted file]
kubernetes/policy/charts/drools/templates/configmap.yaml
kubernetes/policy/charts/drools/templates/secrets.yaml
kubernetes/policy/charts/drools/templates/statefulset.yaml
kubernetes/policy/charts/drools/values.yaml
kubernetes/policy/charts/mariadb/values.yaml
kubernetes/policy/charts/pdp/values.yaml
kubernetes/policy/charts/policy-apex-pdp/values.yaml
kubernetes/policy/charts/policy-api/values.yaml
kubernetes/policy/charts/policy-distribution/resources/config/config.json
kubernetes/policy/charts/policy-distribution/values.yaml
kubernetes/policy/charts/policy-pap/values.yaml
kubernetes/policy/charts/policy-xacml-pdp/resources/config/config.json
kubernetes/policy/charts/policy-xacml-pdp/values.yaml
kubernetes/policy/values.yaml
kubernetes/portal/charts/portal-app/templates/deployment.yaml
kubernetes/portal/charts/portal-app/values.yaml
kubernetes/portal/charts/portal-cassandra/values.yaml
kubernetes/portal/charts/portal-mariadb/resources/config/mariadb/docker-entrypoint.sh
kubernetes/portal/charts/portal-mariadb/resources/config/mariadb/oom_updates.sql
kubernetes/portal/charts/portal-mariadb/values.yaml
kubernetes/portal/charts/portal-sdk/templates/deployment.yaml
kubernetes/portal/charts/portal-sdk/values.yaml
kubernetes/portal/charts/portal-widget/values.yaml
kubernetes/portal/values.yaml
kubernetes/robot
kubernetes/sdc/charts/sdc-be/templates/deployment.yaml
kubernetes/sdc/charts/sdc-be/values.yaml
kubernetes/sdc/charts/sdc-cs/values.yaml
kubernetes/sdc/charts/sdc-dcae-be/templates/deployment.yaml
kubernetes/sdc/charts/sdc-dcae-be/templates/job.yaml
kubernetes/sdc/charts/sdc-dcae-be/values.yaml
kubernetes/sdc/charts/sdc-dcae-dt/templates/deployment.yaml
kubernetes/sdc/charts/sdc-dcae-dt/values.yaml
kubernetes/sdc/charts/sdc-dcae-fe/templates/deployment.yaml
kubernetes/sdc/charts/sdc-dcae-fe/values.yaml
kubernetes/sdc/charts/sdc-dcae-tosca-lab/templates/deployment.yaml
kubernetes/sdc/charts/sdc-es/values.yaml
kubernetes/sdc/charts/sdc-fe/templates/deployment.yaml
kubernetes/sdc/charts/sdc-fe/values.yaml
kubernetes/sdc/charts/sdc-kb/values.yaml
kubernetes/sdc/charts/sdc-onboarding-be/values.yaml
kubernetes/sdc/charts/sdc-wfd-be/values.yaml
kubernetes/sdc/charts/sdc-wfd-fe/values.yaml
kubernetes/sdc/resources/config/environments/AUTO.json
kubernetes/sdnc/charts/dmaap-listener/values.yaml
kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
kubernetes/sdnc/charts/sdnc-portal/values.yaml
kubernetes/sdnc/charts/ueb-listener/values.yaml
kubernetes/sdnc/requirements.yaml
kubernetes/sdnc/resources/config/conf/akka.conf [new file with mode: 0644]
kubernetes/sdnc/resources/config/conf/org.opendaylight.controller.cluster.datastore.cfg [new file with mode: 0644]
kubernetes/sdnc/resources/config/conf/setenv [new file with mode: 0644]
kubernetes/sdnc/resources/config/overrides/image-versions.yaml [deleted file]
kubernetes/sdnc/resources/config/overrides/sdnc-versions.yaml [new file with mode: 0644]
kubernetes/sdnc/templates/statefulset.yaml
kubernetes/sdnc/values.yaml
kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml
kubernetes/so/charts/so-bpmn-infra/values.yaml
kubernetes/so/charts/so-catalog-db-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-catalog-db-adapter/values.yaml
kubernetes/so/charts/so-monitoring/values.yaml
kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-openstack-adapter/values.yaml
kubernetes/so/charts/so-request-db-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-request-db-adapter/values.yaml
kubernetes/so/charts/so-sdc-controller/resources/config/overrides/override.yaml
kubernetes/so/charts/so-sdc-controller/values.yaml
kubernetes/so/charts/so-sdnc-adapter/values.yaml
kubernetes/so/charts/so-vfc-adapter/resources/config/overrides/override.yaml
kubernetes/so/charts/so-vfc-adapter/values.yaml
kubernetes/so/charts/so-vnfm-adapter/values.yaml
kubernetes/so/resources/config/overrides/override.yaml
kubernetes/so/values.yaml
kubernetes/vid/templates/deployment.yaml
kubernetes/vid/values.yaml

index e01f7e5..08d7aea 100644 (file)
@@ -1,7 +1,7 @@
 [submodule "kubernetes/aai"]
        path = kubernetes/aai
        url = ../aai/oom
-        branch = .
+        branch = master
         ignore = dirty
 [submodule "kubernetes/robot"]
        path = kubernetes/robot
index 55cb73c..9d23a1c 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 55cb73cadc59537643c0fe5cb7ededadc9ff2b48
+Subproject commit 9d23a1c8a97d5878e2aafc871f17af007349c288
index 2192662..fd29fbe 100644 (file)
@@ -57,9 +57,9 @@ spec:
           env:
           # This sets the port that CDT will use to connect to the main appc container.
           # The 11 is the node port suffix that is used in the main appc oom templates
-          # for nodePort3. This value will be configured in appc main chart in appc-cdt section.
+          # for nodePort4. This value will be configured in appc main chart in appc-cdt section.
           - name: CDT_PORT
-            value: "{{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.nodePort3 }}"
+            value: "{{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.nodePort4 }}"
           volumeMounts:
           - mountPath: /etc/localtime
             name: localtime
index 7db9527..52adfc4 100644 (file)
@@ -26,7 +26,7 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/appc-cdt-image:1.5.3
+image: onap/appc-cdt-image:1.6.3
 pullPolicy: Always
 
 # application configuration
index ad135f8..c52c6e3 100755 (executable)
@@ -111,8 +111,6 @@ then
 #        echo "Copying a working version of the logging configuration into the opendaylight etc folder"
 #        cp ${APPC_HOME}/data/org.ops4j.pax.logging.cfg ${ODL_HOME}/etc/org.ops4j.pax.logging.cfg
 
-        echo "Starting OpenDaylight"
-        ${ODL_HOME}/bin/start
 
         echo "Waiting ${SLEEP_TIME} seconds for OpenDaylight to initialize"
         sleep ${SLEEP_TIME}
@@ -137,6 +135,7 @@ then
         fi
 
         echo "Copying the aaa shiro configuration into opendaylight"
+        mkdir -p ${ODL_HOME}/etc/opendaylight/datastore/initial/config
         if $ENABLE_AAF
         then
              cp ${APPC_HOME}/data/properties/aaa-app-config.xml ${ODL_HOME}/etc/opendaylight/datastore/initial/config/aaa-app-config.xml
@@ -144,29 +143,6 @@ then
              cp ${APPC_HOME}/data/aaa-app-config.xml ${ODL_HOME}/etc/opendaylight/datastore/initial/config/aaa-app-config.xml
         fi
 
-        echo "Restarting OpenDaylight"
-        ${ODL_HOME}/bin/stop
-        checkRun () {
-                running=0
-                while read a b c d e f g h
-                do
-                if [ "$h" == "/bin/sh /opt/opendaylight/bin/karaf server" ]
-                then
-                     running=1
-                fi
-                done < <(ps -eaf)
-                echo $running
-        }
-
-        while [ $( checkRun ) == 1 ]
-        do
-                echo "Karaf is still running, waiting..."
-                sleep 5s
-        done
-        echo "Karaf process has stopped"
-        sleep 10s
-
-        echo "Installed at `date`" > ${SDNC_HOME}/.installed
 fi
 
 # Move journal and snapshots directory to persistent storage
@@ -195,5 +171,27 @@ ln -s ${hostdir}/snapshots ${ODL_HOME}/snapshots
 echo "Starting cdt-proxy-service jar, logging to ${APPC_HOME}/cdt-proxy-service/jar.log"
 java -jar ${APPC_HOME}/cdt-proxy-service/cdt-proxy-service.jar > ${APPC_HOME}/cdt-proxy-service/jar.log &
 
-exec ${ODL_HOME}/bin/karaf server
+echo "Adding a property system.properties for AAF cadi.properties location"
+echo "" >> ${ODL_HOME}/etc/system.properties
+echo "cadi_prop_files=${APPC_HOME}/data/properties/cadi.properties" >> ${ODL_HOME}/etc/system.properties
+echo "" >> ${ODL_HOME}/etc/system.properties
+
+echo "Adding a value to property appc.asdc.env in appc.properties for appc-asdc-listener feature"
+echo "" >> $APPC_HOME/data/properties/appc.properties
+echo "appc.asdc.env=$DMAAP_TOPIC_ENV" >> $APPC_HOME/data/properties/appc.properties
+echo "" >> $APPC_HOME/data/properties/appc.properties
+
+echo "Copying jetty, keystore for https into opendalight"
+cp ${APPC_HOME}/data/jetty.xml ${ODL_HOME}/etc/jetty.xml
+cp ${APPC_HOME}/data/keystore ${ODL_HOME}/etc/keystore
+cp ${APPC_HOME}/data/custom.properties ${ODL_HOME}/etc/custom.properties
 
+echo "Copying a working version of the logging configuration into the opendaylight etc folder"
+cp ${APPC_HOME}/data/org.ops4j.pax.logging.cfg ${ODL_HOME}/etc/org.ops4j.pax.logging.cfg
+
+ODL_BOOT_FEATURES_EXTRA="odl-netconf-connector,odl-restconf-noauth,odl-netconf-clustered-topology,odl-mdsal-clustering"
+sed -i -e "\|featuresBoot[^a-zA-Z]|s|$|,${ODL_BOOT_FEATURES_EXTRA}|"  $ODL_HOME/etc/org.apache.karaf.features.cfg
+
+exec ${APPC_HOME}/bin/dockerInstall.sh &
+echo "Starting OpenDaylight"
+exec ${ODL_HOME}/bin/karaf server
index 81834ea..de6e7e4 100644 (file)
     <urls>
         <pair-key>/auth/**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin], dynamicAuthorization</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
     <urls>
         <pair-key>/restconf/config/aaa-cert-mdsal**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin]</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
     <urls>
         <pair-key>/restconf/operational/aaa-cert-mdsal**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin]</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
     <urls>
         <pair-key>/restconf/operations/aaa-cert-rpc**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin]</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
     <urls>
         <pair-key>/restconf/config/aaa-authn-model**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin]</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
     <urls>
         <pair-key>/restconf/operational/aaa-authn-model**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin]</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
     <urls>
         <pair-key>/restconf/operations/cluster-admin**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin]</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
     <urls>
         <pair-key>/**</pair-key>
 <!--        <pair-value>authcBasic, roles[admin]</pair-value> -->
-        <pair-value>authcBasic, roles[org.onap.appc.odl|odl-api|*]</pair-value>
+        <pair-value>authcBasic, roles[org.onap.appc.odl:odl-api:*]</pair-value>
     </urls>
 </shiro-configuration>
 
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/bath_config.csv b/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/bath_config.csv
new file mode 100644 (file)
index 0000000..24a3dff
--- /dev/null
@@ -0,0 +1,8 @@
+# APPC HELM CHART APPC_RESTCONF_UI -> appc@appc.onap.org
+Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==,Basic YXBwY0BhcHBjLm9uYXAub3JnOmRlbW8xMjM0NTYh,2050-03-03
+#  jolokiaall = demo@people.osaaf.org
+Basic am9sb2tpYWFsbDpqb2xva2lhYWxs,Basic ZGVtb0BwZW9wbGUub3NhYWYub3JnOmRlbW8xMjM0NTYh,2050-03-03
+#  restall = aaf_admin@people.osaaf.org
+Basic cmVzdGFsbDpyZXN0YWxs,Basic YWFmX2FkbWluQHBlb3BsZS5vc2FhZi5vcmc6ZGVtbzEyMzQ1NiE=,2050-03-03
+#  odlro =  mmmanger@people.osaaf.org
+Basic b2Rscm86b2Rscm8=,Basic bW1tYW5nZXJAcGVvcGxlLm9zYWFmLm9yZzpkZW1vMTIzNDU2IQ==,2050-03-03
index 0e8b71c..e7399f6 100644 (file)
@@ -19,7 +19,7 @@
 ###
 #hostname=localhost
 
-cadi_loglevel=INFO
+cadi_loglevel=DEBUG
 cadi_bath_convert=/opt/onap/appc/data/properties/bath_config.csv
 
 ############################################################
@@ -48,11 +48,11 @@ cadi_longitude=-122.26147
 aaf_locate_url=https://aaf-locate.{{.Release.Namespace}}:8095
 
 # AAF URL
-aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.0
+aaf_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.service:2.1
 
 # AAF Environment Designation
 aaf_env=DEV
 
 # OAuth2 Endpoints
-aaf_oauth2_token_url=https://AAF_LOCATE_URL/AAF_NS.token:2.0/token
-aaf_oauth2_introspect_url=https://AAF_LOCATE_URL/AAF_NS.introspect:2.0/introspect
+aaf_oauth2_token_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.token:2.1/token
+aaf_oauth2_introspect_url=https://AAF_LOCATE_URL/onap.org.osaaf.aaf.introspect:2.1/introspect
index fdd31a4..a44214a 100644 (file)
@@ -41,23 +41,31 @@ spec:
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
       nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
-      name: "{{ .Values.service.portName }}-8443"
+      name: "{{ .Values.service.portName }}-8282"
     - port: {{ .Values.service.externalPort2 }}
+      targetPort: {{ .Values.service.internalPort2 }}
       nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
-      name: "{{ .Values.service.portName }}-1830"
+      name: "{{ .Values.service.portName }}-8443"
     - port: {{ .Values.service.externalPort3 }}
       targetPort: {{ .Values.service.internalPort3 }}
       nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+      name: "{{ .Values.service.portName }}-1830"
+    - port: {{ .Values.service.externalPort4 }}
+      targetPort: {{ .Values.service.internalPort4 }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
       name: "{{ .Values.service.portName }}-9090"
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
-      name: {{ .Values.service.portName }}-8443
+      name: {{ .Values.service.portName }}-8282
     - port: {{ .Values.service.externalPort2 }}
       targetPort: {{ .Values.service.internalPort2 }}
-      name: {{ .Values.service.portName }}-1830
+      name: {{ .Values.service.portName }}-8443
     - port: {{ .Values.service.externalPort3 }}
       targetPort: {{ .Values.service.internalPort3 }}
+      name: {{ .Values.service.portName }}-1830
+    - port: {{ .Values.service.externalPort4 }}
+      targetPort: {{ .Values.service.internalPort4 }}
       name: {{ .Values.service.portName }}-9090
     {{- end}}
   selector:
index 4fded9a..1401a82 100644 (file)
@@ -108,6 +108,9 @@ spec:
           - mountPath: /opt/onap/appc/data/properties/aaa-app-config.xml
             name: onap-appc-data-properties
             subPath: aaa-app-config.xml
+          - mountPath: /opt/onap/appc/data/properties/bath_config.csv
+            name: onap-appc-data-properties
+            subPath: bath_config.csv
           - mountPath: /opt/onap/appc/svclogic/config/svclogic.properties
             name: onap-appc-svclogic-config
             subPath: svclogic.properties
@@ -145,7 +148,7 @@ spec:
             name: {{ include "common.fullname" . }}-data
           - mountPath: /var/log/onap
             name: logs
-          - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
+          - mountPath: /opt/onap/appc/data/org.ops4j.pax.logging.cfg
             name: log-config
             subPath: org.ops4j.pax.logging.cfg
           resources:
index 578dbc7..00ed799 100644 (file)
@@ -31,7 +31,7 @@ global:
 flavor: small
 # application image
 repository: nexus3.onap.org:10001
-image: onap/appc-image:1.5.3
+image: onap/appc-image:1.6.3
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -93,9 +93,9 @@ dgbuilder:
   service:
     name: appc-dgbuilder
 
-#passing value to cdt chart. value of nodePort3 will be same as appc.service.nodePort3.
+#passing value to cdt chart. value of nodePort4 will be same as appc.service.nodePort4.
 appc-cdt:
-  nodePort3: 11
+  nodePort4: 11
 # default number of instances
 replicaCount: 1
 
@@ -119,19 +119,22 @@ service:
   type: NodePort
   name: appc
   portName: appc
-  #targetPort
-  internalPort: 8443
-  #port
-  externalPort: 8443
-  nodePort: 30
-
-  externalPort2: 1830
-  nodePort2: 31
+
+  internalPort: 8181
+  externalPort: 8282
+  nodePort: "08"
+
+  internalPort2: 8443
+  externalPort2: 8443
+  nodePort2: 30
+
+  externalPort3: 1830
+  nodePort3: 31
   clusterPort: 2550
 
-  internalPort3: 9191
-  externalPort3: 9090
-  nodePort3: 11
+  internalPort4: 9191
+  externalPort4: 9090
+  nodePort4: 11
 
 ## Persist data to a persitent volume
 persistence:
index 27d9663..ec2ce6b 100755 (executable)
 # Web server config
 ### START -Controller Blueprints Properties
 # Load Resource Source Mappings
-resourceSourceMappings=processor-db=source-processor-db,primary-db=source-processor-db,input=source-input,default=source-default,primary-config-data=source-rest,primary-aai-data=source-rest,capability=source-capability
+resourceSourceMappings=processor-db=source-db,input=source-input,default=source-default,sdnc=source-rest,aai-data=source-rest,capability=source-capability,rest=source-rest,script=source-capability
 
-# Controller Blueprints Core Configuration
-controllerblueprints.blueprintDeployPath=/opt/app/onap/blueprints/deploy
-controllerblueprints.blueprintArchivePath=/opt/app/onap/blueprints/archive
-controllerblueprints.blueprintWorkingPath=/opt/app/onap/blueprints/working
+# Blueprint Processor File Execution and Handling Properties
+blueprintsprocessor.blueprintDeployPath=/opt/app/onap/blueprints/deploy
+blueprintsprocessor.blueprintArchivePath=/opt/app/onap/blueprints/archive
+blueprintsprocessor.blueprintWorkingPath=/opt/app/onap/blueprints/working
 
-# Controller Blueprint Load Configurations
 # blueprints.load.initial-data may be overridden by ENV variables
-controllerblueprints.loadInitialData=true
-controllerblueprints.loadBluePrint=true
-controllerblueprints.loadBluePrintPaths=/opt/app/onap/model-catalog/blueprint-model/service-blueprint
-controllerblueprints.loadModelType=true
-controllerblueprints.loadModeTypePaths=/opt/app/onap/model-catalog/definition-type/starter-type
-controllerblueprints.loadResourceDictionary=true
-controllerblueprints.loadResourceDictionaryPaths=/opt/app/onap/model-catalog/resource-dictionary/starter-dictionary
+blueprintsprocessor.loadInitialData=true
+blueprintsprocessor.loadBluePrint=true
+blueprintsprocessor.loadBluePrintPaths=/opt/app/onap/model-catalog/blueprint-model/service-blueprint
+blueprintsprocessor.loadModelType=true
+blueprintsprocessor.loadModeTypePaths=/opt/app/onap/model-catalog/definition-type/starter-type
+blueprintsprocessor.loadResourceDictionary=true
+blueprintsprocessor.loadResourceDictionaryPaths=/opt/app/onap/model-catalog/resource-dictionary/starter-dictionary
 
 # CBA file extension
 controllerblueprints.loadCbaExtension=zip
@@ -42,20 +41,21 @@ blueprintsprocessor.grpcEnable=true
 blueprintsprocessor.httpPort=8080
 blueprintsprocessor.grpcPort=9111
 
-# Blueprint Processor File Execution and Handling Properties
-blueprintsprocessor.blueprintDeployPath=/opt/app/onap/blueprints/deploy
-blueprintsprocessor.blueprintArchivePath=/opt/app/onap/blueprints/archive
-blueprintsprocessor.blueprintWorkingPath=/opt/app/onap/blueprints/work
-
-# Primary Database Configuration
-blueprintsprocessor.db.primary.url=jdbc:mysql://cds-db:3306/sdnctl
-blueprintsprocessor.db.primary.username=sdnctl
-blueprintsprocessor.db.primary.password=sdnctl
-blueprintsprocessor.db.primary.driverClassName=org.mariadb.jdbc.Driver
-blueprintsprocessor.db.primary.hibernateHbm2ddlAuto=update
-blueprintsprocessor.db.primary.hibernateDDLAuto=update
-blueprintsprocessor.db.primary.hibernateNamingStrategy=org.hibernate.cfg.ImprovedNamingStrategy
-blueprintsprocessor.db.primary.hibernateDialect=org.hibernate.dialect.MySQL5InnoDBDialect
+# db
+blueprintsprocessor.db.url=jdbc:mysql://cds-db:3306/sdnctl
+blueprintsprocessor.db.username=sdnctl
+blueprintsprocessor.db.password=sdnctl
+blueprintsprocessor.db.driverClassName=org.mariadb.jdbc.Driver
+blueprintsprocessor.db.hibernateHbm2ddlAuto=update
+blueprintsprocessor.db.hibernateDDLAuto=update
+blueprintsprocessor.db.hibernateNamingStrategy=org.hibernate.cfg.ImprovedNamingStrategy
+blueprintsprocessor.db.hibernateDialect=org.hibernate.dialect.MySQL5InnoDBDialect
+
+# processor-db endpoint
+blueprintsprocessor.db.processor-db.type=maria-db
+blueprintsprocessor.db.processor-db.url=jdbc:mysql://mariadb-galera:3306/sdnctl
+blueprintsprocessor.db.processor-db.username=root
+blueprintsprocessor.db.processor-db.password=secretpassword
 
 # Python executor
 blueprints.processor.functions.python.executor.executionPath=/opt/app/onap/scripts/jython/ccsdk_blueprints
@@ -83,27 +83,30 @@ blueprintsprocessor.grpcclient.remote-python.host=cds-command-executor
 blueprintsprocessor.grpcclient.remote-python.port=50051
 blueprintsprocessor.grpcclient.remote-python.token=Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
 
-# Primary Config Data REST client settings
-blueprintsprocessor.restclient.primary-config-data.type=basic-auth
-blueprintsprocessor.restclient.primary-config-data.url=http://sdnc:8282
-blueprintsprocessor.restclient.primary-config-data.username=admin
-blueprintsprocessor.restclient.primary-config-data.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-
-# Primary AAI Data REST Client settings
-blueprintsprocessor.restclient.primary-aai-data.type=basic-auth
-blueprintsprocessor.restclient.primary-aai-data.url=https://aai.onap:8443
-blueprintsprocessor.restclient.primary-aai-data.username=aai@aai.onap.org
-blueprintsprocessor.restclient.primary-aai-data.password=demo123456!
-
-# Kafka-message-lib Configuration
-blueprintsprocessor.messageclient.self-service-api.topic=cds-producer
-blueprintsprocessor.messageclient.self-service-api.type=kafka-basic-auth
-
-##ONAP Message Router Kafka Service##
-blueprintsprocessor.messageclient.self-service-api.bootstrapServers=message-router-kafka:9092
-
-blueprintsprocessor.messageclient.self-service-api.consumerTopic=cds-consumer
-blueprintsprocessor.messageclient.self-service-api.groupId=cds-consumer-group
-blueprintsprocessor.messageclient.self-service-api.clientId=cds-client
-blueprintsprocessor.messageclient.self-service-api.kafkaEnable=false
+# Config Data REST client settings
+blueprintsprocessor.restclient.sdnc.type=basic-auth
+blueprintsprocessor.restclient.sdnc.url=http://sdnc:8282
+blueprintsprocessor.restclient.sdnc.username=admin
+blueprintsprocessor.restclient.sdnc.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# AAI Data REST Client settings
+blueprintsprocessor.restclient.aai-data.type=basic-auth
+blueprintsprocessor.restclient.aai-data.url=https://aai:8443
+blueprintsprocessor.restclient.aai-data.username=aai@aai.onap.org
+blueprintsprocessor.restclient.aai-data.password=demo123456!
+
+# Self Service Request Kafka Message Consumer
+blueprintsprocessor.messageconsumer.self-service-api.kafkaEnable=false
+blueprintsprocessor.messageconsumer.self-service-api.type=kafka-basic-auth
+blueprintsprocessor.messageconsumer.self-service-api.bootstrapServers=message-router-kafka:9092
+blueprintsprocessor.messageconsumer.self-service-api.groupId=cds-consumer-group
+blueprintsprocessor.messageconsumer.self-service-api.topic=cds-consumer
+blueprintsprocessor.messageconsumer.self-service-api.clientId=cds-client
+blueprintsprocessor.messageconsumer.self-service-api.pollMillSec=1000
+
+# Self Service Response Kafka Message Producer
+blueprintsprocessor.messageproducer.self-service-api.bootstrapServers=message-router-kafka:9092
+blueprintsprocessor.messageproducer.self-service-api.type=kafka-basic-auth
+blueprintsprocessor.messageproducer.self-service-api.clientId=cds-client
+blueprintsprocessor.messageproducer.self-service-api.topic=cds-producer
 
index ef7d8d4..6cfc933 100755 (executable)
@@ -120,6 +120,8 @@ spec:
               path: application.properties
             - key: logback.xml
               path: logback.xml
+            - key: ONAP_RootCA.cer
+              path: ONAP_RootCA.cer
         - name: {{ include "common.fullname" . }}-blueprints
           persistentVolumeClaim:
             claimName: {{ .Release.Name }}-cds-blueprints
index 7ac3274..eb75997 100755 (executable)
@@ -1,7 +1,5 @@
 # Copyright (c) 2019 IBM, Bell Canada
 #
-#  Modifications Copyright (c) 2019 Bell Canada.
-#
 # 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
@@ -40,7 +38,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-blueprintsprocessor:0.5.1
+image: onap/ccsdk-blueprintsprocessor:0.6.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 0db73be..e405470 100755 (executable)
@@ -40,7 +40,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-commandexecutor:0.5.1
+image: onap/ccsdk-commandexecutor:0.6.2
 pullPolicy: Always
 
 # application configuration
index ebc1d2e..bfaa079 100755 (executable)
@@ -44,24 +44,25 @@ spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.ImprovedNamingStrategy
 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
 
 # Load Resource Source Mappings
-resourceSourceMappings=processor-db=source-processor-db,primary-db=source-processor-db,input=source-input,default=source-default,primary-config-data=source-rest,primary-aai-data=source-rest,capability=source-capability
+resourceSourceMappings=processor-db=source-db,input=source-input,default=source-default,sdnc=source-rest,aai-data=source-rest,capability=source-capability
 
 # Controller Blueprints Core Configuration
-controllerblueprints.blueprintDeployPath=/etc/blueprints/deploy
-controllerblueprints.blueprintArchivePath=/etc/blueprints/archive
-controllerblueprints.blueprintWorkingPath=/etc/blueprints/work
+# Blueprint Processor File Execution and Handling Properties
+blueprintsprocessor.blueprintDeployPath=/etc/blueprints/deploy
+blueprintsprocessor.blueprintArchivePath=/etc/blueprints/archive
+blueprintsprocessor.blueprintWorkingPath=/etc/blueprints/work
 # Controller Blueprint Load Configurations
 # blueprints.load.initial-data may be overridden by ENV variables
-controllerblueprints.loadInitialData={{ .Values.config.initDataLoad }}
-controllerblueprints.loadBluePrint=true
-controllerblueprints.loadBluePrintPaths=/opt/app/onap/model-catalog/blueprint-model/service-blueprint
-controllerblueprints.loadModelType=true
-controllerblueprints.loadModeTypePaths=/opt/app/onap/model-catalog/definition-type/starter-type
-controllerblueprints.loadResourceDictionary=true
-controllerblueprints.loadResourceDictionaryPaths=/opt/app/onap/model-catalog/resource-dictionary/starter-dictionary
+blueprintsprocessor.loadInitialData={{ .Values.config.initDataLoad }}
+blueprintsprocessor.loadBluePrint=true
+blueprintsprocessor.loadBluePrintPaths=/opt/app/onap/model-catalog/blueprint-model/service-blueprint
+blueprintsprocessor.loadModelType=true
+blueprintsprocessor.loadModeTypePaths=/opt/app/onap/model-catalog/definition-type/starter-type
+blueprintsprocessor.loadResourceDictionary=true
+blueprintsprocessor.loadResourceDictionaryPaths=/opt/app/onap/model-catalog/resource-dictionary/starter-dictionary
 
 # CBA file extension
-controllerblueprints.loadCbaExtension=zip
+blueprintsprocessor.loadCbaExtension=zip
 
 # Web server config
-server.port=8080
\ No newline at end of file
+server.port=8080
index 4e32c5e..0bf8692 100755 (executable)
@@ -38,7 +38,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-controllerblueprints:0.5.1
+image: onap/ccsdk-controllerblueprints:0.6.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index c14b997..8562272 100644 (file)
@@ -37,7 +37,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-sdclistener:0.5.1
+image: onap/ccsdk-sdclistener:0.6.2
 name: sdc-listener
 pullPolicy: Always
 
index 60c0a8a..a3449bb 100644 (file)
@@ -28,7 +28,7 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-cds-ui-server:0.5.1
+image: onap/ccsdk-cds-ui-server:0.6.2
 pullPolicy: Always
 
 # application configuration
index cdede47..a0dc0e8 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright Â© 2019 Bell Canada
+# Copyright Â© 2019 Orange, Bell Canada
+# Copyright Â© 2017 Amdocs, Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+  nodePortPrefix: 302
+  nodePortPrefixExt: 304
+  repository: nexus3.onap.org:10001
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.2
+  loggingRepository: docker.elastic.co
+  loggingImage: beats/filebeat:5.5.0
+  persistence:
+    mountPath: /dockerdata-nfs
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application images
+repository: nexus3.onap.org:10001
+pullPolicy: Always
+
+
+subChartsOnly:
+  enabled: true
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+
+readiness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+
+ingress:
+  enabled: false
+
+
 mariadb-galera:
   config:
       userName: sdnctl
@@ -25,4 +77,25 @@ mariadb-galera:
   replicaCount: 1
   persistence:
     enabled: true
-    mountSubPath: cds/data
\ No newline at end of file
+    mountSubPath: cds/data
+
+#Resource Limit flavor -By Default using small
+flavor: small
+#segregation for different envionment (Small and Large)
+
+resources:
+  small:
+    limits:
+      cpu: 2
+      memory: 4Gi
+    requests:
+      cpu: 1
+      memory: 2Gi
+  large:
+    limits:
+      cpu: 4
+      memory: 8Gi
+    requests:
+      cpu: 2
+      memory: 4Gi
+  unlimited: {}
@@ -14,6 +14,6 @@
 # limitations under the License.
 
 apiVersion: v1
-description: ONAP multicloud OpenStack Ocata Plugin
-name: multicloud-ocata
+description: ONAP Clamp
+name: clamp-backend
 version: 5.0.0
@@ -1,4 +1,5 @@
-# Copyright Â© 2017-2018 Amdocs, Bell Canada, AT&T
+# Copyright Â© 2017 Amdocs, Bell Canada
+# Modifications Copyright Â© 2018 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-HEALTHCHECK_USER=demo@people.osaaf.org
-HEALTHCHECK_PASSWORD=demo123456!
+dependencies:
+  - name: common
+    version: ~5.x-0
+    # local reference to common chart, as it is
+    # a part of this chart's package and will not
+    # be published independently to a repo (at this point)
+    repository: '@local'
@@ -1,4 +1,4 @@
-# Copyright Â© 2018 Amdocs, AT&T, Bell Canada
+# Copyright Â© 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  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.
@@ -11,8 +11,6 @@
 # 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.
-
-
 1. Get the application URL by running these commands:
 {{- if .Values.ingress.enabled }}
 {{- range .Values.ingress.hosts }}
@@ -28,7 +26,7 @@
   export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
   echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
 {{- else if contains "ClusterIP" .Values.service.type }}
-  export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
-  echo "Visit http://127.0.0.1:8080 to use your application"
-  kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+  export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+  echo "Visit https://127.0.0.1:8443 to use your application"
+  kubectl port-forward $POD_NAME 8443:{{ .Values.service.internalPort }}
 {{- end }}
diff --git a/kubernetes/clamp/charts/clamp-backend/templates/configmap.yaml b/kubernetes/clamp/charts/clamp-backend/templates/configmap.yaml
new file mode 100644 (file)
index 0000000..21df037
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright Â© 2017 Amdocs, Bell Canada
+# Modifications Copyright Â© 2018 AT&T
+#
+# 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: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+  spring_application_json: {{ tpl .Values.config.springApplicationJson . | quote }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: {{ .Release.Name }}-clamp-filebeat-configmap
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/clamp/charts/clamp-backend/templates/deployment.yaml b/kubernetes/clamp/charts/clamp-backend/templates/deployment.yaml
new file mode 100644 (file)
index 0000000..6b6fcc7
--- /dev/null
@@ -0,0 +1,126 @@
+# Copyright Â© 2017 Amdocs, Bell Canada
+# Modifications Copyright Â© 2018 AT&T
+#
+# 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: extensions/v1beta1
+kind: Deployment
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  replicas: {{ .Values.replicaCount }}
+  template:
+    metadata:
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      initContainers:
+      - command:
+        - /root/ready.py
+        args:
+        - --container-name
+        - mariadb
+        env:
+        - name: NAMESPACE
+          valueFrom:
+            fieldRef:
+              apiVersion: v1
+              fieldPath: metadata.namespace
+        image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+        name: {{ include "common.name" . }}-readiness
+      containers:
+        # side car containers
+        - name: {{ include "common.name" . }}-filebeat-onap
+          image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          volumeMounts:
+          - name: {{ include "common.fullname" . }}-filebeat-conf
+            mountPath: /usr/share/filebeat/filebeat.yml
+            subPath: filebeat.yml
+          - name: {{ include "common.fullname" . }}-data-filebeat
+            mountPath: /usr/share/filebeat/data
+          - name: {{ include "common.fullname" . }}-logs
+            mountPath: /var/log/onap
+        - name: {{ include "common.name" . }}
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+          args:
+            - "-Dcom.att.eelf.logging.file=file:/opt/clamp/logback.xml"
+            - ""
+          ports:
+          - containerPort: {{ .Values.service.internalPort }}
+          # 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.service.internalPort }}
+            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.liveness.periodSeconds }}
+          {{ end -}}
+          readinessProbe:
+            tcpSocket:
+              port: {{ .Values.service.internalPort }}
+            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+            periodSeconds: {{ .Values.readiness.periodSeconds }}
+          volumeMounts:
+          - name: {{ include "common.fullname" . }}-logs
+            mountPath: /var/log/onap
+          - mountPath: /opt/clamp/sdc-controllers-config.json
+            name: {{ include "common.fullname" . }}-config
+            subPath: sdc-controllers-config.json
+          - mountPath: /opt/clamp/logback.xml
+            name: {{ include "common.fullname" . }}-config
+            subPath: logback.xml
+          env:
+            - name: SPRING_APPLICATION_JSON
+              valueFrom:
+                configMapKeyRef:
+                  name: {{ template "common.fullname" . }}
+                  key: spring_application_json
+          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: {{ include "common.fullname" . }}-config
+          configMap:
+            name: {{ include "common.fullname" . }}
+            items:
+            - key: sdc-controllers-config.json
+              path: sdc-controllers-config.json
+            - key: logback.xml
+              path: logback.xml
+        - name: {{ include "common.fullname" . }}-filebeat-conf
+          configMap:
+            name: {{ .Release.Name }}-clamp-filebeat-configmap
+        - name: {{ include "common.fullname" . }}-data-filebeat
+          emptyDir: {}
+        - name:  {{ include "common.fullname" . }}-logs
+          emptyDir: {}
+      imagePullSecrets:
+      - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/clamp/charts/clamp-backend/templates/service.yaml b/kubernetes/clamp/charts/clamp-backend/templates/service.yaml
new file mode 100644 (file)
index 0000000..f1438a4
--- /dev/null
@@ -0,0 +1,40 @@
+# Copyright Â© 2017 Amdocs, Bell Canada
+# Modifications Copyright Â© 2018 AT&T
+#
+# 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: Service
+metadata:
+  name: {{ include "common.servicename" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  type: {{ .Values.service.type }}
+  ports:
+    {{if eq .Values.service.type "NodePort" -}}
+    - port: {{ .Values.service.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+      name: {{ .Values.service.portName }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort }}
+      targetPort: {{ .Values.service.internalPort }}
+      name: {{ .Values.service.portName }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
diff --git a/kubernetes/clamp/charts/clamp-backend/values.yaml b/kubernetes/clamp/charts/clamp-backend/values.yaml
new file mode 100644 (file)
index 0000000..a72d0c5
--- /dev/null
@@ -0,0 +1,130 @@
+# Copyright Â© 2017 Amdocs, Bell Canada
+# Modifications Copyright Â© 2018-2019 AT&T
+#
+# 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: # global defaults
+  nodePortPrefix: 302
+  repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.0
+  persistence: {}
+
+flavor: small
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/clamp-backend:4.1.2
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+config:
+  log:
+    logstashServiceName: log-ls
+    logstashPort: 5044
+  mysqlPassword: strong_pitchou
+  dataRootDir: /dockerdata-nfs
+  springApplicationJson: >
+    {
+        "spring.datasource.cldsdb.url": "jdbc:mariadb:sequential://clampdb.{{ include "common.namespace" . }}:3306/cldsdb4?autoReconnect=true&connectTimeout=10000&socketTimeout=10000&retriesAllDown=3",
+        "clamp.config.sdc.catalog.url": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/",
+        "clamp.config.sdc.hostUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/",
+        "clamp.config.sdc.serviceUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/services",
+        "clamp.config.sdc.serviceUsername": "clamp",
+        "clamp.config.sdc.servicePassword": "b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981",
+        "clamp.config.files.sdcController": "file:/opt/clamp/sdc-controllers-config.json",
+        "clamp.config.dcae.inventory.url": "https://inventory.{{ include "common.namespace" . }}:8080",
+        "clamp.config.dcae.dispatcher.url": "https4://deployment-handler.{{ include "common.namespace" . }}:8443",
+        "clamp.config.dcae.deployment.url": "https4://deployment-handler.{{ include "common.namespace" . }}:8443",
+        "clamp.config.dcae.deployment.userName": "none",
+        "clamp.config.dcae.deployment.password": "none",
+        "clamp.config.policy.api.url": "https4://policy-api.{{ include "common.namespace" . }}:6969",
+        "clamp.config.policy.api.userName": "healthcheck",
+        "clamp.config.policy.api.password": "zb!XztG34",
+        "clamp.config.policy.pap.url": "https4://policy-pap.{{ include "common.namespace" . }}:6969",
+        "clamp.config.policy.pap.userName": "healthcheck",
+        "clamp.config.policy.pap.password": "zb!XztG34",
+        "clamp.config.policy.pdpUrl1": "https://pdp.{{ include "common.namespace" . }}:8081/pdp/ , testpdp, alpha123",
+        "clamp.config.policy.pdpUrl2": "https://pdp.{{ include "common.namespace" . }}:8081/pdp/ , testpdp, alpha123",
+        "clamp.config.policy.papUrl": "https://pap.{{ include "common.namespace" . }}:9091/pap/ , testpap, alpha123",
+        "clamp.config.policy.clientKey": "dGVzdA==",
+        "clamp.config.cadi.aafLocateUrl": "https://aaf-locate.{{ include "common.namespace" . }}:8095",
+        "com.att.eelf.logging.path": "/opt/clamp",
+        "com.att.eelf.logging.file": "logback.xml"
+    }
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+  initialDelaySeconds: 120
+  periodSeconds: 10
+  # necessary to disable liveness probe when setting breakpoints
+  # in debugger so K8s doesn't restart unresponsive container
+  enabled: true
+
+readiness:
+  initialDelaySeconds: 10
+  periodSeconds: 10
+
+
+service:
+  type: ClusterIP
+  name: clamp-backend
+  portName: clamp-backend
+  internalPort: 8443
+  externalPort: 443
+
+ingress:
+  enabled: false
+
+#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: 1
+      memory: 1.2Gi
+    requests:
+      cpu: 10m
+      memory: 800Mi
+  large:
+    limits:
+      cpu: 1
+      memory: 1.2Gi
+    requests:
+      cpu: 10m
+      memory: 800Mi
+  unlimited: {}
index 996d218..26affe6 100644 (file)
@@ -129,18 +129,26 @@ http.port: {{.Values.service.externalPort}}
 # Defaults to 9300-9400.
 # More info:
 transport.tcp.port: {{.Values.service.externalPort2}}
-
 #xpack.graph.enabled: false
 #Set to false to disable X-Pack graph features.
-
 #xpack.ml.enabled: false
 #Set to false to disable X-Pack machine learning features.
-
 #xpack.monitoring.enabled: false
 #Set to false to disable X-Pack monitoring features.
 
-#xpack.security.enabled: false
-#Set to false to disable X-Pack security features.
 
 #xpack.watcher.enabled: false
 #Set to false to disable Watcher.
+
+#xpack.license.self_generated.type: basic
+#xpack.security.enabled: false
+
+## Search Guard
+#
+searchguard.enterprise_modules_enabled: false
+searchguard.ssl.transport.keystore_filepath: sg/node-0-keystore.jks
+searchguard.ssl.transport.truststore_filepath: sg/truststore.jks
+searchguard.ssl.transport.enforce_hostname_verification: false
+
+searchguard.authcz.admin_dn:
+  - "CN=kirk,OU=client,O=client,l=tEst,C=De"
index d1504e0..5070f24 100644 (file)
@@ -58,7 +58,7 @@ spec:
           mountPath: /usr/share/elasticsearch/data/
       containers:
         - name: {{ include "common.name" . }}
-          image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           ports:
           - containerPort: {{ .Values.service.internalPort }}
index f385128..2d67048 100644 (file)
@@ -32,7 +32,7 @@ busyboxImage: library/busybox:latest
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp-dashboard-elasticsearch:4.1.0
+image: onap/clamp-dashboard-elasticsearch:4.1.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -77,7 +77,7 @@ persistence:
   ## If undefined (the default) or set to null, no storageClassName spec is
   ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
   ##   GKE, AWS & OpenStack)
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 4Gi
   mountPath: /dockerdata-nfs
   mountSubPath: clamp/dashboard-elasticsearch/data
index 2173039..55df82b 100644 (file)
@@ -128,7 +128,7 @@ server.ssl.key: {{.Values.config.sslPemkeyFilePath}}
 
 ## Search Guard
 #
-xpack.security.enabled: false
+#xpack.security.enabled: false
 elasticsearch.username: {{.Values.config.elasticUSR}}
 elasticsearch.password: {{.Values.config.elasticPWD}}
 
index 276ac5d..94e14b5 100644 (file)
@@ -20,7 +20,7 @@ global:
   nodePortPrefix: 302
   repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
   readinessRepository: oomk8s
-  readinessImage: readiness-check:1.1.0
+  readinessImage: readiness-check:2.0.0
   persistence: {}
 flavor: small
 
@@ -34,7 +34,7 @@ busyboxImage: library/busybox:latest
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp-dashboard-kibana:4.1.0
+image: onap/clamp-dashboard-kibana:4.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index e7ab68f..689977d 100644 (file)
@@ -20,7 +20,7 @@ global:
   nodePortPrefix: 302
   repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
   readinessRepository: oomk8s
-  readinessImage: readiness-check:1.1.0
+  readinessImage: readiness-check:2.0.0
   persistence: {}
 flavor: small
 
@@ -30,7 +30,7 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp-dashboard-logstash:4.1.0
+image: onap/clamp-dashboard-logstash:4.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 5d6f14f..9b12b18 100644 (file)
@@ -20,6 +20,7 @@
 
     create table loop_logs (
        id bigint not null,
+        log_component varchar(255) not null,
         log_instant datetime(6) not null,
         log_type varchar(255) not null,
         message MEDIUMTEXT not null,
@@ -36,6 +37,7 @@
         global_properties_json json,
         last_computed_state varchar(255) not null,
         model_properties_json json,
+        operational_policy_schema json,
         svg_representation MEDIUMTEXT,
         primary key (name)
     ) engine=InnoDB;
index 581f4a0..5d9b191 100644 (file)
@@ -28,7 +28,7 @@ spec:
   ports:
     {{if eq .Values.service.type "NodePort" -}}
     - port: {{ .Values.service.internalPort }}
-      nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
     {{- else -}}
     - port: {{ .Values.service.externalPort }}
       targetPort: {{ .Values.service.internalPort }}
diff --git a/kubernetes/clamp/resources/config/nginx.conf b/kubernetes/clamp/resources/config/nginx.conf
new file mode 100644 (file)
index 0000000..ce94eff
--- /dev/null
@@ -0,0 +1,23 @@
+server {
+
+  listen 443 default ssl;
+  ssl_protocols TLSv1.2;
+  ssl_certificate /etc/ssl/clamp.pem;
+  ssl_certificate_key /etc/ssl/clamp.key;
+    location /restservices/clds/ {
+        proxy_pass https://clamp-backend:443;
+    }
+
+  location / {
+    root   /usr/share/nginx/html;
+    index  index.html index.htm;
+    try_files $uri $uri/ /index.html;
+  }
+
+  error_page   500 502 503 504  /50x.html;
+
+  location = /50x.html {
+    root   /usr/share/nginx/html;
+  }
+
+}
index 21df037..9186cd9 100644 (file)
@@ -25,17 +25,3 @@ metadata:
     heritage: {{ .Release.Service }}
 data:
 {{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
-  spring_application_json: {{ tpl .Values.config.springApplicationJson . | quote }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ .Release.Name }}-clamp-filebeat-configmap
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
index 4e6d1d1..9585e1f 100644 (file)
@@ -36,7 +36,7 @@ spec:
         - /root/ready.py
         args:
         - --container-name
-        - {{ .Values.mariadb.nameOverride }}
+        - clamp-backend
         env:
         - name: NAMESPACE
           valueFrom:
@@ -58,13 +58,10 @@ spec:
           - name: {{ include "common.fullname" . }}-data-filebeat
             mountPath: /usr/share/filebeat/data
           - name: {{ include "common.fullname" . }}-logs
-            mountPath: /var/log/onap
+            mountPath: /var/log/nginx/
         - name: {{ include "common.name" . }}
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          args:
-            - "-Dcom.att.eelf.logging.file=file:/opt/clamp/logback.xml"
-            - ""
           ports:
           - containerPort: {{ .Values.service.internalPort }}
           # disable liveness probe when breakpoints set in debugger
@@ -83,19 +80,10 @@ spec:
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           volumeMounts:
           - name: {{ include "common.fullname" . }}-logs
-            mountPath: /var/log/onap
-          - mountPath: /opt/clamp/sdc-controllers-config.json
+            mountPath: /var/log/nginx/
+          - mountPath: /etc/nginx/conf.d/nginx.conf
             name: {{ include "common.fullname" . }}-config
-            subPath: sdc-controllers-config.json
-          - mountPath: /opt/clamp/logback.xml
-            name: {{ include "common.fullname" . }}-config
-            subPath: logback.xml
-          env:
-            - name: SPRING_APPLICATION_JSON
-              valueFrom:
-                configMapKeyRef:
-                  name: {{ template "common.fullname" . }}
-                  key: spring_application_json
+            subPath: nginx.conf
           resources:
 {{ include "common.resources" . | indent 12 }}
         {{- if .Values.nodeSelector }}
@@ -111,10 +99,8 @@ spec:
           configMap:
             name: {{ include "common.fullname" . }}
             items:
-            - key: sdc-controllers-config.json
-              path: sdc-controllers-config.json
-            - key: logback.xml
-              path: logback.xml
+            - key: nginx.conf
+              path: nginx.conf
         - name: {{ include "common.fullname" . }}-filebeat-conf
           configMap:
             name: {{ .Release.Name }}-clamp-filebeat-configmap
index f1438a4..3a08db0 100644 (file)
@@ -16,7 +16,7 @@
 apiVersion: v1
 kind: Service
 metadata:
-  name: {{ include "common.servicename" . }}
+  name: {{ .Values.service.name }}
   namespace: {{ include "common.namespace" . }}
   labels:
     app: {{ include "common.name" . }}
@@ -38,3 +38,30 @@ spec:
   selector:
     app: {{ include "common.name" . }}
     release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: {{ .Values.service.name2 }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+spec:
+  type: {{ .Values.service.type2 }}
+  ports:
+    {{if eq .Values.service.type2 "NodePort" -}}
+    - port: {{ .Values.service.internalPort2 }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+      name: {{ .Values.config.portName2 }}
+    {{- else -}}
+    - port: {{ .Values.service.externalPort2 }}
+      targetPort: {{ .Values.service.internalPort2 }}
+      name: {{ .Values.config.portName2 }}
+    {{- end}}
+  selector:
+    app: {{ include "common.name" . }}
+    release: {{ .Release.Name }}
\ No newline at end of file
index 0304604..a0385ad 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright Â© 2017 Amdocs, Bell Canada
-# Modifications Copyright Â© 2018 AT&T
+# Modifications Copyright Â© 2018-2019 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -30,7 +30,7 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/clamp:4.1.0
+image: onap/clamp-frontend:4.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -43,41 +43,7 @@ config:
   log:
     logstashServiceName: log-ls
     logstashPort: 5044
-  mysqlPassword: strong_pitchou
   dataRootDir: /dockerdata-nfs
-  springApplicationJson: >
-    {
-        "spring.datasource.cldsdb.url": "jdbc:mariadb:sequential://clampdb.{{ include "common.namespace" . }}:3306/cldsdb4?autoReconnect=true&connectTimeout=10000&socketTimeout=10000&retriesAllDown=3",
-        "clamp.config.sdc.catalog.url": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/",
-        "clamp.config.sdc.hostUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/",
-        "clamp.config.sdc.serviceUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/services",
-        "clamp.config.sdc.serviceUsername": "clamp",
-        "clamp.config.sdc.servicePassword": "b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981",
-        "clamp.config.files.sdcController": "file:/opt/clamp/sdc-controllers-config.json",
-        "clamp.config.dcae.inventory.url": "https://inventory.{{ include "common.namespace" . }}:8080",
-        "clamp.config.dcae.dispatcher.url": "https4://deployment-handler.{{ include "common.namespace" . }}:8443",
-        "clamp.config.dcae.deployment.url": "https4://deployment-handler.{{ include "common.namespace" . }}:8443",
-        "clamp.config.dcae.deployment.userName": "none",
-        "clamp.config.dcae.deployment.password": "none",
-        "clamp.config.policy.api.url": "https4://policy-api.{{ include "common.namespace" . }}:6969",
-        "clamp.config.policy.api.userName": "healthcheck",
-        "clamp.config.policy.api.password": "zb!XztG34",
-        "clamp.config.policy.pap.url": "https4://policy-pap.{{ include "common.namespace" . }}:6969",
-        "clamp.config.policy.pap.userName": "healthcheck",
-        "clamp.config.policy.pap.password": "zb!XztG34",
-        "clamp.config.policy.pdpUrl1": "https://pdp.{{ include "common.namespace" . }}:8081/pdp/ , testpdp, alpha123",
-        "clamp.config.policy.pdpUrl2": "https://pdp.{{ include "common.namespace" . }}:8081/pdp/ , testpdp, alpha123",
-        "clamp.config.policy.papUrl": "https://pap.{{ include "common.namespace" . }}:9091/pap/ , testpap, alpha123",
-        "clamp.config.policy.clientKey": "dGVzdA==",
-        "clamp.config.cadi.aafLocateUrl": "https://aaf-locate.{{ include "common.namespace" . }}:8095",
-        "com.att.eelf.logging.path": "/opt/clamp",
-        "com.att.eelf.logging.file": "logback.xml"
-    }
-
-# subchart configuration
-mariadb:
-  nameOverride: clampdb
-
 
 # default number of instances
 replicaCount: 1
@@ -101,14 +67,19 @@ readiness:
 
 service:
   type: NodePort
-  name: clamp
-  portName: clamp
-  internalPort: 8443
-  externalPort: 8443
+  name: clamp-external
+  portName: clamp-external
+  internalPort: 443
   nodePort: 58
+
   # as of 20180904 port 58 is reserved for clamp from log/logdemonode
   # see https://wiki.onap.org/display/DW/OOM+NodePort+List
 
+  type2: ClusterIP
+  name2: clamp
+  portName2: clamp-internal
+  internalPort2: 443
+  externalPort2: 8443
 
 ingress:
   enabled: false
@@ -128,15 +99,15 @@ resources:
   small:
     limits:
       cpu: 1
-      memory: 1.2Gi
+      memory: 200Mi
     requests:
       cpu: 10m
-      memory: 800Mi
+      memory: 50Mi
   large:
     limits:
       cpu: 1
-      memory: 1.2Gi
+      memory: 500Mi
     requests:
       cpu: 10m
-      memory: 800Mi
+      memory: 50Mi
   unlimited: {}
diff --git a/kubernetes/common/cassandra/resources/exec.py b/kubernetes/common/cassandra/resources/exec.py
new file mode 100644 (file)
index 0000000..5b3ae33
--- /dev/null
@@ -0,0 +1,122 @@
+#!/usr/bin/python
+import getopt
+import logging
+import os
+import sys
+import time
+
+from kubernetes import config
+from kubernetes.client import Configuration
+from kubernetes.client.apis import core_v1_api
+from kubernetes.client.rest import ApiException
+from kubernetes.stream import stream
+
+from kubernetes import client
+
+# extract env variables.
+namespace = os.environ['NAMESPACE']
+cert = os.environ['CERT']
+host = os.environ['KUBERNETES_SERVICE_HOST']
+token_path = os.environ['TOKEN']
+
+with open(token_path, 'r') as token_file:
+    token = token_file.read().replace('\n', '')
+
+# setup logging
+log = logging.getLogger(__name__)
+handler = logging.StreamHandler(sys.stdout)
+handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
+handler.setLevel(logging.INFO)
+log.addHandler(handler)
+log.setLevel(logging.INFO)
+
+configuration = client.Configuration()
+configuration.host = "https://" + host
+configuration.ssl_ca_cert = cert
+configuration.api_key['authorization'] = token
+configuration.api_key_prefix['authorization'] = 'Bearer'
+configuration.assert_hostname = False
+coreV1Api = client.CoreV1Api(client.ApiClient(configuration))
+api_instance = client.CoreV1Api(client.ApiClient(configuration))
+
+def run_command( pod_name, command ):
+        try:
+                exec_command = [
+                    '/bin/sh',
+                    '-c',
+                    command]
+                resp = stream(api_instance.connect_get_namespaced_pod_exec, pod_name, namespace,
+                      command=exec_command,
+                      stderr=True, stdin=False,
+                      stdout=True, tty=False)
+        except ApiException as e:
+                print("Exception when calling CoreV1Api->connect_get_namespaced_pod_exec: %s\n" % e)
+                return False
+        print(resp)
+        return True
+
+def find_pod(container_name,command,pods):
+    ready = False
+    try:
+        response = coreV1Api.list_namespaced_pod(namespace=namespace, watch=False)
+        for i in response.items:
+            # container_statuses can be None, which is non-iterable.
+            if i.status.container_statuses is None:
+                continue
+            for s in i.status.container_statuses:
+                if s.name == container_name:
+                    if pods == True:
+                       print (i.metadata.name)
+                    else:
+                       ready = run_command(i.metadata.name,command)
+                else:
+                    continue
+    except Exception as e:
+        log.error("Exception when calling list_namespaced_pod: %s\n" % e)
+
+    return ready
+
+
+DESCRIPTION = "Kubernetes container readiness check utility"
+USAGE = "Usage: ready.py [-t <timeout>] -c <container_name> [-c <container_name> ...]\n" \
+        "where\n" \
+        "<container_name> - name of the container to wait for\n"
+
+def main(argv):
+    pods = False
+    command = ""
+    container_name = ""
+    try:
+        opts, args = getopt.getopt(argv, "ghp:c:", ["pod-container-name=", "command=", "help","getpods"])
+        for opt, arg in opts:
+            if opt in ("-h", "--help"):
+                print("%s\n\n%s" % (DESCRIPTION, USAGE))
+                sys.exit()
+            elif opt in ("-p", "--pod-container-name"):
+                container_name = arg
+            elif opt in ("-c", "--command"):
+                command = arg
+            elif opt in ("-g", "--getpods"):
+                pods = True
+    except (getopt.GetoptError, ValueError) as e:
+        print("Error parsing input parameters: %s\n" % e)
+        print(USAGE)
+        sys.exit(2)
+    if container_name.__len__() == 0:
+        print("Missing required input parameter(s)\n")
+        print(USAGE)
+        sys.exit(2)
+
+    if pods == False:
+            if command.__len__() == 0:
+                print("Missing required input parameter(s)\n")
+                print(USAGE)
+                sys.exit(2)
+    ready = find_pod(container_name,command,pods)
+    if ready == False:
+        sys.exit(2)
+
+if __name__ == "__main__":
+    main(sys.argv[1:])
+
+
diff --git a/kubernetes/common/cassandra/resources/restore.sh b/kubernetes/common/cassandra/resources/restore.sh
new file mode 100644 (file)
index 0000000..b9deb32
--- /dev/null
@@ -0,0 +1,119 @@
+#!/bin/bash
+
+# Initialize variables
+ss_dir=""
+base_db_dir=""
+ss_name=""
+ss="snapshots"
+me=`basename $0`
+
+function find_target_table_name()
+{
+    dest_path=$1
+    keyspace_name=$2
+    src_table_name=$3
+    find_in_dir=$dest_path/$keyspace_name
+    tname_without_uuid=$(echo $src_table_name | cut -d '-' -f 1)
+    dest_table_name=$(ls -td -- $find_in_dir/$tname_without_uuid-* | head -n 1 | rev | cut -d'/' -f1 | rev)
+    printf $dest_table_name
+}
+
+function print_usage()
+{
+       echo "NAME"
+       echo "  Script to restore Cassandra database from Nuvo/Cain snapshot"
+       echo "SYNOPSIS"
+       echo "  $me [--help|-h] [--base_db_dir|-b] [--snapshot_dir|-s] [--keyspace|-k] [--tag|-t]"
+       echo "  MUST OPTIONS: base_db_dir, snapshot_dir, keyspace_name"
+       echo "DESCRIPTION"
+       echo "  --base_db_dir, -b"
+       echo "          Location of running Cassandra database"
+       echo "  --snapshot_dir, -s"
+       echo "          Snapshot location of Cassandra database taken by Nuvo/Cain"
+       echo "  --keyspace, -k"
+       echo "          Name of the keyspace to restore"
+       echo "EXAMPLE"
+       echo "  $me -b /var/lib/cassandra/data -s /root/data.ss -k DISCOVERY_SERVER -t 1234567"
+       exit
+}
+if [ $# -eq  0 ]
+then
+       print_usage
+fi
+
+while [[ $# -gt 0 ]]
+do
+key="$1"
+shift
+
+case $key in
+       -h|--help)
+       print_usage
+       ;;
+       -b|--base_db_dir)
+       base_db_dir="$1"
+       shift
+       ;;
+       -s|--snapshot_dir)
+       ss_dir="$1"
+       shift
+       ;;
+       -k|--keyspace)
+       keyspace_name="$1"
+       ;;
+       -t|--tag)
+       tag_name="$1"
+       ;;
+       --default)
+       DEFAULT=YES
+       shift
+       ;;
+       *)
+       # unknown option
+       ;;
+esac
+done
+
+# Validate inputs
+if [ "$base_db_dir" == "" ] || [ "$ss_dir" == "" ] || [ "$keyspace_name" == "" ]
+then
+       echo ""
+       echo ">>>>>>>>>>Not all inputs provided, please check usage >>>>>>>>>>"
+       echo ""
+       print_usage
+fi
+
+# Remove commit logs from current data dir
+#/var/lib/cassandra/commitlog/CommitLog*.log
+find $base_db_dir/../  -name "CommitLog*.log"  -delete
+
+# Remove *.db from current data dir excluding skipped keyspaces
+find $base_db_dir/$keyspace_name  -name "*.db"  -delete
+
+# Copy snapshots to data dir
+echo "----------db files in snapshots--------------"
+dirs_to_be_restored=`ls $ss_dir`
+for i in ${dirs_to_be_restored}
+do
+    src_path=$ss_dir/$i/snapshots/$tag_name
+    # Find the destination
+    table_name=$i
+    dest_table=$(find_target_table_name $base_db_dir $keyspace_name $table_name)
+    dest_path=$base_db_dir/$keyspace_name/$dest_table
+    # Create keyspace/table directory if not exists
+    #if [ ! -d "$dest_path" ]; then
+    #    mkdir -p $dest_path
+    #fi
+    db_files=$(ls $src_path/*.db 2> /dev/null | wc -l)
+    if [ $db_files -ne 0 ]
+    then
+        cp $src_path/*.db $dest_path
+        if [ $? -ne 0 ]
+        then
+            echo "=====ERROR: Unable to restore $src_path/*.db to $dest_path====="
+            exit 1
+        fi
+        echo "=======check $dest_path ==============="
+        ls $dest_path
+   fi
+done
diff --git a/kubernetes/common/cassandra/templates/backup/configmap.yaml b/kubernetes/common/cassandra/templates/backup/configmap.yaml
new file mode 100644 (file)
index 0000000..e9e1012
--- /dev/null
@@ -0,0 +1,30 @@
+{{/*
+# Copyright Â© 2019 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+{{- if .Values.backup.enabled }}
+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: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/restore.sh").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/exec.py").AsConfig . | indent 2 }}
+{{- end -}}
diff --git a/kubernetes/common/cassandra/templates/backup/cronjob.yaml b/kubernetes/common/cassandra/templates/backup/cronjob.yaml
new file mode 100644 (file)
index 0000000..630ac43
--- /dev/null
@@ -0,0 +1,242 @@
+{{/*
+# Copyright Â© 2019 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+{{- if .Values.backup.enabled }}
+apiVersion: batch/v1beta1
+kind: CronJob
+metadata:
+  name: {{ include "common.fullname" . }}-backup
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  schedule: {{ .Values.backup.cron | quote }}
+  concurrencyPolicy: Forbid
+  startingDeadlineSeconds: 120
+  jobTemplate:
+    spec:
+      template:
+        spec:
+          restartPolicy: Never
+          initContainers:
+            - command:
+              - /root/ready.py
+              args:
+              - --container-name
+              - {{ include "common.name" . }}
+              env:
+              - name: NAMESPACE
+                valueFrom:
+                  fieldRef:
+                    apiVersion: v1
+                    fieldPath: metadata.namespace
+              image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+              imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+              name: {{ include "common.name" . }}-readiness
+            - name: "cassandra-backup-init"
+              image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+              imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+              command:
+              - /bin/bash
+              - -c
+              - |
+                clearSnapshot(){
+                  curr_time=$1
+                  echo "Clearing snapshots!!!"
+                  command="nodetool clearsnapshot -t $curr_time"
+                  /root/exec.py -p "cassandra" -c "$command"
+                }
+                {{ $root := . }}
+                curr_time=`date +%s`
+                pids=""
+                set -x
+
+                echo "Copying data"
+                {{ range $i, $e := until (int .Values.replicaCount) }}
+                  target_dir=/backup/temp/cassandra-{{ $i }}
+                  mkdir -p $target_dir
+                  cp -Ra /onap-data/cassandra-{{ $i }}/data/ $target_dir/
+                {{- end }}
+
+                echo "Executing cleanup!!"
+                command="nodetool cleanup"
+                /root/exec.py -p "cassandra" -c "$command"                
+                echo "Cleaned Node!! Backing up database now!!!"
+
+                command="nodetool snapshot -t $curr_time"
+                /root/exec.py -p "cassandra" -c "$command"
+                retCode=$?
+                if [ $retCode -ne 0 ]; then
+                  echo "Backup Failed!!!"
+                  rm -rf /backup/temp
+                  clearSnapshot $curr_time
+                  echo "Failed" > /backup/backup.log
+                  exit 0
+                fi
+
+                backup_dir=/backup/temp
+                {{ range $i, $e := until (int .Values.replicaCount) }}
+                  for d in $backup_dir/cassandra-{{ $i }}/data/*/ ; do
+                    d=$(echo $d | sed 's:/*$::')
+                    keyspace_name=$(echo "$d" | awk -F/ '{ print $NF }')
+                    if [ 1 ] {{- range $t, $keyspace := $root.Values.backup.keyspacesToSkip }} && [ "{{ $keyspace.name }}" != "$keyspace_name" ] {{- end }}; then
+                      /root/restore.sh -b $backup_dir/cassandra-{{ $i }}/data -s  /onap-data/cassandra-{{ $i }}/data/$keyspace_name -k $keyspace_name -t $curr_time &
+                      pids="$pids $!"
+                    fi                  
+                  done
+                {{- end }}
+
+                for p in $pids; do
+                  wait $p
+                  if [ $? -ne 0 ]; then
+                    rm -rf /backup/temp
+                    echo "Creation of Backup Failed!!!"
+                    clearSnapshot $curr_time
+                    echo "Failed" > /backup/backup.log
+                    exit 0
+                  fi
+                done
+
+                clearSnapshot $curr_time
+
+                exit_code=$?
+                if [ $exit_code -ne 0 ]; then
+                  rm -rf /backup/temp
+                  echo "Backup Failed!!!"
+                  echo "Failed" > /backup/backup.log
+                  exit 0
+                fi
+                
+                mv /backup/temp /backup/backup-${curr_time}
+                echo "Success" > /backup/backup.log
+                echo "Cassandra Backup Succeeded"
+              env:
+              - name: NAMESPACE
+                valueFrom:
+                  fieldRef:
+                    apiVersion: v1
+                    fieldPath: metadata.namespace
+              volumeMounts:
+              - mountPath: /etc/localtime
+                name: localtime
+                readOnly: true
+              - mountPath: /onap-data
+                name: data-dir
+              - mountPath: /backup
+                name: backup-dir
+              - name: scripts
+                mountPath: /root/restore.sh
+                subPath: restore.sh
+              - name: scripts
+                mountPath: /root/exec.py
+                subPath: exec.py           
+          containers:
+            - name: cassandra-backup-validate
+              image: "{{ .Values.image }}"
+              imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+              command:
+              - /bin/bash
+              - -c
+              - |
+                remove_dir(){
+                  dirToRemove=$1
+                  rm -rf $dirToRemove
+                }
+
+                backup_result=`cat /backup/backup.log`
+                rm -rf /backup/backup.log
+
+                if [ "$backup_result" == "Failed" ]; then
+                  echo "Backup Failed!!! So Validation Failed!!!";
+                  exit 0
+                fi
+
+                target_dir=$(ls -td -- /backup/*/ | head -n 1)
+                chown -R cassandra.cassandra $target_dir
+                {{- $root := . -}}
+                {{ range $i, $e := until (int .Values.replicaCount) }}
+                  dbSize=$(du -ks $target_dir/cassandra-{{ $i }}/data|awk -F " " '{ printf $1 }')
+                  minDbSize={{ (int $root.Values.backup.dbSize) }}
+                  if [ $dbSize -lt $minDbSize ]; then
+                    remove_dir $target_dir
+                    echo "Validation Failed!!! dbSize ($dbSize) is less than minimum size (1)!!!"
+                    exit 0
+                  fi
+                  rm -rf /var/lib/cassandra/*
+                  cp -Ra $target_dir/cassandra-{{ $i }}/data /var/lib/cassandra
+                  export CASSANDRA_LISTEN_ADDRESS="127.0.0.1"
+                  /docker-entrypoint.sh -Dcassandra.ignore_dc=true -Dcassandra.ignore_rack=true &
+                  CASS_PID=$!
+                  sleep 45
+
+                  for d in $target_dir/cassandra-{{ $i }}/data/*/; do
+                      d=$(echo $d | sed 's:/*$::')
+                      keyspace_name=$(echo "$d" | awk -F/ '{ print $NF }')
+                      if [ 1 ] {{- range $t, $keyspace := $root.Values.backup.keyspacesToSkip }} && [ "{{ $keyspace.name }}" != "$keyspace_name" ] {{- end }}; then
+                        echo "Verifying the data for  $keyspace_name "
+                        nodetool verify -e $keyspace_name
+                        ret=$?
+                        if [ $ret -ne 0 ]; then
+                          remove_dir $target_dir
+                          echo "Validation Failed!!!"
+                          exit 0
+                        fi
+                      fi
+                  done
+                  kill -9 $CASS_PID
+                {{- end }}
+                echo "Validation Successful!!!" 
+                cd /backup
+                totalFiles=`ls -t | grep "backup-" | wc -l`
+                if [ $totalFiles -gt {{ .Values.backup.retentionPeriod }} ]; then
+                  filestoDelete=`expr $totalFiles - {{ .Values.backup.retentionPeriod }}`
+                  ls -tr | grep backup | head -$filestoDelete | xargs rm -rf
+                fi
+              env:
+              - name: CASSANDRA_CLUSTER_NAME
+                value: {{ .Values.config.clusterName }}
+              - name: MAX_HEAP_SIZE
+                value: {{ .Values.config.heap.max }}
+              - name: HEAP_NEWSIZE
+                value: {{ .Values.config.heap.min }}
+              - name: HOST_IP
+                valueFrom:
+                  fieldRef:
+                    fieldPath: status.podIP
+              volumeMounts:
+              - name: backup-dir
+                mountPath: /backup
+              - name: localtime
+                mountPath: /etc/localtime
+                readOnly: true
+          volumes:
+          - name: localtime
+            hostPath:
+              path: /etc/localtime
+          - name: scripts
+            configMap:
+              name: {{ include "common.fullname" $ }}-configmap
+              defaultMode: 0755
+          - name: data-dir
+            persistentVolumeClaim:
+              claimName: {{ include "common.fullname" . }}-db-data
+          - name: backup-dir
+            persistentVolumeClaim:
+              claimName: {{ include "common.fullname" . }}-backup-data
+{{- end -}}
+              
diff --git a/kubernetes/common/cassandra/templates/backup/pv.yaml b/kubernetes/common/cassandra/templates/backup/pv.yaml
new file mode 100644 (file)
index 0000000..332dc95
--- /dev/null
@@ -0,0 +1,57 @@
+{{/*
+# Copyright Â© 2019 Amdocs, Bell Canada, AT&T
+#
+# 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.
+*/}}
+{{- if .Values.backup.enabled }}
+{{ if .Values.persistence.enabled }}
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+  name: {{ include "common.fullname" . }}-db-data
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    heritage: {{ .Release.Service }}
+    name: {{ include "common.fullname" . }}-db-data
+spec:
+  capacity:
+    storage: {{ .Values.persistence.size }}
+  accessModes:
+  - {{ .Values.persistence.accessMode }}
+  hostPath:
+    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+  name: {{ include "common.fullname" . }}-backup-data
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    heritage: {{ .Release.Service }}
+    name: {{ include "common.fullname" . }}-backup-data
+spec:
+  capacity:
+    storage: {{ .Values.persistence.size }}
+  accessModes:
+  - {{ .Values.persistence.accessMode }}
+  hostPath:
+    path: {{ .Values.global.persistence.backup.mountPath | default .Values.persistence.backup.mountPath }}/{{ include "common.namespace" $ }}/{{ include "common.fullname" $ }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+{{ end }}
+{{- end -}}
+
diff --git a/kubernetes/common/cassandra/templates/backup/pvc.yaml b/kubernetes/common/cassandra/templates/backup/pvc.yaml
new file mode 100644 (file)
index 0000000..1f848c3
--- /dev/null
@@ -0,0 +1,80 @@
+{{/*
+# Copyright Â© 2019 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+{{- if .Values.backup.enabled }}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}-db-data
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}-backup
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+  annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+  selector:
+    matchLabels:
+      name: {{ include "common.fullname" . }}-db-data
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+---
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}-backup-data
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}-backup
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+  annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+  selector:
+    matchLabels:
+      name: {{ include "common.fullname" . }}-backup-data
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
+{{- end -}}
index f5fe589..f078bd1 100644 (file)
 # Declare variables to be passed into your templates.
 global: # global defaults
   nodePortPrefix: 302
-
+  persistence:
+    mountPath: /dockerdata-nfs
+    backup:
+      mountPath: /dockerdata-nfs/backup
+  repository: nexus3.onap.org:10001
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.2
 
 # application image
 repository: nexus3.onap.org:10001
@@ -115,6 +121,8 @@ persistence:
   mountSubPath: cassandra
   storageType: local
   storageClass: ""
+  backup:
+      mountPath: /dockerdata-nfs/backup
 
 configOverrides: {}
 
@@ -136,3 +144,12 @@ resources: {}
 #  requests:
 #    cpu: 2
 #    memory: 4Gi
+backup:
+  enabled: false
+  cron: "00 00 * * *"
+  retentionPeriod: 3
+  dbSize: 1
+  keyspacesToSkip:
+  - name: system_traces
+  - name: system_auth
+  - name: system_distributed
index 9b274ad..49d7eeb 100644 (file)
@@ -6,12 +6,12 @@
           backend:
             serviceName: {{ .name }}
             servicePort: {{ .port }}
-{{- end }}
+{{- end -}}
 {{- else -}}
-         - path: {{ printf "/%s" .Chart.Name }}
-           backend:
-             serviceName: {{ .Chart.Name }}
-             servicePort: {{ .Values.service.externalPort }}
+        - path: {{ printf "/%s" .Chart.Name }}
+          backend:
+            serviceName: {{ .Chart.Name }}
+            servicePort: {{ .Values.service.externalPort }}
 {{- end -}}
 {{- end -}}
 {{- end -}}
@@ -44,7 +44,7 @@ spec:
   rules:
   - http:
       paths:
-         {{- include "ingress.config.port" . }}
+        {{- include "ingress.config.port" . }}
 {{- if .Values.ingress.tls }}
   tls:
 {{ toYaml .Values.ingress.tls | indent 4 }}
index 8cf95d6..df52fbc 100644 (file)
@@ -47,7 +47,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-dgbuilder-image:0.5.1
+image: onap/ccsdk-dgbuilder-image:0.6.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
diff --git a/kubernetes/common/mariadb-galera/templates/backup/cronjob.yaml b/kubernetes/common/mariadb-galera/templates/backup/cronjob.yaml
new file mode 100644 (file)
index 0000000..7d3ec75
--- /dev/null
@@ -0,0 +1,178 @@
+{{/*
+# Copyright Â© 2019 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+{{- if .Values.backup.enabled }}
+apiVersion: batch/v1beta1
+kind: CronJob
+metadata:
+  name: {{ include "common.fullname" . }}-backup
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.fullname" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+spec:
+  schedule: {{ .Values.backup.cron | quote }}
+  concurrencyPolicy: Forbid
+  startingDeadlineSeconds: 120
+  jobTemplate:
+    spec:
+      template:
+        spec:
+          restartPolicy: Never
+          initContainers:
+          - command:
+            - /root/ready.py
+            args:
+            - --container-name
+            - {{ include "common.name" . }}
+            env:
+            - name: NAMESPACE
+              valueFrom:
+                fieldRef:
+                  apiVersion: v1
+                  fieldPath: metadata.namespace
+            image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+            imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+            name: {{ include "common.name" . }}-readiness
+          - name: mariadb-galera-backup-init
+            image: "{{ include "common.repository" . }}/{{ .Values.backupImage }}"
+            imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+            command:
+            - /bin/bash
+            - -c
+            - |
+              remove_dir(){
+                dirToRemove=$1
+                rm -rf $dirToRemove
+                echo "Failed" > /backup/backup.log
+                echo "Backup failed!!!"
+              }
+
+              target_dir=/backup/backup-`date +%s`
+              mkdir -p $target_dir
+
+              mysqlhost={{ include "common.fullname" . }}-{{ sub .Values.replicaCount 1 }}.{{ .Values.service.name }}
+
+              mariabackup --backup --target-dir=$target_dir --user=root --password=$DB_PASS --host=$mysqlhost
+
+              ret_code=$?
+              if [ $ret_code -ne 0 ]; then
+                remove_dir $target_dir
+                exit 0
+              fi
+
+              echo "Starting Backup Preparation!!!"
+              mariabackup --prepare --target-dir=$target_dir
+              ret_code=$?
+              if [ $ret_code -ne 0 ]; then
+                remove_dir $target_dir
+                exit 0
+              fi
+              echo "Success" > /backup/backup.log
+              echo "Backup Successful!!!"
+            env:
+            - name: DB_PASS
+              valueFrom:
+                secretKeyRef:
+                  name: {{ include "common.fullname" . }}
+                  key: db-root-password
+            volumeMounts:
+            - name: backup-data
+              mountPath: /backup
+            - name: db-data
+              mountPath: /var/lib/mysql
+          containers:
+          - name: mariadb-backup-validate
+            image: "{{ include "common.repository" . }}/{{ .Values.backupImage }}"
+            imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+            env:
+            - name: MYSQL_ROOT_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: {{ include "common.fullname" . }}
+                  key: db-root-password
+            command:
+            - /bin/bash
+            - -c
+            - |
+              remove_dir(){
+                dirToRemove=$1
+                rm -rf $dirToRemove
+                echo "Validation Failed!!!";
+              }
+
+              backup_result=`cat /backup/backup.log`
+              rm -rf /backup/backup.log
+
+              if [ "$backup_result" == "Failed" ]; then
+                echo "Backup Failed!!! So Validation Failed!!!";
+                exit 0
+              fi
+
+              target_dir=$(ls -td -- /backup/backup-* | head -n 1)
+              cp -Ra $target_dir/* /var/lib/mysql/
+
+              if [ ! "$(ls -A /var/lib/mysql)" ]; then
+                remove_dir $target_dir
+                exit 0
+              fi
+              
+              /docker-entrypoint.sh mysqld &
+
+              count=0
+              until mysql --user=root --password=$MYSQL_ROOT_PASSWORD  -e "SELECT 1";
+                do sleep 3;
+                count=`expr $count + 1`;
+                if [ $count -ge 30 ]; then
+                  remove_dir $target_dir
+                  exit 0;
+                fi;
+              done
+
+              mysqlcheck -A  --user=root --password=$MYSQL_ROOT_PASSWORD > /tmp/output.log
+              error_lines=`cat /tmp/output.log| grep -v "OK" | wc -l`
+
+              cat /tmp/output.log
+
+              if [ $error_lines -gt 1 ];then
+                remove_dir $target_dir
+              else
+                echo "Validation successful!!!"
+                cd /backup
+                totalFiles=`ls -t | grep "backup-" | wc -l`
+                if [ $totalFiles -gt {{ .Values.backup.retentionPeriod }} ]; then
+                  filestoDelete=`expr $totalFiles - {{ .Values.backup.retentionPeriod }}`
+                  ls -tr | grep backup | head -$filestoDelete | xargs rm -rf
+                fi
+              fi
+            volumeMounts:
+            - mountPath: /etc/localtime
+              name: localtime
+              readOnly: true
+            - name: backup-data
+              mountPath: /backup
+          volumes:
+          - name: localtime
+            hostPath:
+              path: /etc/localtime
+          - name: db-data
+            persistentVolumeClaim:
+              claimName: {{ include "common.fullname" . }}-db-data
+          - name: backup-data
+            persistentVolumeClaim:
+              claimName: {{ include "common.fullname" . }}-backup 
+{{- end }}
diff --git a/kubernetes/common/mariadb-galera/templates/backup/pv.yaml b/kubernetes/common/mariadb-galera/templates/backup/pv.yaml
new file mode 100644 (file)
index 0000000..2972191
--- /dev/null
@@ -0,0 +1,59 @@
+{{/*
+# Copyright Â© 2019 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+{{- if .Values.backup.enabled }}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}-backup
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+    name: {{ include "common.fullname" . }}-backup
+spec:
+  capacity:
+    storage: {{ .Values.persistence.size}}
+  accessModes:
+  - {{ .Values.persistence.accessMode }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+  hostPath:
+    path: {{ .Values.global.persistence.backup.mountPath | default .Values.persistence.backup.mountPath }}/{{ include "common.namespace" . }}/{{include "common.name" . }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}-db-data
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+    name: {{ include "common.fullname" . }}-db-data
+spec:
+  capacity:
+    storage: {{ .Values.persistence.size}}
+  accessModes:
+  - {{ .Values.persistence.accessMode }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+  hostPath:
+    path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}{{ sub .Values.replicaCount 1 }}
+{{- end -}}
+{{- end -}}
+
diff --git a/kubernetes/common/mariadb-galera/templates/backup/pvc.yaml b/kubernetes/common/mariadb-galera/templates/backup/pvc.yaml
new file mode 100644 (file)
index 0000000..a983c8a
--- /dev/null
@@ -0,0 +1,81 @@
+{{/*
+# Copyright Â© 2019 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+{{- if .Values.backup.enabled }}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}-backup
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}-backup
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+  annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+  selector:
+    matchLabels:
+      name: {{ include "common.fullname" . }}-backup
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+---
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}-db-data
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}-db-data
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+  annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+  selector:
+    matchLabels:
+      name: {{ include "common.fullname" . }}-db-data
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+  storageClassName: ""
+{{- else }}
+  storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
+{{- end -}}
+
index d91f4fd..a662b1e 100644 (file)
 #################################################################
 global:
   nodePortPrefix: 302
-  persistence: {}
+  persistence:
+    mountPath: /dockerdata-nfs
+    backup:
+      mountPath: /dockerdata-nfs/backup
+
   repository: nexus3.onap.org:10001
 
+  readinessRepository: oomk8s
+  readinessImage: readiness-check:2.0.2
+
 
 #################################################################
 # Application configuration defaults.
@@ -28,6 +35,7 @@ global:
 #repository: mysql
 repository: nexus3.onap.org:10001
 image: adfinissygroup/k8s-mariadb-galera-centos:v002
+backupImage: library/mariadb:10.1.38 
 imageInit: busybox
 pullPolicy: IfNotPresent
 
@@ -77,11 +85,13 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: "mariadb-galera/data"
   mysqlPath: /var/lib/mysql
+  backup:
+    mountPath: /dockerdata-nfs/backup
 
 service:
   internalPort: 3306
@@ -139,3 +149,8 @@ nameOverride: mariadb-galera
 
 # DNS name for mariadb-galera cluster - should be unique accross all projects other clusters
 #dnsnameOverride: mariadb-galera
+
+backup:
+  enabled: false
+  cron: "00 00 * * *"
+  retentionPeriod: 3
index d6938c1..8a68129 100644 (file)
@@ -71,7 +71,7 @@ persistence:
   ## If undefined (the default) or set to null, no storageClassName spec is
   ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
   ##   GKE, AWS & OpenStack)
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 1Gi
   mountPath: /dockerdata-nfs
   mountSubPath: "mongo/data"
index 02c69ad..f49288a 100644 (file)
@@ -54,7 +54,7 @@ mariadb-galera:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/ccsdk-apps-ms-neng:0.4.4
+image: onap/ccsdk-apps-ms-neng:0.6.2
 pullPolicy: IfNotPresent
 
 # application configuration
index 7bc9ff0..f6e48fa 100644 (file)
         "interval": "15s",
         "timeout": "1s"
       },
-      {
-        "id": "multicloud-ocata",
-        "name": "Multicloud Ocata Health Check",
-        "http": "http://multicloud-ocata:9006/api/multicloud-ocata/v0/swagger.json",
-        "method": "HEAD",
-        "header": {
-          "Cache-Control": ["no-cache"],
-          "Content-Type": ["application/json"],
-          "Accept": ["application/json"]
-        },
-        "tls_skip_verify": true,
-        "interval": "15s",
-        "timeout": "1s"
-      },
       {
         "id": "multicloud-pike",
         "name": "Multicloud Pike Health Check",
index 7e93715..d1b9170 100644 (file)
@@ -95,20 +95,19 @@ postgres:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.6.2
+image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.6.4
 default_k8s_location: central
 
 # DCAE component images to be deployed via Cloudify Manager
 # Use to override default setting in blueprints
 componentImages:
-  dashboard: onap/org.onap.ccsdk.dashboard.ccsdk-app-os:1.1.0
   holmes_rules: onap/holmes/rule-management:1.2.6
   holmes_engine: onap/holmes/engine-management:1.2.5
   tca: onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.2
   ves: onap/org.onap.dcaegen2.collectors.ves.vescollector:1.4.5
   snmptrap: onap/org.onap.dcaegen2.collectors.snmptrap:1.4.0
-  prh: onap/org.onap.dcaegen2.services.prh.prh-app-server:1.2.4
-  hv_ves: onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-main:1.1.0
+  prh: onap/org.onap.dcaegen2.services.prh.prh-app-server:1.3.1
+  hv_ves: onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-main:1.3.0
 
 # Resource Limit flavor -By Default using small
 flavor: small
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/job.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/job.yaml
new file mode 100644 (file)
index 0000000..bd0ea51
--- /dev/null
@@ -0,0 +1,42 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2019 AT&T Intellectual Property. 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.
+# ============LICENSE_END=========================================================
+apiVersion: batch/v1
+kind: Job
+metadata:
+  name: {{ include "common.fullname" . }}-cleanup
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+    release: {{ .Release.Name }}
+    heritage: {{ .Release.Service }}
+  annotations:
+    "helm.sh/hook": pre-delete
+    "helm.sh/hook-delete-policy": hook-succeeded,hook-failed
+spec:
+  template:
+    metadata:
+      name: {{ include "common.fullname" . }}-cleanup
+      labels:
+        app: {{ include "common.name" . }}
+        release: {{ .Release.Name }}
+    spec:
+      restartPolicy: Never
+      containers:
+      - name: dcae-cleanup
+        image: {{ include "common.repository" . }}/{{ .Values.cleanupImage }}
+        imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
\ No newline at end of file
index 70504ef..d8db056 100644 (file)
@@ -53,6 +53,9 @@ multisiteConfigMapName: multisite-kubeconfig-configmap
 # image for init container to initialize shared ConfigMap
 multisiteInitImage: onap/org.onap.dcaegen2.deployments.multisite-init-container:1.0.0
 
+# image for cleanup job container
+cleanupImage: onap/org.onap.dcaegen2.deployments.dcae-k8s-cleanup-container:1.0.0
+
 # probe configuration parameters
 liveness:
   initialDelaySeconds: 10
index 19fe038..c3e63fb 100644 (file)
@@ -104,17 +104,17 @@ spec:
               value: "/opt/tls/cert.pem"
             - name: HTTPS_KEY_PATH
               value: "/opt/tls/key.pem"
-        - name: {{ include "common.name" . }}-filebeat-onap
+        - name: {{ include "common.name" . }}-fb-onap
           image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           volumeMounts:
-          - name: {{ include "common.fullname" . }}-filebeat-conf
+          - name: {{ include "common.fullname" . }}-fb-conf
             mountPath: /usr/share/filebeat/filebeat.yml
             subPath: filebeat.yml
-          - name: {{ include "common.fullname" . }}-data-filebeat
+          - name: {{ include "common.fullname" . }}-data-fb
             mountPath: /usr/share/filebeat/data
           - name: {{ include "common.fullname" . }}-logs
-            mountPath: /var/log/onap
+            mountPath: /var/log/onap/config-binding-service
         {{ end }}
         {{- if .Values.service.insecure.enabled }}
         - name: {{ include "common.name" . }}-insecure
@@ -141,29 +141,29 @@ spec:
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           volumeMounts:
-          - name: {{ include "common.fullname" . }}-logs-insecure
+          - name: {{ include "common.fullname" . }}-logs-i
             mountPath: /opt/logs
           env:
             - name: CONSUL_HOST
               value: consul.{{ include "common.namespace" . }}
-        - name: {{ include "common.name" . }}-filebeat-onap-insecure
+        - name: {{ include "common.name" . }}-fb-onap-i
           image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           volumeMounts:
-          - name: {{ include "common.fullname" . }}-filebeat-conf
+          - name: {{ include "common.fullname" . }}-fb-conf
             mountPath: /usr/share/filebeat/filebeat.yml
             subPath: filebeat.yml
-          - name: {{ include "common.fullname" . }}-data-filebeat-insecure
+          - name: {{ include "common.fullname" . }}-data-fb-i
             mountPath: /usr/share/filebeat/data
-          - name: {{ include "common.fullname" . }}-logs-insecure
-            mountPath: /var/log/onap
+          - name: {{ include "common.fullname" . }}-logs-i
+            mountPath: /var/log/onap/config-binding-service
         {{ end }}
       volumes:
-        - name: {{ include "common.fullname" . }}-filebeat-conf
+        - name: {{ include "common.fullname" . }}-fb-conf
           configMap:
             name: {{ .Release.Name }}-cbs-filebeat-configmap
         {{- if .Values.service.secure.enabled }}
-        - name: {{ include "common.fullname" . }}-data-filebeat
+        - name: {{ include "common.fullname" . }}-data-fb
           emptyDir: {}
         - name:  {{ include "common.fullname" . }}-logs
           emptyDir: {}
@@ -171,9 +171,9 @@ spec:
           emptyDir: {}
         {{ end }}
         {{- if .Values.service.insecure.enabled }}
-        - name: {{ include "common.fullname" . }}-data-filebeat-insecure
+        - name: {{ include "common.fullname" . }}-data-fb-i
           emptyDir: {}
-        - name:  {{ include "common.fullname" . }}-logs-insecure
+        - name:  {{ include "common.fullname" . }}-logs-i
           emptyDir: {}
         {{ end }}
 
index c7db0d5..8cff544 100644 (file)
@@ -45,7 +45,7 @@ config:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.configbinding:2.5.1
+image: onap/org.onap.dcaegen2.platform.configbinding:2.5.2
 pullPolicy: Always
 
 # probe configuration parameters
index a6b87bf..8c1c874 100644 (file)
@@ -131,7 +131,7 @@ spec:
           imagePullPolicy: IfNotPresent
           resources: {}
           volumeMounts:
-          - mountPath: /var/log/onap/deployment-handler
+          - mountPath: /var/log/onap/policy-handler
             name: component-log
           - mountPath: /usr/share/filebeat/data
             name: filebeat-data
index d019874..52c5566 100644 (file)
@@ -6,6 +6,7 @@ metadata:
     app.kubernetes.io/managed-by: {{.Release.Service | quote }}
     app.kubernetes.io/instance: {{.Release.Name | quote }}
     helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+    release: {{ .Release.Name }}
   annotations:
     # This is what defines this resource as a hook. Without this line, the
     # job is considered part of the release.
@@ -20,6 +21,7 @@ spec:
         app.kubernetes.io/managed-by: {{.Release.Service | quote }}
         app.kubernetes.io/instance: {{.Release.Name | quote }}
         helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+        release: {{ .Release.Name }}
     spec:
       restartPolicy: Never
 
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh
deleted file mode 100644 (file)
index 1289eca..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-
-dr_prov_url="{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.internalPort2}}"
-ct_header="Content-Type:application/vnd.dmaap-dr.feed"
-obo_header="X-DMAAP-DR-ON-BEHALF-OF:dradmin"
-feed_payload=/opt/app/datartr/etc/dedicatedFeed.json
-
-sleep 20
-
-if curl -k https://${dr_prov_url}/internal/prov | awk 'BEGIN{ORS=""} {print}' | egrep "\"feeds\":\s+\[\]"; then
-   curl -X POST -H ${ct_header} -H ${obo_header} --data-ascii @${feed_payload} --post301 --location-trusted -k https://${dr_prov_url};
-else
-   echo "NO feed creation required";
-fi
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json
deleted file mode 100644 (file)
index a96f46d..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-{
-  "name": "Default PM Feed",
-  "version": "m1.0",
-  "description": "Default feed provisioned for PM File collector",
-  "business_description": "Default Feed",
-  "suspend": false,
-  "deleted": false,
-  "changeowner": true,
-  "authorization": {
-    "classification": "unclassified",
-    "endpoint_addrs": [],
-    "endpoint_ids": [
-      {
-        "password": "dradmin",
-        "id": "dradmin"
-      }]
-  }
-}
\ No newline at end of file
index f1cf739..e0cb1dd 100644 (file)
@@ -16,6 +16,7 @@
 # SPDX-License-Identifier: Apache-2.0
 # ============LICENSE_END=========================================================
 
+# dmaap-dr-node filebeat.yml
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
@@ -24,7 +25,6 @@ filebeat.prospectors:
     - /var/log/onap/*/*/*/*.log
     - /var/log/onap/*/*/*.log
     - /var/log/onap/*/*.log
-    - /opt/app/datartr/logs/*.log
   #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
   ignore_older: 48h
   # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
@@ -40,7 +40,7 @@ output.logstash:
   #List of logstash server ip addresses with port number.
   #But, in our case, this will be the loadbalancer IP address.
   #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
-  hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+  hosts: ["{{.Values.global.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.global.logstashPort}}"]
   #If enable will do load balancing among available Logstash, automatically.
   loadbalance: true
 
index 25a2c6e..ba247e1 100644 (file)
   SPDX-License-Identifier: Apache-2.0
   ============LICENSE_END=========================================================
 -->
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
+<configuration scan="true" scanPeriod="3 seconds" debug="false">
 
-  <property name="generalLogName" value="apicalls" />
-  <property name="errorLogName" value="errors" />
-  <property name="jettyAndNodeLogName" value="node"/>
+  <property name="logDir" value="/var/log/onap/datarouter" />
+  <!--  log file names -->
+  <property name="auditLog" value="audit" />
+  <property name="errorLog" value="error" />
+  <property name="debugLog" value="debug" />
+  <property name="metricsLog" value="metrics" />
+  <property name="jettyLog" value="jetty" />
 
-  <property name="defaultPattern"    value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
-  <property name="jettyAndNodeLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
-  <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
-
-  <property name="logDirectory" value="/opt/app/datartr/logs" />
+  <!--  log file names -->
+  <property name="defaultPattern"    value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}%n|%msg%n" />
+  <property name="logDirectory" value="${logDir}" />
 
+  <!-- Example evaluator filter applied against console appender -->
   <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
     <encoder>
       <pattern>${defaultPattern}</pattern>
   <!-- EELF Appenders -->
   <!-- ============================================================================ -->
 
-  <appender name="EELF"
+  <!-- The EELFAppender is used to record events to the general application
+    log -->
+
+
+  <appender name="Audit"
     class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${generalLogName}.log</file>
-     <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>INFO</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
+    <file>${logDirectory}/${auditLog}.log</file>
+     <filter class="org.onap.dmaap.datarouter.node.eelf.AuditFilter">
     </filter>
     <rollingPolicy
       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
+      <fileNamePattern>${logDirectory}/${auditLog}.%i.log.zip
       </fileNamePattern>
       <minIndex>1</minIndex>
       <maxIndex>9</maxIndex>
     </rollingPolicy>
     <triggeringPolicy
       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
+      <maxFileSize>50MB</maxFileSize>
+    </triggeringPolicy>
+    <encoder>
+      <pattern>${defaultPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncAudit" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="Audit" />
+  </appender>
+
+    <!-- ============================================================================ -->
+
+  <appender name="Metrics"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${metricsLog}.log</file>
+    <filter class="org.onap.dmaap.datarouter.node.eelf.MetricsFilter">
+    </filter>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+      <fileNamePattern>${logDirectory}/${metricsLog}.%i.log.zip
+      </fileNamePattern>
+      <minIndex>1</minIndex>
+      <maxIndex>9</maxIndex>
+    </rollingPolicy>
+    <triggeringPolicy
+            class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+      <maxFileSize>50MB</maxFileSize>
     </triggeringPolicy>
     <encoder>
       <pattern>${defaultPattern}</pattern>
     </encoder>
   </appender>
 
-  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+  <appender name="asyncMetrics" class="ch.qos.logback.classic.AsyncAppender">
     <queueSize>256</queueSize>
-    <appender-ref ref="EELF" />
+    <appender-ref ref="Metrics" />
   </appender>
 
-  <appender name="EELFError"
+  <!-- ============================================================================ -->
+
+
+  <appender name="Debug"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${debugLog}.log</file>
+    <filter class="org.onap.dmaap.datarouter.node.eelf.DebugFilter">
+    </filter>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+      <fileNamePattern>${logDirectory}/${debugLog}.%i.log.zip
+      </fileNamePattern>
+      <minIndex>1</minIndex>
+      <maxIndex>9</maxIndex>
+    </rollingPolicy>
+    <triggeringPolicy
+            class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+      <maxFileSize>50MB</maxFileSize>
+    </triggeringPolicy>
+    <encoder>
+      <pattern>${defaultPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncDebug" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="Debug" />
+  </appender>
+
+  <!-- ============================================================================ -->
+
+  <appender name="Error"
     class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${errorLogName}.log</file>
-    <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>ERROR</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
+    <file>${logDirectory}/${errorLog}.log</file>
+    <filter class="org.onap.dmaap.datarouter.node.eelf.ErrorFilter">
     </filter>
     <rollingPolicy
       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
+      <fileNamePattern>${logDirectory}/${errorLog}.%i.log.zip
       </fileNamePattern>
       <minIndex>1</minIndex>
       <maxIndex>9</maxIndex>
     </rollingPolicy>
     <triggeringPolicy
       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
+      <maxFileSize>50MB</maxFileSize>
     </triggeringPolicy>
     <encoder>
       <pattern>${defaultPattern}</pattern>
     </encoder>
   </appender>
 
-  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+  <appender name="asyncError" class="ch.qos.logback.classic.AsyncAppender">
     <queueSize>256</queueSize>
-    <appender-ref ref="EELFError"/>
+    <appender-ref ref="Error"/>
   </appender>
 
   <!-- ============================================================================ -->
-   <appender name="jettyAndNodelog"
+   <appender name="Jetty"
     class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${jettyAndNodeLogName}.log</file>
-     <filter class="org.onap.dmaap.datarouter.node.eelf.EELFFilter" />
+    <file>${logDirectory}/${jettyLog}.log</file>
+     <filter class="org.onap.dmaap.datarouter.node.eelf.JettyFilter" />
     <rollingPolicy
       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${jettyAndNodeLogName}.%i.log.zip
+      <fileNamePattern>${logDirectory}/${jettyLog}.%i.log.zip
       </fileNamePattern>
       <minIndex>1</minIndex>
       <maxIndex>9</maxIndex>
     </rollingPolicy>
     <triggeringPolicy
       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
+      <maxFileSize>50MB</maxFileSize>
     </triggeringPolicy>
     <encoder>
-      <pattern>${jettyAndNodeLoggerPattern}</pattern>
+      <pattern>${defaultPattern}</pattern>
     </encoder>
   </appender>
 
-  <appender name="asyncEELFjettyAndNodelog" class="ch.qos.logback.classic.AsyncAppender">
+  <appender name="asyncJettyLog" class="ch.qos.logback.classic.AsyncAppender">
     <queueSize>256</queueSize>
-    <appender-ref ref="jettyAndNodelog" />
+    <appender-ref ref="Jetty" />
     <includeCallerData>true</includeCallerData>
   </appender>
 
+   <!-- ============================================================================ -->
+
+
   <!-- ============================================================================ -->
   <!--  EELF loggers -->
   <!-- ============================================================================ -->
   <logger name="com.att.eelf" level="info" additivity="false">
-    <appender-ref ref="asyncEELF" />
+    <appender-ref ref="asyncAudit" />
+  </logger>
+
+  <logger name="com.att.eelf" additivity="false">
+    <appender-ref ref="asyncMetrics" />
+  </logger>
+
+  <logger name="com.att.eelf" additivity="false">
+    <appender-ref ref="asyncDebug" />
   </logger>
 
-     <logger name="com.att.eelf.error" level="error" additivity="false">
-          <appender-ref ref="asyncEELFError" />
-      </logger>
+  <logger name="com.att.eelf.error" additivity="false">
+    <appender-ref ref="asyncError" />
+  </logger>
+
+  <logger name="log4j.logger.org.eclipse.jetty" additivity="false">
+    <appender-ref ref="asyncJettyLog"/>
+  </logger>
 
-     <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
-        <appender-ref ref="asyncEELFjettyAndNodelog"/>
-    </logger>
 
   <root level="INFO">
-    <appender-ref ref="asyncEELF" />
-    <appender-ref ref="asyncEELFError" />
-     <appender-ref ref="asyncEELFjettyAndNodelog" />
+    <appender-ref ref="asyncAudit" />
+    <appender-ref ref="asyncMetrics" />
+    <appender-ref ref="asyncDebug" />
+    <appender-ref ref="asyncError" />
+    <appender-ref ref="asyncJettyLog" />
   </root>
 
-</configuration>
+</configuration>
\ No newline at end of file
index 5de5fc1..4379dfb 100644 (file)
 #    URL to retrieve dynamic configuration
 #
 #ProvisioningURL:    ${DRTR_PROV_INTURL}
-ProvisioningURL=https://{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.externalPort2}}/internal/prov
+ProvisioningURL=https://{{ .Values.global.dmaapDrProvName }}:{{ .Values.global.dmaapDrProvExtPort2 }}/internal/prov
 
 #
 #    URL to upload PUB/DEL/EXP logs
 #
 #LogUploadURL:    ${DRTR_LOG_URL}
-LogUploadURL=https://{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.externalPort2}}/internal/logs
+LogUploadURL=https://{{ .Values.global.dmaapDrProvName }}:{{ .Values.global.dmaapDrProvExtPort2 }}/internal/logs
 
 #
 #    The port number for http as seen within the server
index a3882bc..5c581be 100644 (file)
@@ -27,19 +27,6 @@ data:
 ---
 apiVersion: v1
 kind: ConfigMap
-metadata:
-  name: {{ include "common.fullname" . }}-create-feed-configmap
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/feeds/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
 metadata:
   name: {{ include "common.fullname" . }}-log
   namespace: {{ include "common.namespace" . }}
@@ -62,7 +49,7 @@ data:
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+  name: {{ include "common.fullname" . }}-dmaap-dr-node-filebeat-configmap
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
index 92349b8..ede3f49 100644 (file)
@@ -6,6 +6,7 @@ metadata:
     app.kubernetes.io/managed-by: {{.Release.Service | quote }}
     app.kubernetes.io/instance: {{.Release.Name | quote }}
     helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+    release: {{ .Release.Name }}
   annotations:
     # This is what defines this resource as a hook. Without this line, the
     # job is considered part of the release.
@@ -20,6 +21,7 @@ spec:
         app.kubernetes.io/managed-by: {{.Release.Service | quote }}
         app.kubernetes.io/instance: {{.Release.Name | quote }}
         helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+        release: {{ .Release.Name }}
     spec:
       restartPolicy: Never
       containers:
index a508886..a190d0d 100644 (file)
@@ -81,23 +81,17 @@ spec:
           - mountPath: /etc/localtime
             name: localtime
             readOnly: false
-          - mountPath: /opt/app/datartr/etc/dedicatedFeed.json
-            name: {{ include "common.fullname" . }}-create-feed-config
-            subPath: dedicatedFeed.json
-          - mountPath: /opt/app/datartr/etc/createFeed.sh
-            name: {{ include "common.fullname" . }}-create-feed-config
-            subPath: createFeed.sh
           - mountPath: /opt/app/datartr/etc/node.properties
             name: {{ include "common.fullname" . }}-config
             subPath: node.properties
           - mountPath: /opt/app/datartr/etc/drNodeCadi.properties
             name: {{ include "common.fullname" . }}-config
             subPath: drNodeCadi.properties
-          lifecycle:
-            postStart:
-              exec:
-                command:
-                  - /opt/app/datartr/etc/createFeed.sh
+          - mountPath: /opt/app/datartr/etc/logback.xml
+            name: {{ include "common.fullname" . }}-log-conf
+            subPath: logback.xml
+          - mountPath: {{ .Values.global.loggingDirectory }}
+            name: {{ include "common.fullname" . }}-logs
           resources:
 {{ include "common.resources" . | indent 12 }}
         {{- if .Values.nodeSelector }}
@@ -118,7 +112,7 @@ spec:
             subPath: filebeat.yml
           - name: {{ include "common.fullname" . }}-data-filebeat
             mountPath: /usr/share/filebeat/data
-          - name: {{ include "common.fullname" . }}-event-logs-pvc
+          - name: {{ include "common.fullname" . }}-logs
             mountPath: /var/log/onap/datarouter-node
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
@@ -126,15 +120,6 @@ spec:
         - name: localtime
           hostPath:
             path: /etc/localtime
-        - name: {{ include "common.fullname" . }}-create-feed-config
-          configMap:
-            name: {{ include "common.fullname" . }}-create-feed-configmap
-            defaultMode: 0755
-            items:
-            - key: createFeed.sh
-              path: createFeed.sh
-            - key: dedicatedFeed.json
-              path: dedicatedFeed.json
         - name: {{ include "common.fullname" . }}-config
           configMap:
             name: {{ include "common.fullname" . }}-configmap
@@ -148,11 +133,13 @@ spec:
             name: {{ include "common.fullname" . }}-log
         - name: {{ include "common.fullname" . }}-filebeat-conf
           configMap:
-            name: {{ .Release.Name }}-dmaap-filebeat-configmap
+            name: {{ include "common.fullname" . }}-dmaap-dr-node-filebeat-configmap
         - name: {{ include "common.fullname" . }}-data-filebeat
           emptyDir: {}
         - name:  {{ include "common.fullname" . }}-event-logs-pvc
           emptyDir: {}
+        - name:  {{ include "common.fullname" . }}-logs
+          emptyDir: {}
   volumeClaimTemplates:
   - metadata:
       name: {{ include "common.fullname" . }}-spool-data-pvc
index 154018a..b5e459b 100644 (file)
 # Global configuration defaults.
 #################################################################
 global:
-  nodePortPrefixExt: 304
-  readinessRepository: oomk8s
-  readinessImage: readiness-check:2.0.0
-  loggingRepository: docker.elastic.co
-  loggingImage: beats/filebeat:5.5.0
-  loggingDirectory: /opt/app/datartr/logs
+  loggingDirectory: /var/log/onap/datarouter
   busyBoxImage: busybox:1.30
   busyBoxRepository: docker.io
 
@@ -29,8 +24,7 @@ global:
 # Application configuration defaults.
 #################################################################
 # application image
-repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-node:2.1.0
+image: onap/dmaap/datarouter-node:2.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -60,7 +54,7 @@ readiness:
 ## Persist data to a persitent volume
 persistence:
   volumeReclaimPolicy: Retain
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   mountPath: /dockerdata-nfs
 
   spoolMountSubPath: data-router/dr-node/spool-data
@@ -107,9 +101,3 @@ config:
     portName2: dr-node-port2
     nodePort: 93
     nodePort2: 94
-
-# dr provisioning server configuration
-  dmaapDrProv:
-    name: dmaap-dr-prov
-    externalPort2: 8443
-    internalPort2: 8443
index f1cf739..db02b21 100644 (file)
@@ -16,6 +16,7 @@
 # SPDX-License-Identifier: Apache-2.0
 # ============LICENSE_END=========================================================
 
+# dmaap-dr-prov filebeat.yml
 filebeat.prospectors:
 #it is mandatory, in our case it's log
 - input_type: log
@@ -40,7 +41,7 @@ output.logstash:
   #List of logstash server ip addresses with port number.
   #But, in our case, this will be the loadbalancer IP address.
   #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
-  hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+  hosts: ["{{.Values.global.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.global.logstashPort}}"]
   #If enable will do load balancing among available Logstash, automatically.
   loadbalance: true
 
index 942d898..f67b1cf 100644 (file)
   ============LICENSE_END=========================================================
 -->
 <configuration scan="true" scanPeriod="3 seconds" debug="true">
+    <!--<jmxConfigurator /> -->
+    <!-- directory path for all other type logs -->
+    <!-- property name="logDir" value="/home/eby/dr2/logs" / -->
+    <property name="logDir" value="/opt/app/datartr/logs" />
 
-  <property name="generalLogName" value="apicalls" />
-  <property name="errorLogName" value="errors" />
-  <property name="jettyLogName" value="jetty"/>
-
-  <property name="defaultPattern"    value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
-  <property name="jettyLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
-  <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
-
-  <property name="logDirectory" value="/opt/app/datartr/logs" />
-
-  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-    <encoder>
-      <pattern>${defaultPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <!-- ============================================================================ -->
-  <!-- EELF Appenders -->
-  <!-- ============================================================================ -->
-
-  <appender name="EELF"
-    class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${generalLogName}.log</file>
-     <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>INFO</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
-    </filter>
-    <rollingPolicy
-      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
-      </fileNamePattern>
-      <minIndex>1</minIndex>
-      <maxIndex>9</maxIndex>
-    </rollingPolicy>
-    <triggeringPolicy
-      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
-    </triggeringPolicy>
-    <encoder>
-      <pattern>${defaultPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="EELF" />
-  </appender>
-
-  <appender name="EELFError"
-    class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${errorLogName}.log</file>
-    <filter class="ch.qos.logback.classic.filter.LevelFilter">
-        <level>ERROR</level>
-        <onMatch>ACCEPT</onMatch>
-        <onMismatch>DENY</onMismatch>
-    </filter>
-    <rollingPolicy
-      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
-      </fileNamePattern>
-      <minIndex>1</minIndex>
-      <maxIndex>9</maxIndex>
-    </rollingPolicy>
-    <triggeringPolicy
-      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
-    </triggeringPolicy>
-    <encoder>
-      <pattern>${defaultPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="EELFError"/>
-  </appender>
-
-  <!-- ============================================================================ -->
-   <appender name="jettylog"
-    class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>${logDirectory}/${jettyLogName}.log</file>
-     <filter class="org.onap.dmaap.datarouter.provisioning.eelf.JettyFilter" />
-    <rollingPolicy
-      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
-      <fileNamePattern>${logDirectory}/${jettyLogName}.%i.log.zip
-      </fileNamePattern>
-      <minIndex>1</minIndex>
-      <maxIndex>9</maxIndex>
-    </rollingPolicy>
-    <triggeringPolicy
-      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>5MB</maxFileSize>
-    </triggeringPolicy>
-    <encoder>
-      <pattern>${jettyLoggerPattern}</pattern>
-    </encoder>
-  </appender>
-
-  <appender name="asyncEELFjettylog" class="ch.qos.logback.classic.AsyncAppender">
-    <queueSize>256</queueSize>
-    <appender-ref ref="jettylog" />
-    <includeCallerData>true</includeCallerData>
-  </appender>
-
-  <!-- ============================================================================ -->
-  <!--  EELF loggers -->
-  <!-- ============================================================================ -->
-  <logger name="com.att.eelf" level="info" additivity="false">
-    <appender-ref ref="asyncEELF" />
-  </logger>
-
-     <logger name="com.att.eelf.error" level="error" additivity="false">
-          <appender-ref ref="asyncEELFError" />
-      </logger>
-
-     <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
+    <!-- directory path for debugging type logs -->
+    <!-- property name="debugDir" value="/home/eby/dr2/debug-logs" /-->
+
+    <!--  specify the component name
+      <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC"  -->
+    <!-- This creates the MSO directory in in the LogDir which is not needed, mentioned last directory of the path-->
+    <!-- property name="componentName" value="logs"></property -->
+
+    <!--  log file names -->
+    <property name="generalLogName" value="apicalls" />
+    <!-- name="securityLogName" value="security" -->
+    <!-- name="performanceLogName" value="performance" -->
+    <!-- name="serverLogName" value="server" -->
+    <!-- name="policyLogName" value="policy"-->
+    <property name="errorLogName" value="errors" />
+    <!-- name="metricsLogName" value="metrics" -->
+    <property name="debugLogName" value="debug"/>
+    <property name="jettyLogName" value="jetty"/>
+    <property name="defaultPattern"     value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
+    <property name="jettyLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
+
+    <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
+
+    <property name="logDirectory" value="${logDir}" />
+    <!-- property name="debugLogDirectory" value="${debugDir}/${componentName}" /-->
+
+
+    <!-- Example evaluator filter applied against console appender -->
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- ============================================================================ -->
+    <!-- EELF Appenders -->
+    <!-- ============================================================================ -->
+
+    <!-- The EELFAppender is used to record events to the general application
+      log -->
+
+
+    <appender name="EELF"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${generalLogName}.log</file>
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>INFO</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="EELF" />
+    </appender>
+
+    <!-- EELF Security Appender. This appender is used to record security events
+      to the security log file. Security events are separate from other loggers
+      in EELF so that security log records can be captured and managed in a secure
+      way separate from the other logs. This appender is set to never discard any
+      events. -->
+    <!--appender name="EELFSecurity"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${securityLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+        <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+
+    <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <discardingThreshold>0</discardingThreshold>
+      <appender-ref ref="EELFSecurity" />
+    </appender-->
+
+    <!-- EELF Performance Appender. This appender is used to record performance
+      records. -->
+    <!--appender name="EELFPerformance"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${performanceLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+        <outputPatternAsHeader>true</outputPatternAsHeader>
+        <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFPerformance" />
+    </appender-->
+
+    <!-- EELF Server Appender. This appender is used to record Server related
+      logging events. The Server logger and appender are specializations of the
+      EELF application root logger and appender. This can be used to segregate Server
+      events from other components, or it can be eliminated to record these events
+      as part of the application root log. -->
+    <!--appender name="EELFServer"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${serverLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+          <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFServer" />
+    </appender-->
+
+
+    <!-- EELF Policy Appender. This appender is used to record Policy engine
+      related logging events. The Policy logger and appender are specializations
+      of the EELF application root logger and appender. This can be used to segregate
+      Policy engine events from other components, or it can be eliminated to record
+      these events as part of the application root log. -->
+    <!--appender name="EELFPolicy"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${policyLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+          <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFPolicy" >
+    </appender-->
+
+
+    <!-- EELF Audit Appender. This appender is used to record audit engine
+      related logging events. The audit logger and appender are specializations
+      of the EELF application root logger and appender. This can be used to segregate
+      Policy engine events from other components, or it can be eliminated to record
+      these events as part of the application root log. -->
+
+    <!--appender name="EELFAudit"
+      class="ch.qos.logback.core.rolling.RollingFileAppender">
+      <file>${logDirectory}/${auditLogName}.log</file>
+      <rollingPolicy
+        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+        <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip
+        </fileNamePattern>
+        <minIndex>1</minIndex>
+        <maxIndex>9</maxIndex>
+      </rollingPolicy>
+      <triggeringPolicy
+        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+        <maxFileSize>5MB</maxFileSize>
+      </triggeringPolicy>
+      <encoder>
+           <pattern>${defaultPattern}</pattern>
+      </encoder>
+    </appender>
+    <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+      <queueSize>256</queueSize>
+      <appender-ref ref="EELFAudit" />
+    </appender-->
+
+    <!--appender name="EELFMetrics"
+        class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${metricsLogName}.log</file>
+        <rollingPolicy
+          class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+          <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip
+          </fileNamePattern>
+          <minIndex>1</minIndex>
+          <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+          class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+          <maxFileSize>5MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder-->
+    <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+      %msg%n"</pattern> -->
+    <!--pattern>${defaultPattern}</pattern>
+  </encoder>
+</appender>
+
+
+<appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+  <queueSize>256</queueSize>
+  <appender-ref ref="EELFMetrics"/>
+</appender-->
+
+    <appender name="EELFError"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${errorLogName}.log</file>
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>ERROR</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="EELFError"/>
+    </appender>
+
+    <!-- ============================================================================ -->
+    <appender name="jettylog"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${jettyLogName}.log</file>
+        <filter class="org.onap.dmaap.datarouter.provisioning.eelf.JettyFilter" />
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${jettyLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${jettyLoggerPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELFjettylog" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="jettylog" />
+        <includeCallerData>true</includeCallerData>
+    </appender>
+
+    <!-- ============================================================================ -->
+
+
+    <appender name="EELFDebug"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/${debugLogName}.log</file>
+        <filter class="org.onap.dmaap.datarouter.provisioning.eelf.DebugTraceFilter" />
+        <rollingPolicy
+                class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${logDirectory}/${debugLogName}.%i.log.zip
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>9</maxIndex>
+        </rollingPolicy>
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>50MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${defaultPattern}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="EELFDebug" />
+        <includeCallerData>true</includeCallerData>
+    </appender>
+
+
+    <!-- ============================================================================ -->
+    <!--  EELF loggers -->
+    <!-- ============================================================================ -->
+    <logger name="com.att.eelf" level="info" additivity="false">
+        <appender-ref ref="asyncEELF" />
+    </logger>
+
+    <logger name="com.att.eelf.error" level="error" additivity="false">
+        <appender-ref ref="asyncEELFError" />
+    </logger>
+
+    <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
         <appender-ref ref="asyncEELFjettylog"/>
     </logger>
 
-  <root level="INFO">
-    <appender-ref ref="asyncEELF" />
-    <appender-ref ref="asyncEELFError" />
-     <appender-ref ref="asyncEELFjettylog" />
-  </root>
+    <logger name="com.att.eelf.debug" level="debug" additivity="false">
+        <appender-ref ref="asyncEELFDebug" />
+    </logger>
+
+    <!-- logger name="com.att.eelf.security" level="info" additivity="false">
+      <appender-ref ref="asyncEELFSecurity" />
+    </logger>
+    <logger name="com.att.eelf.perf" level="info" additivity="false">
+      <appender-ref ref="asyncEELFPerformance" />
+    </logger>
+    <logger name="com.att.eelf.server" level="info" additivity="false">
+      <appender-ref ref="asyncEELFServer" />
+    </logger>
+    <logger name="com.att.eelf.policy" level="info" additivity="false">
+      <appender-ref ref="asyncEELFPolicy" />
+    </logger>
+
+    <logger name="com.att.eelf.audit" level="info" additivity="false">
+      <appender-ref ref="asyncEELFAudit" />
+    </logger>
+
+    <logger name="com.att.eelf.metrics" level="info" additivity="false">
+          <appender-ref ref="asyncEELFMetrics" />
+    </logger>
+
+     <logger name="com.att.eelf.debug" level="debug" additivity="false">
+          <appender-ref ref="asyncEELFDebug" />
+    </logger-->
+
+
+
+
+    <root level="INFO">
+        <appender-ref ref="asyncEELF" />
+        <appender-ref ref="asyncEELFError" />
+        <appender-ref ref="asyncEELFjettylog" />
+        <appender-ref ref="asyncEELFDebug" />
+    </root>
 
-</configuration>
+</configuration>
\ No newline at end of file
index a4e96f0..52f1f3f 100644 (file)
@@ -23,8 +23,8 @@
 
 
 #Jetty Server properties
-org.onap.dmaap.datarouter.provserver.http.port           = {{.Values.config.dmaapDrProv.externalPort}}
-org.onap.dmaap.datarouter.provserver.https.port          = {{.Values.config.dmaapDrProv.externalPort2}}
+org.onap.dmaap.datarouter.provserver.http.port           = {{.Values.global.dmaapDrProvExtPort}}
+org.onap.dmaap.datarouter.provserver.https.port          = {{.Values.global.dmaapDrProvExtPort2}}
 org.onap.dmaap.datarouter.provserver.https.relaxation    = true
 
 org.onap.dmaap.datarouter.provserver.keymanager.password = FZNkU,B%NJzcT1v7;^v]M#ZX
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/DefaultPM.json b/kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/DefaultPM.json
deleted file mode 100644 (file)
index 994f9c9..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-{
-  "feedName": "bulk_pm_feed",
-  "feedVersion": "m1.1",
-  "feedDescription": "Default feed provisioned for PM File collector",
-  "asprClassification" : "unclassified",
-  "owner": "onap",
-  "pubs": [
-      {
-      "dcaeLocationName" : "san-francisco",
-      "username": "dradmin",
-      "userpwd": "dradmin"
-      }
-
-      ],
-  "subs": [
-      {
-          "dcaeLocationName": "san-francisco",
-          "deliveryURL": "https://dcae-pm-mapper:8443/delivery",
-          "feedId": "1",
-          "owner": "dcae-pm-mapper",
-          "status": "VALID",
-          "subId": "1",
-          "suspended": false,
-          "use100": true,
-          "username": "pmmapper",
-          "userpwd": "pmmapper",
-          "decompressData": true,
-          "privilegedSubscriber": true
-      }
-    ]
-}
\ No newline at end of file
index fe93cb0..a39cb55 100644 (file)
@@ -36,7 +36,7 @@ data:
 apiVersion: v1
 kind: ConfigMap
 metadata:
-  name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+  name: {{ include "common.fullname" . }}-dmaap-dr-prov-filebeat-configmap
   namespace: {{ include "common.namespace" . }}
 data:
 {{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
index b9c144d..ea487d0 100644 (file)
@@ -29,13 +29,13 @@ spec:
         app: {{ include "common.name" . }}
         release: {{ .Release.Name }}
     spec:
-      hostname: {{.Values.config.dmaapDrProv.name}}
+      hostname: {{ .Values.global.dmaapDrProvName }}
       initContainers:
       - command:
         - /root/ready.py
         args:
         - --container-name
-        - {{.Values.config.dmaapDrDb.mariadbContName}}
+        - {{ .Values.config.dmaapDrDb.mariadbContName }}
         env:
         - name: NAMESPACE
           valueFrom:
@@ -50,18 +50,18 @@ spec:
           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           ports:
-          - containerPort: {{.Values.config.dmaapDrProv.externalPort}}
-          - containerPort: {{.Values.config.dmaapDrProv.externalPort2}}
+          - containerPort: {{ .Values.global.dmaapDrProvExtPort }}
+          - containerPort: {{ .Values.global.dmaapDrProvExtPort2 }}
           {{- if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{.Values.config.dmaapDrProv.externalPort}}
+              port: {{ .Values.global.dmaapDrProvExtPort }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end -}}
           readinessProbe:
             tcpSocket:
-              port: {{.Values.config.dmaapDrProv.externalPort}}
+              port: {{ .Values.global.dmaapDrProvExtPort }}
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           volumeMounts:
@@ -74,6 +74,9 @@ spec:
           - mountPath: /opt/app/datartr/etc/drProvCadi.properties
             name: {{ include "common.fullname" . }}-config
             subPath: drProvCadi.properties
+          - mountPath: /opt/app/datartr/etc/logback.xml
+            name: {{ include "common.fullname" . }}-log-conf
+            subPath: logback.xml
           - mountPath: {{ .Values.global.loggingDirectory }}
             name: {{ include "common.fullname" . }}-logs
           resources:
@@ -115,7 +118,7 @@ spec:
           name: {{ include "common.fullname" . }}-log
       - name: {{ include "common.fullname" . }}-filebeat-conf
         configMap:
-          name: {{ .Release.Name }}-dmaap-filebeat-configmap
+          name: {{ include "common.fullname" . }}-dmaap-dr-prov-filebeat-configmap
       - name: {{ include "common.fullname" . }}-data-filebeat
         emptyDir: {}
       - name:  {{ include "common.fullname" . }}-logs
index e411b2b..7b71bb0 100644 (file)
@@ -6,6 +6,7 @@ metadata:
     app.kubernetes.io/managed-by: {{.Release.Service | quote }}
     app.kubernetes.io/instance: {{.Release.Name | quote }}
     helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+    release: {{ .Release.Name }}
   annotations:
     # This is what defines this resource as a hook. Without this line, the
     # job is considered part of the release.
@@ -20,6 +21,7 @@ spec:
         app.kubernetes.io/managed-by: {{.Release.Service | quote }}
         app.kubernetes.io/instance: {{.Release.Name | quote }}
         helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+        release: {{ .Release.Name }}
     spec:
       restartPolicy: Never
       containers:
index 0b40389..7a94fdb 100644 (file)
@@ -15,7 +15,7 @@
 apiVersion: v1
 kind: Service
 metadata:
-  name: {{.Values.config.dmaapDrProv.name}}
+  name: {{ .Values.global.dmaapDrProvName }}
   namespace: {{ include "common.namespace" . }}
   labels:
     app: {{ include "common.name" . }}
@@ -26,36 +26,36 @@ metadata:
     service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
     msb.onap.org/service-info: '[
       {
-          "serviceName": "{{.Values.config.dmaapDrProv.name}}",
+          "serviceName": "{{ .Values.global.dmaapDrProvName }}",
           "version": "v1",
           "url": "/",
           "protocol": "REST",
-          "port": "{{.Values.config.dmaapDrProv.externalPort2}}",
+          "port": "{{ .Values.global.dmaapDrProvExtPort2 }}",
           "visualRange":"1"
       }
       ]'
 
 spec:
-  type: {{.Values.config.dmaapDrProv.servicetype}}
+  type: {{ .Values.config.dmaapDrProv.servicetype }}
   ports:
-    {{- if eq .Values.config.dmaapDrProv.servicetype "NodePort" }}
+    {{if eq .Values.config.dmaapDrProv.servicetype "NodePort" -}}
     {{- if .Values.global.allow_http }}
-    - port: {{.Values.config.dmaapDrProv.externalPort}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort}}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrProv.nodePort}}
-      name: {{.Values.config.dmaapDrProv.name}}
+    - port: {{ .Values.global.dmaapDrProvExtPort }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.config.dmaapDrProv.nodePort }}
+      name: {{ .Values.config.dmaapDrProv.portName }}
     {{- end}}
-    - port: {{.Values.config.dmaapDrProv.externalPort2}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort2}}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrProv.nodePort2}}
-      name: {{.Values.config.dmaapDrProv.name}}2
+    - port: {{ .Values.global.dmaapDrProvExtPort2 }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort2 }}
+      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.config.dmaapDrProv.nodePort2 }}
+      name: {{ .Values.config.dmaapDrProv.portName }}2
     {{- else -}}
-    - port: {{.Values.config.dmaapDrProv.externalPort}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort}}
-      name: {{.Values.config.dmaapDrProv.name}}
-    - port: {{.Values.config.dmaapDrProv.externalPort2}}
-      targetPort: {{.Values.config.dmaapDrProv.internalPort2}}
-      name: {{.Values.config.dmaapDrProv.name}}2
+    - port: {{ .Values.global.dmaapDrProvExtPort }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort }}
+      name: {{ .Values.config.dmaapDrProv.portName }}
+    - port: {{ .Values.global.dmaapDrProvExtPort2 }}
+      targetPort: {{ .Values.config.dmaapDrProv.internalPort2 }}
+      name: {{ .Values.config.dmaapDrProv.portName }}2
     {{- end}}
   selector:
     app: {{ include "common.name" . }}
index 39977f8..195bcb4 100644 (file)
 #################################################################
 global:
   nodePortPrefix: 302
-  readinessRepository: oomk8s
-  readinessImage: readiness-check:2.0.0
-  loggingRepository: docker.elastic.co
-  loggingImage: beats/filebeat:5.5.0
   loggingDirectory: /opt/app/datartr/logs
 
 #################################################################
 # Application configuration defaults.
 #################################################################
 # application image
-repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-prov:2.1.0
+image: onap/dmaap/datarouter-prov:2.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -86,9 +81,6 @@ config:
   # dr provisioning server configuration
   dmaapDrProv:
     servicetype: NodePort
-    name: dmaap-dr-prov
-    externalPort: 8080
-    externalPort2: 8443
     internalPort: 8080
     internalPort2: 8443
     portName: dr-prov-port
index f0d07ae..f5a7c7e 100644 (file)
@@ -97,7 +97,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: message-router/data-kafka
@@ -110,7 +110,7 @@ service:
   externalPort: 9093
   baseNodePort: 30490
 
-  
+
 
 ingress:
   enabled: false
@@ -134,4 +134,3 @@ resources:
       cpu: 1000m
       memory: 2Gi
   unlimited: {}
-
index 4c5541b..734736d 100644 (file)
@@ -92,7 +92,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: message-router/data-zookeeper
diff --git a/kubernetes/dmaap/components/message-router/resources/topics/PM_MAPPER.json b/kubernetes/dmaap/components/message-router/resources/topics/PM_MAPPER.json
deleted file mode 100644 (file)
index d2910b8..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "topicName": "PM_MAPPER",
- "topicDescription": "The PM Mapper will be publishing perf3gpp VES events to this topic",
- "owner": "pm-mapper",
- "txenabled": false,
- "clients": [{
-   "dcaeLocationName": "san-francisco",
-   "clientIdentity": "dcae@dcae.onap.org",
-   "action": [
-     "pub",
-     "view"
-   ]
- }]
-}
index b6f75d5..f428491 100644 (file)
@@ -6,6 +6,7 @@ metadata:
     app.kubernetes.io/managed-by: {{.Release.Service | quote }}
     app.kubernetes.io/instance: {{.Release.Name | quote }}
     helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+    release: {{ .Release.Name }}
   annotations:
     # This is what defines this resource as a hook. Without this line, the
     # job is considered part of the release.
@@ -20,6 +21,7 @@ spec:
         app.kubernetes.io/managed-by: {{.Release.Service | quote }}
         app.kubernetes.io/instance: {{.Release.Name | quote }}
         helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+        release: {{ .Release.Name }}
     spec:
       restartPolicy: Never
       containers:
index f1cf739..40d2476 100644 (file)
@@ -40,7 +40,7 @@ output.logstash:
   #List of logstash server ip addresses with port number.
   #But, in our case, this will be the loadbalancer IP address.
   #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
-  hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+  hosts: ["{{.Values.global.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.global.logstashPort}}"]
   #If enable will do load balancing among available Logstash, automatically.
   loadbalance: true
 
index d5b7bff..89c8baa 100644 (file)
 #################################################################
 global:
   nodePortPrefix: 302
+  nodePortPrefixExt: 304
   readinessRepository: oomk8s
   readinessImage: readiness-check:2.0.0
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
   clientImage: onap/dmaap/dbc-client:1.0.9
+  repository: nexus3.onap.org:10001
 
 #Global DMaaP app config
   allow_http: true
 
-# application configuration
-config:
+  #Logstash config
   logstashServiceName: log-ls
   logstashPort: 5044
 
+  #dmaap-dr-prov server configuration
+  dmaapDrProvName: dmaap-dr-prov
+  dmaapDrProvExtPort2: 8443
+  dmaapDrProvExtPort: 8080
+
+
+#Component overrides
 message-router:
   enabled: true
 dmaap-bc:
index 3416a02..1622689 100755 (executable)
@@ -109,6 +109,12 @@ deploy() {
     FLAGS="$(echo $FLAGS| sed -n 's/--verbose//p')"
     VERBOSE="true"
   fi
+  # determine if delay for deployment is enabled
+  DELAY="false"
+  if [[ $FLAGS = *"--delay"* ]]; then
+    FLAGS="$(echo $FLAGS| sed -n 's/--delay//p')"
+    DELAY="true"
+  fi   
   # determine if set-last-applied flag is enabled
   SET_LAST_APPLIED="false"
   if [[ $FLAGS = *"--set-last-applied"* ]]; then
@@ -238,6 +244,10 @@ deploy() {
              > $LOG_FILE.log 2>&1
         fi
       fi
+         if [[ $DELAY == "true" ]]; then
+               echo sleep 3m
+               sleep 3m
+         fi                                              
     else
       array=($(echo "$ALL_HELM_RELEASES" | grep "${RELEASE}-${subchart}"))
       n=${#array[*]}
index 37f4c42..467d731 100644 (file)
@@ -76,7 +76,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: modeling/genericparser
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/.helmignore b/kubernetes/multicloud/charts/multicloud-ocata/.helmignore
deleted file mode 100644 (file)
index f0c1319..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-# 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/multicloud/charts/multicloud-ocata/resources/config/log/log.yml b/kubernetes/multicloud/charts/multicloud-ocata/resources/config/log/log.yml
deleted file mode 100644 (file)
index 378970a..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright Â© 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  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.
-version: 1
-disable_existing_loggers: False
-
-loggers:
-    ocata:
-      handlers: [ocata_handler]
-      level: "DEBUG"
-      propagate: False
-    newton_base:
-      handlers: [ocata_handler]
-      level: "DEBUG"
-      propagate: False
-    common:
-      handlers: [ocata_handler]
-      level: "DEBUG"
-      propagate: False
-
-handlers:
-    ocata_handler:
-        level: "DEBUG"
-        class: "logging.handlers.RotatingFileHandler"
-        filename: "/var/log/onap/multicloud/openstack/ocata/ocata.log"
-        formatter: "mdcFormat"
-        maxBytes: 1024*1024*50
-        backupCount: 10
-
-formatters:
-    standard:
-        format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
-    mdcFormat:
-        format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
-        mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
-        datefmt: "%Y-%m-%d %H:%M:%S"
-        (): onaplogging.mdcformatter.MDCFormatter
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml b/kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml
deleted file mode 100644 (file)
index 7dd8fa5..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-{{/*
-# Copyright Â© 2017 Amdocs, Bell Canada
-# # Modifications Copyright Â© 2018 AT&T
-# #
-# # 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" . }}-log-configmap
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml b/kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml
deleted file mode 100644 (file)
index c2d966a..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-{{/*
-# Copyright Â© 2017 Amdocs, Bell Canada
-# Modifications Copyright Â© 2018 AT&T
-#
-# 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: extensions/v1beta1
-kind: Deployment
-metadata:
-  name: {{ include "common.fullname" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-spec:
-  replicas: {{ .Values.replicaCount }}
-  selector:
-    matchLabels:
-      app: {{ include "common.name" . }}
-  template:
-    metadata:
-      labels:
-        app: {{ include "common.name" . }}
-        release: {{ .Release.Name }}
-      name: {{ include "common.name" . }}
-      annotations:
-        sidecar.istio.io/inject: "{{.Values.istioSidecar}}"
-    spec:
-     containers:
-     - env:
-       - name: MSB_ADDR
-         value: "{{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}"
-       - name: MSB_PORT
-         value: "{{ .Values.config.msbPort }}"
-       - name: AAI_ADDR
-         value: aai.{{ include "common.namespace" . }}
-       - name: AAI_PORT
-         value: "{{ .Values.config.aai.port }}"
-       - name: AAI_SCHEMA_VERSION
-         value: "{{ .Values.config.aai.schemaVersion }}"
-       - name: AAI_USERNAME
-         value: "{{ .Values.config.aai.username }}"
-       - name: AAI_PASSWORD
-         value: "{{ .Values.config.aai.password }}"
-       name: {{ include "common.name" . }}
-       volumeMounts:
-       - mountPath: /var/log/onap
-         name: ocata-log
-       - mountPath: /opt/ocata/ocata/pub/config/log.yml
-         name: ocata-logconfig
-         subPath: log.yml
-       resources:
-{{ include "common.resources" . | indent 12 }}
-       image: "{{ include "common.repository" . }}/{{ .Values.image }}"
-       imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-       ports:
-       - containerPort: {{ .Values.service.internalPort }}
-       # disable liveness probe when breakpoints set in debugger
-       # so K8s doesn't restart unresponsive container
-       {{ if .Values.liveness.enabled }}
-       livenessProbe:
-         httpGet:
-           path: /api/multicloud-ocata/v0/swagger.json
-           port: {{ .Values.service.internalPort }}
-           scheme: HTTP
-         initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
-         periodSeconds: {{ .Values.liveness.periodSeconds }}
-         timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
-         successThreshold: {{ .Values.liveness.successThreshold }}
-         failureThreshold: {{ .Values.liveness.failureThreshold }}
-       {{ end }}
-     # side car containers
-     - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
-       imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-       name: filebeat-onap
-       volumeMounts:
-       - mountPath: /usr/share/filebeat/filebeat.yml
-         name: filebeat-conf
-         subPath: filebeat.yml
-       - mountPath: /var/log/onap
-         name: ocata-log
-       - mountPath: /usr/share/filebeat/data
-         name: ocata-data-filebeat
-
-     volumes:
-     - name: ocata-log
-       emptyDir: {}
-     - name: ocata-data-filebeat
-       emptyDir: {}
-     - name: filebeat-conf
-       configMap:
-         name: multicloud-filebeat-configmap
-     - name: ocata-logconfig
-       configMap:
-         name: {{ include "common.fullname" . }}-log-configmap
-     imagePullSecrets:
-     - name: "{{ include "common.namespace" . }}-docker-registry-key"
-     restartPolicy: Always
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml b/kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml
deleted file mode 100644 (file)
index fda5ece..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-{{/*
-# Copyright Â© 2017 Amdocs, Bell Canada
-# # Modifications Copyright Â© 2018 AT&T
-# #
-# # 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: Service
-metadata:
-  name: {{ include "common.servicename" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ .Release.Name }}
-    heritage: {{ .Release.Service }}
-  annotations:
-    msb.onap.org/service-info: '[
-    {
-      "serviceName": "multicloud-ocata",
-      "version": "v0",
-      "url": "/api/multicloud-ocata/v0",
-      "protocol": "REST",
-      "port": "{{ .Values.service.externalPort }}",
-      "visualRange": "1"
-    },
-    {
-      "serviceName": "multicloud-ocata",
-      "version": "v1",
-      "url": "/api/multicloud-ocata/v1",
-      "protocol": "REST",
-      "port": "{{ .Values.service.externalPort }}",
-      "visualRange": "1"
-    }
-    ]'
-spec:
-  ports:
-  {{if eq .Values.service.type "NodePort" -}}
-  - port: {{ .Values.service.externalPort }}
-    nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
-    name: {{ .Values.service.portName }}
-  {{- else -}}
-  - port: {{ .Values.service.externalPort }}
-    targetPort: {{ .Values.service.internalPort }}
-    name: {{ .Values.service.portName }}
-  {{- end}}
-  selector:
-    app: {{ include "common.name" . }}
-    release: {{ .Release.Name }}
-  type: {{ .Values.service.type }}
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/values.yaml b/kubernetes/multicloud/charts/multicloud-ocata/values.yaml
deleted file mode 100644 (file)
index d1d3a38..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright Â© 2017 Amdocs, Bell Canada
-# Modifications Copyright Â© 2018 AT&T
-#
-# 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:
-  nodePortPrefix: 302
-
-#################################################################
-# Application configuration defaults.
-#################################################################
-# application image
-repository: nexus3.onap.org:10001
-image: onap/multicloud/openstack-ocata:1.3.4
-pullPolicy: Always
-
-#Istio sidecar injection policy
-istioSidecar: true
-
-# application configuration
-config:
-  msbgateway: msb-iag
-  msbPort: 80
-  aai:
-    port: 8443
-    schemaVersion: v13
-    username: AAI
-    password: AAI
-
-# default number of instances
-replicaCount: 1
-
-nodeSelector: {}
-
-affinity: {}
-
-# probe configuration parameters
-liveness:
-  initialDelaySeconds: 30
-  periodSeconds: 10
-  timeoutSeconds: 10
-  successThreshold: 1
-  failureThreshold: 5
-  enabled: true
-
-service:
-  type: ClusterIP
-  name: multicloud-ocata
-  portName: multicloud-ocata
-  externalPort: 9006
-  internalPort: 9006
-  nodePort: 93
-
-ingress:
-  enabled: false
-
-# Resource Limit flavor -By Default using small
-flavor: small
-# Segregation for Different environment (Small and Large)
-resources:
-  small:
-    limits:
-      cpu: 1
-      memory: 4Gi
-    requests:
-      cpu: 10m
-      memory: 1Gi
-  large:
-    limits:
-      cpu: 2
-      memory: 8Gi
-    requests:
-      cpu: 20m
-      memory: 2Gi
-  unlimited: {}
index f44ab0b..c4618fa 100644 (file)
@@ -24,7 +24,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/multicloud/vio:1.3.1
+image: onap/multicloud/vio:1.4.1
 pullPolicy: Always
 
 #Istio sidecar injection policy
index e6f1456..0cb1d73 100644 (file)
@@ -39,6 +39,14 @@ spec:
       annotations:
         sidecar.istio.io/inject: "{{.Values.istioSidecar}}"
     spec:
+     initContainers:
+     - command: ["sh", "-c", "chown -R 100:101 /data"]
+       image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.global.ubuntuInitImage }}"
+       imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+       name: {{ include "common.name" . }}-init
+       volumeMounts:
+       - mountPath: /data
+         name: artifact-data
      containers:
      - env:
        - name: MSB_ADDR
@@ -122,7 +130,12 @@ spec:
        configMap:
          name: {{ include "common.fullname" . }}-log-configmap
      - name: artifact-data
+     {{- if .Values.persistence.enabled }}
+       persistentVolumeClaim:
+         claimName: {{ include "common.fullname" . }}
+     {{- else }}
        emptyDir: {}
+     {{- end }}
      imagePullSecrets:
      - name: "{{ include "common.namespace" . }}-docker-registry-key"
      restartPolicy: Always
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/templates/pv.yaml b/kubernetes/multicloud/charts/multicloud-windriver/templates/pv.yaml
new file mode 100644 (file)
index 0000000..e2e326d
--- /dev/null
@@ -0,0 +1,37 @@
+{{/*
+# Copyright Â© 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" . }}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+    name: {{ include "common.fullname" . }}
+spec:
+  capacity:
+    storage: {{ .Values.persistence.size}}
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+  hostPath:
+    path: {{ default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/templates/pvc.yaml b/kubernetes/multicloud/charts/multicloud-windriver/templates/pvc.yaml
new file mode 100644 (file)
index 0000000..5bc04cd
--- /dev/null
@@ -0,0 +1,41 @@
+{{/*
+# Copyright Â© 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+  name: {{ include "common.fullname" .}}
+  namespace: {{ include "common.namespace" . }}
+  labels:
+    app: {{ include "common.name" . }}
+    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+    release: "{{ .Release.Name }}"
+    heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+  annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+  selector:
+    matchLabels:
+      app: {{ include "common.name" . }}
+  accessModes:
+    - {{ .Values.persistence.accessMode }}
+  resources:
+    requests:
+      storage: {{ .Values.persistence.size }}
+{{- end -}}
index 9f8dff3..fbc9103 100644 (file)
@@ -18,6 +18,8 @@
 #################################################################
 global:
   nodePortPrefix: 302
+  ubuntuInitRepository: oomk8s
+  ubuntuInitImage: ubuntu-init:1.0.0
 
 #################################################################
 # Application configuration defaults.
@@ -67,6 +69,14 @@ liveness:
 ingress:
   enabled: false
 
+persistence:
+  enabled: true
+  mountPath: /dockerdata-nfs
+  mountSubPath: multicloud-windriver/data
+  volumeReclaimPolicy: Retain
+  accessMode: ReadWriteOnce
+  size: 5Gi
+
 # Resource Limit flavor -By Default using small
 flavor: small
 # Segregation for Different environment (Small and Large)
index 11ab751..c3cac8b 100644 (file)
                 "version": "starlingx",
                 "extra_info_hint": "",
                 "provider_plugin": "multicloud-starlingx"
-            },
-            "ocata": {
-                "version": "ocata",
-                "extra_info_hint": "",
-                "provider_plugin": "multicloud-ocata"
             }
         },
-        "provider_plugin": "multicloud-ocata"
+        "provider_plugin": "multicloud-pike"
     },
     "vmware": {
         "vim_type": "vmware",
index bff78ca..00fd8c3 100644 (file)
@@ -20,7 +20,7 @@ global:
   nodePortPrefix: 302
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
-  artifactImage: onap/multicloud/framework-artifactbroker:1.3.3
+  artifactImage: onap/multicloud/framework-artifactbroker:1.4.0
   prometheus:
     enabled: false
 
@@ -29,7 +29,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/multicloud/framework:1.3.3
+image: onap/multicloud/framework:1.4.0
 pullPolicy: Always
 
 #Istio sidecar injection policy
index bd79853..70fa143 100644 (file)
@@ -61,7 +61,7 @@ readiness:
 persistence:
   enabled: true
   volumeReclaimPolicy: Retain
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: mariadb/data
index aef2e59..494cf73 100644 (file)
@@ -28,7 +28,7 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/externalapi/nbi:5.0.0
+image: onap/externalapi/nbi:5.0.1
 pullPolicy: Always
 sdc_authorization: Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU=
 aai_authorization: Basic QUFJOkFBSQ==
index fa2ed65..640efa6 100644 (file)
@@ -21,3 +21,4 @@ home: https://www.onap.org/
 sources:
 - https://gerrit.onap.org/r/#/admin/projects/
 icon: https://wiki.onap.org/download/thumbnails/1015829/onap_704x271%20copy.png?version=1&modificationDate=1488326334000&api=v2
+kubeVersion: ">=1.11.5-0"
index 5dd51a0..8b186c0 100755 (executable)
@@ -33,6 +33,10 @@ dependencies:
     version: ~5.x-0
     repository: '@local'
     condition: cassandra.enabled
+  - name: cds
+    version: ~5.x-0
+    repository: '@local'
+    condition: cds.enabled
   - name: clamp
     version: ~5.x-0
     repository: '@local'
@@ -148,7 +152,3 @@ dependencies:
     version: ~5.x-0
     repository: '@local'
     condition: modeling.enabled
-  - name: nginx-ingress
-    version: ~1.6.18
-    repository: 'https://kubernetes-charts.storage.googleapis.com'
-    condition: nginx-ingress.enabled
index 04fbc97..c93f2c4 100644 (file)
@@ -26,6 +26,8 @@ aai:
   enabled: true
 appc:
   enabled: true
+cds:
+  enabled: true
 clamp:
   enabled: true
 cli:
index 46c8db6..672ae2e 100755 (executable)
@@ -77,6 +77,8 @@ appc:
     openStackEncryptedPassword: admin
 cassandra:
   enabled: false
+cds:
+  enabled: false
 clamp:
   enabled: false
 cli:
@@ -168,5 +170,3 @@ vnfsdk:
   enabled: false
 modeling:
   enabled: false
-nginx-ingress:
-  enabled: false
index e53c342..d2611ab 100755 (executable)
@@ -25,7 +25,7 @@ global:
   commonConfigPrefix: onap-oof-has
   image:
     readiness: oomk8s/readiness-check:2.0.0
-    optf_has: onap/optf-has:1.3.1
+    optf_has: onap/optf-has:1.3.3
     filebeat: docker.elastic.co/beats/filebeat:5.5.0
 
 pullPolicy: Always
index d72b1f0..a9b2b2a 100644 (file)
@@ -26,7 +26,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/optf-osdf:1.3.2
+image: onap/optf-osdf:1.3.4
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 57ff2f4..ef817f0 100644 (file)
@@ -26,7 +26,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.5.1
+image: onap/policy-pe:1.5.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 5d85f6c..2f80892 100644 (file)
@@ -73,7 +73,7 @@ ingress:
 persistence:
   enabled: true
   volumeReclaimPolicy: Retain
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: nexus/data
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/policy-keystore b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/policy-keystore
deleted file mode 100644 (file)
index ab25c3a..0000000
Binary files a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/policy-keystore and /dev/null differ
diff --git a/kubernetes/policy/charts/drools/resources/configmaps/amsterdam.pre.sh b/kubernetes/policy/charts/drools/resources/configmaps/amsterdam.pre.sh
new file mode 100644 (file)
index 0000000..5949db4
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/bash
+# ============LICENSE_START=======================================================
+# ONAP
+# ================================================================================
+# Copyright (C) 2019 AT&T Intellectual Property. 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.
+# ============LICENSE_END=========================================================
+
+
+docker-entrypoint.sh nexus
\ No newline at end of file
@@ -1,4 +1,5 @@
-# Copyright Â© 2017-2018 Amdocs, Bell Canada, AT&T
+# Copyright Â© 2017-2018 Amdocs, Bell Canada.
+# Modifications Copyright (C) 2018-2019 AT&T Intellectual Property.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 
 # JVM options
 
-JVM_OPTIONS=-server -Xms1024m -Xmx2048m
+JVM_OPTIONS={{.Values.server.jvmOpts}}
 
 # SYSTEM software configuration 
 
 POLICY_HOME=/opt/app/policy
 POLICY_LOGS=/var/log/onap/policy/pdpd
 JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk
-KEYSTORE_PASSWD=Pol1cy_0nap
-TRUSTSTORE_PASSWD=Pol1cy_0nap
 
 # Telemetry credentials
 
 TELEMETRY_PORT=9696
 TELEMETRY_HOST=0.0.0.0
-TELEMETRY_USER=demo@people.osaaf.org
-TELEMETRY_PASSWORD=demo123456!
 
 # nexus repository
 
 SNAPSHOT_REPOSITORY_ID=policy-nexus-snapshots
-SNAPSHOT_REPOSITORY_URL=http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots/
+SNAPSHOT_REPOSITORY_URL=http://{{.Values.global.nexus.nameOverride}}:{{.Values.nexus.port}}/nexus/content/repositories/snapshots/
 RELEASE_REPOSITORY_ID=policy-nexus-releases
-RELEASE_REPOSITORY_URL=http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/releases/
-REPOSITORY_USERNAME=admin
-REPOSITORY_PASSWORD=admin123
+RELEASE_REPOSITORY_URL=http://{{.Values.global.nexus.nameOverride}}:{{.Values.nexus.port}}/nexus/content/repositories/releases/
 
 # Relational (SQL) DB access 
 
 SQL_HOST={{.Values.global.mariadb.nameOverride}}
-SQL_USER=policy_user
-SQL_PASSWORD=policy_user
 
 # AAF
 
-AAF=true
+AAF={{.Values.aaf.enabled}}
 AAF_NAMESPACE=org.onap.policy
 AAF_HOST=aaf-locate.{{.Release.Namespace}}
 
@@ -56,8 +49,6 @@ AAF_HOST=aaf-locate.{{.Release.Namespace}}
 
 PDPD_CONFIGURATION_TOPIC=PDPD-CONFIGURATION
 PDPD_CONFIGURATION_SERVERS=message-router
-PDPD_CONFIGURATION_API_KEY=
-PDPD_CONFIGURATION_API_SECRET=
 PDPD_CONFIGURATION_CONSUMER_GROUP=
 PDPD_CONFIGURATION_CONSUMER_INSTANCE=
 PDPD_CONFIGURATION_PARTITION_KEY=
@@ -65,23 +56,14 @@ PDPD_CONFIGURATION_PARTITION_KEY=
 # PAP-PDP configuration channel
 
 POLICY_PDP_PAP_TOPIC=POLICY-PDP-PAP
-POLICY_PDP_PAP_API_KEY=
-POLICY_PDP_PAP_API_SECRET=
 
 # PAP
 
 PAP_HOST=policy-pap
-PAP_USERNAME=healthcheck
-PAP_PASSWORD=zb!XztG34
 
 # PDP-X
 
 PDP_HOST=policy-xacml-pdp
-PDP_USERNAME=healthcheck
-PDP_PASSWORD=zb!XztG34
-PDP_CLIENT_USERNAME=python
-PDP_CLIENT_PASSWORD=test
-PDP_ENVIRONMENT=TEST
 
 # DCAE DMaaP
 
@@ -96,23 +78,15 @@ DMAAP_SERVERS=message-router
 # AAI
 
 AAI_URL=https://aai.{{.Release.Namespace}}:8443
-AAI_USERNAME=policy@policy.onap.org
-AAI_PASSWORD=demo123456!
 
 # MSO
 
 SO_URL=http://so.{{.Release.Namespace}}:8080/onap/so/infra
-SO_USERNAME=InfraPortalClient
-SO_PASSWORD=password1$
 
 # VFC
 
 VFC_URL=
-VFC_USERNAME=
-VFC_PASSWORD=
 
 # SDNC
 
 SDNC_URL=http://sdnc.{{.Release.Namespace}}:8282/restconf/operations
-SDNC_USERNAME=admin
-SDNC_PASSWORD=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
@@ -1,5 +1,5 @@
-# Copyright 2018 AT&T Intellectual Property. All rights reserved
-# Modifications Copyright Â© 2018 Amdocs, Bell Canada
+# Copyright 2018-2019 AT&T Intellectual Property. All rights reserved.
+# Modifications Copyright Â© 2018 Amdocs, Bell Canada.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -1,19 +1,20 @@
-# Copyright Â© 2017 Amdocs, Bell Canada, AT&T
-#
+#!/bin/bash
+# ============LICENSE_START=======================================================
+# ONAP
+# ================================================================================
+# Copyright (C) 2019 AT&T Intellectual Property. 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
+#      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.
+# ============LICENSE_END=========================================================
 
-CONTROLLER_ARTIFACT_ID=policy-management
-CONTROLLER_NAME=policy-management-controller
-CONTROLLER_PORT=9696
-RULES_ARTIFACT=not-used:not-used:1.0.0-SNAPSHOT
-UEB_TOPIC=policyengine-develop
+policy status
diff --git a/kubernetes/policy/charts/drools/resources/scripts/update-vfw-op-policy.sh b/kubernetes/policy/charts/drools/resources/scripts/update-vfw-op-policy.sh
deleted file mode 100644 (file)
index ff7a64b..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright Â© 2017 Amdocs, Bell Canada, AT&T
-#
-# 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.
-
-#!/bin/bash
-
-if [ "$#" -ne 4 ]; then
-       echo "Usage: $(basename $0) <k8s-host> <policy-pdp-node-port> <policy-drools-node-port> <resource-id>"
-       exit 1
-fi
-
-K8S_HOST=$1
-POLICY_PDP_PORT=$2
-POLICY_DROOLS_PORT=$3
-RESOURCE_ID=$4
-
-echo
-echo
-echo "Removing the vFW Policy from PDP.."
-echo
-echo
-
-curl -v -k -X DELETE --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
-  "pdpGroup": "default",
-  "policyComponent" : "PDP",
-  "policyName": "com.BRMSParamvFirewall",
-  "policyType": "BRMS_Param"
-}' https://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/deletePolicy
-
-sleep 20
-
-echo
-
-echo
-echo "Updating vFW Operational Policy .."
-echo
-
-curl -v -k -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
-  "policyConfigType": "BRMS_PARAM",
-  "policyName": "com.BRMSParamvFirewall",
-  "policyDescription": "BRMS Param vFirewall policy",
-  "policyScope": "com",
-  "attributes": {
-    "MATCHING": {
-      "controller": "amsterdam"
-    },
-    "RULE": {
-      "templateName": "ClosedLoopControlName",
-      "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a",
-      "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+'${RESOURCE_ID}'%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
-    }
-  }
-}' https://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/updatePolicy
-
-sleep 5
-
-echo
-echo
-echo "Pushing the vFW Policy .."
-echo
-echo
-
-curl -v -k --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
-  "pdpGroup": "default",
-  "policyName": "com.BRMSParamvFirewall",
-  "policyType": "BRMS_Param"
-}' https://${K8S_HOST}:${POLICY_PDP_PORT}/pdp/api/pushPolicy
-
-sleep 20
-
-echo
-echo
-echo "Restarting PDP-D .."
-echo
-echo
-
-POD=$(kubectl --namespace {{ include "common.namespace" . }} get pods | sed 's/ .*//'| grep drools)
-kubectl --namespace {{ include "common.namespace" . }} exec -it ${POD} -- bash -c "source /opt/app/policy/etc/profile.d/env.sh && policy stop && sleep 5 && policy start"
-
-sleep 20
-
-echo
-echo
-echo "PDP-D amsterdam maven coordinates .."
-echo
-echo
-
-curl -vvv -k --silent --user "demo@people.osaaf.org:demo123456!" -X GET https://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools  | python -m json.tool
-
-
-echo
-echo
-echo "PDP-D control loop updated .."
-echo
-echo
-
-curl -v -k --silent --user "demo@people.osaaf.org:demo123456!" -X GET https://${K8S_HOST}:${POLICY_DROOLS_PORT}/policy/pdp/engine/controllers/amsterdam/drools/facts/closedloop-amsterdam/org.onap.policy.controlloop.Params  | python -m json.tool
diff --git a/kubernetes/policy/charts/drools/resources/secrets/credentials.conf b/kubernetes/policy/charts/drools/resources/secrets/credentials.conf
new file mode 100644 (file)
index 0000000..36d3c3b
--- /dev/null
@@ -0,0 +1,56 @@
+#  ============LICENSE_START=======================================================
+#   Copyright (C) 2019 AT&T Intellectual Property. 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=========================================================
+
+KEYSTORE_PASSWD={{.Values.keystore.password}}
+TRUSTSTORE_PASSWD={{.Values.truststore.password}}
+
+TELEMETRY_USER={{.Values.telemetry.user}}
+TELEMETRY_PASSWORD={{.Values.telemetry.password}}
+
+REPOSITORY_USERNAME={{.Values.nexus.user}}
+REPOSITORY_PASSWORD={{.Values.nexus.password}}
+
+SQL_USER={{.Values.db.user}}
+SQL_PASSWORD={{.Values.db.password}}
+
+PDPD_CONFIGURATION_API_KEY={{.Values.dmaap.brmsgw.key}}
+PDPD_CONFIGURATION_API_SECRET={{.Values.dmaap.brmsgw.secret}}
+
+POLICY_PDP_PAP_API_KEY={{.Values.dmaap.pap.key}}
+POLICY_PDP_PAP_API_SECRET={{.Values.dmaap.pap.secret}}
+
+PAP_USERNAME={{.Values.pap.user}}
+PAP_PASSWORD={{.Values.pap.password}}
+
+PDP_USERNAME={{.Values.pdp.user}}
+PDP_PASSWORD={{.Values.pdp.password}}
+
+AAI_USERNAME={{.Values.aai.user}}
+AAI_PASSWORD={{.Values.aai.password}}
+
+SO_USERNAME={{.Values.so.user}}
+SO_PASSWORD={{.Values.so.password}}
+
+VFC_USERNAME={{.Values.vfc.user}}
+VFC_PASSWORD={{.Values.vfc.password}}
+
+SDNC_USERNAME={{.Values.sdnc.user}}
+SDNC_PASSWORD={{.Values.sdnc.password}}
+
+HEALTHCHECK_USER={{.Values.telemetry.user}}
+HEALTHCHECK_PASSWORD={{.Values.telemetry.password}}
diff --git a/kubernetes/policy/charts/drools/templates/NOTES.txt b/kubernetes/policy/charts/drools/templates/NOTES.txt
deleted file mode 100644 (file)
index fa0aa7d..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2018 AT&T, Amdocs, Bell Canada Intellectual Property. 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.
-
-1. Get the application URL by running these commands:
-{{- if .Values.ingress.enabled }}
-{{- range .Values.ingress.hosts }}
-  http://{{ . }}
-{{- end }}
-{{- else if contains "NodePort" .Values.service.type }}
-  export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
-  export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
-  echo http://$NODE_IP:$NODE_PORT
-{{- else if contains "LoadBalancer" .Values.service.type }}
-     NOTE: It may take a few minutes for the LoadBalancer IP to be available.
-           You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
-  export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
-  echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
-{{- else if contains "ClusterIP" .Values.service.type }}
-  export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
-  echo "Visit http://127.0.0.1:8080 to use your application"
-  kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
-{{- end }}
index 1f95031..7daf473 100644 (file)
@@ -19,4 +19,4 @@ metadata:
   name: {{ include "common.fullname" . }}-configmap
   namespace: {{ include "common.namespace" . }}
 data:
-{{ tpl (.Files.Glob "resources/config/opt/policy/config/drools/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/configmaps/*").AsConfig . | indent 2 }}
index e21084f..31ba543 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright Â© 2017 Amdocs, Bell Canada
-# Modifications Copyright Â© 2018 AT&T
+# Modifications Copyright Â© 2018-2019 AT&T
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -23,6 +23,8 @@ metadata:
     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
     release: {{ .Release.Name }}
     heritage: {{ .Release.Service }}
-data:
-{{ (.Files.Glob "resources/config/opt/policy/config/drools/keys/*").AsSecrets | indent 2 }}
 type: Opaque
+data:
+{{- range $path, $bytes := .Files.Glob "resources/secrets/*" }}
+  {{ base $path }}: {{ tpl ($.Files.Get $path) $ | b64enc | quote }}
+{{- end }}
index beacbab..bb21ae1 100644 (file)
@@ -78,15 +78,16 @@ spec:
           - mountPath: /etc/localtime
             name: localtime
             readOnly: true
-          - mountPath: /tmp/policy-install/config/feature-healthcheck.conf
+          {{- range $path, $bytes := .Files.Glob "resources/secrets/*" }}
+          - mountPath: /tmp/policy-install/config/{{ base $path }}
             name: drools-secret
-            subPath: feature-healthcheck.conf
-          - mountPath: /tmp/policy-install/config/feature-pooling-dmaap.conf
-            name: drools-config
-            subPath: feature-pooling-dmaap.conf
-          - mountPath: /tmp/policy-install/config/base.conf
+            subPath: {{ base $path }}
+          {{- end }}
+          {{- range $path, $bytes := .Files.Glob "resources/configmaps/*" }}
+          - mountPath: /tmp/policy-install/config/{{ base $path }}
             name: drools-config
-            subPath: base.conf
+            subPath: {{ base $path }}
+          {{- end }}
           - mountPath: /var/log/onap
             name: policy-logs
           resources:
@@ -125,18 +126,19 @@ spec:
           configMap:
             name: {{ include "common.fullname" . }}-configmap
             items:
-            - key: base.conf
-              path: base.conf
-              mode: 0755
-            - key: feature-pooling-dmaap.conf
-              path: feature-pooling-dmaap.conf
+            {{- range $path, $bytes := .Files.Glob "resources/configmaps/*" }}
+            - key: {{ base $path }}
+              path: {{ base $path }}
               mode: 0755
+            {{- end }}
         - name: drools-secret
           secret:
             secretName: {{ include "common.fullname" . }}-secret
             items:
-            - key: feature-healthcheck.conf
-              path: feature-healthcheck.conf
+            {{- range $path, $bytes := .Files.Glob "resources/secrets/*" }}
+            - key: {{ base $path }}
+              path: {{ base $path }}
               mode: 0644
+            {{- end }}
       imagePullSecrets:
       - name: "{{ include "common.namespace" . }}-docker-registry-key"
index 21f9169..88e664d 100644 (file)
@@ -23,21 +23,18 @@ global:
   loggingRepository: docker.elastic.co
   loggingImage: beats/filebeat:5.5.0
   ubuntuImage: ubuntu:16.04
+
 #################################################################
 # Application configuration defaults.
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pdpd-cl:1.5.1
+image: onap/policy-pdpd-cl:1.5.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
 debugEnabled: false
 
-# application configuration
-config:
-  nexusPort: 8081
-
 # default number of instances
 replicaCount: 1
 
@@ -71,6 +68,65 @@ service:
 ingress:
   enabled: false
 
+# Default installation values to be overridden
+
+server:
+  jvmOpts: -server -Xms1024m -Xmx2048m
+
+aaf:
+  enabled: "false"
+
+keystore:
+  password: Pol1cy_0nap
+
+truststore:
+  password: Pol1cy_0nap
+
+telemetry:
+  user: demo@people.osaaf.org
+  password: demo123456!
+
+nexus:
+  user: admin
+  password: admin123
+  port: 8081
+
+db:
+  user: policy_user
+  password: policy_user
+
+pap:
+  user: healthcheck
+  password: zb!XztG34
+
+pdp:
+  user: healthcheck
+  password: zb!XztG34
+
+aai:
+  user: policy@policy.onap.org
+  password: demo123456!
+
+so:
+  user: InfraPortalClient
+  password: password1$
+
+vfc:
+  user:
+  password:
+
+sdnc:
+  user: admin
+  password: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+dmaap:
+  brmsgw:
+    key:
+    password:
+  pap:
+    key:
+    password:
+
 # Resource Limit flavor -By Default using small
 flavor: small
 # Segregation for Different environment (Small and Large)
index 15c75b7..9b7102d 100644 (file)
@@ -60,7 +60,7 @@ readiness:
 persistence:
   enabled: true
   volumeReclaimPolicy: Retain
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: mariadb/data
index 07f1794..20f4614 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.5.1
+image: onap/policy-pe:1.5.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 381c825..1dd1d18 100644 (file)
@@ -29,7 +29,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-apex-pdp:2.2.1
+image: onap/policy-apex-pdp:2.2.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index bace88f..3a55227 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-api:2.1.1
+image: onap/policy-api:2.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 5591e58..5e1c80f 100644 (file)
                         "forwarderType":"ApexForwarder",
                         "forwarderClassName":"org.onap.policy.distribution.forwarding.apex.pdp.ApexPdpPolicyForwarder",
                         "forwarderConfigurationName": "apexForwarderConfiguration"
+                    },
+                    "LifeCycleApiForwarder":{
+                        "forwarderType":"LifeCycleAPI",
+                        "forwarderClassName":"org.onap.policy.distribution.forwarding.lifecycle.api.LifecycleApiPolicyForwarder",
+                        "forwarderConfigurationName": "lifecycleApiConfiguration"
                     }
                 }
             }
         "apexDecoderConfiguration":{
             "parameterClassName":"org.onap.policy.distribution.reception.decoding.policy.file.PolicyDecoderFileInCsarToPolicyParameterGroup",
             "parameters":{
-                "policyFileName": "SamplePolicyModelJAVASCRIPT",
-                "policyType": "APEX"
+                "policyFileName": "apex_policy",
+                "policyTypeFileName": "apex_policy_type"
             }
         }
     },
                 "ignoreConflicts": true,
                 "forceUpdate": true
             }
+        },
+        "lifecycleApiConfiguration":{
+            "parameterClassName":"org.onap.policy.distribution.forwarding.lifecycle.api.LifecycleApiForwarderParameters",
+            "parameters":{
+                "apiParameters": {
+                "hostName": "policy-api",
+                "port": 6969,
+                  "userName": "healthcheck",
+                  "password": "zb!XztG34"
+                 },
+                "papParameters": {
+                  "hostName": "policy-pap",
+                  "port": 6969,
+                 "userName": "healthcheck",
+                "password": "zb!XztG34"
+                },
+                "isHttps": true,
+                "deployPolicies": true
+             }
         }
     }
 }
index 2cc0d44..04257a4 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-distribution:2.2.0
+image: onap/policy-distribution:2.2.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index e3cb999..bcf08f2 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pap:2.1.1
+image: onap/policy-pap:2.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 5635c05..4483a1b 100644 (file)
         "https": true,
         "aaf": false
     },
+    "policyApiParameters": {
+        "host": "policy-api",
+        "port": 6969,
+        "userName": "healthcheck",
+        "password": "zb!XztG34",
+        "https": true,
+        "aaf": false
+    },
     "applicationPath": "/opt/app/policy/pdpx/apps",
     "topicParameterGroup": {
         "topicSources" : [{
index 0f61c03..161722b 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-xacml-pdp:2.1.1
+image: onap/policy-xacml-pdp:2.1.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index f43d50d..3648647 100644 (file)
@@ -41,7 +41,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/policy-pe:1.5.1
+image: onap/policy-pe:1.5.2
 pullPolicy: Always
 
 subChartsOnly:
index 5503328..dc27fdb 100644 (file)
@@ -55,6 +55,8 @@ spec:
           - ""
           - -n
           - ""
+          - -b
+          - "{{ .Values.global.env.tomcatDir }}"
         env:
           - name: CATALINA_OPTS
             value: >
index aa8951c..8d9cee0 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/portal-app:2.5.0
+image: onap/portal-app:2.6.0
 pullPolicy: Always
 
 # default number of instances
index c46ca42..e08f59b 100644 (file)
@@ -69,7 +69,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: portal/cassandra/data
index f00bf8b..28fcee1 100644 (file)
@@ -4,18 +4,18 @@ shopt -s nullglob
 
 # if command starts with an option, prepend mysqld
 if [ "${1:0:1}" = '-' ]; then
-        set -- mysqld "$@"
+       set -- mysqld "$@"
 fi
 
 # skip setup if they want an option that stops mysqld
 wantHelp=
 for arg; do
-        case "$arg" in
-                -'?'|--help|--print-defaults|-V|--version)
-                        wantHelp=1
-                        break
-                        ;;
-        esac
+       case "$arg" in
+               -'?'|--help|--print-defaults|-V|--version)
+                       wantHelp=1
+                       break
+                       ;;
+       esac
 done
 
 # usage: file_env VAR [DEFAULT]
@@ -23,168 +23,174 @@ done
 # (will allow for "$XYZ_DB_PASSWORD_FILE" to fill in the value of
 #  "$XYZ_DB_PASSWORD" from a file, especially for Docker's secrets feature)
 file_env() {
-        local var="$1"
-        local fileVar="${var}_FILE"
-        local def="${2:-}"
-        if [ "${!var:-}" ] && [ "${!fileVar:-}" ]; then
-                echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
-                exit 1
-        fi
-        local val="$def"
-        if [ "${!var:-}" ]; then
-                val="${!var}"
-        elif [ "${!fileVar:-}" ]; then
-                val="$(< "${!fileVar}")"
-        fi
-        export "$var"="$val"
-        unset "$fileVar"
+       local var="$1"
+       local fileVar="${var}_FILE"
+       local def="${2:-}"
+       if [ "${!var:-}" ] && [ "${!fileVar:-}" ]; then
+               echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
+               exit 1
+       fi
+       local val="$def"
+       if [ "${!var:-}" ]; then
+               val="${!var}"
+       elif [ "${!fileVar:-}" ]; then
+               val="$(< "${!fileVar}")"
+       fi
+       export "$var"="$val"
+       unset "$fileVar"
 }
 
 _check_config() {
-        toRun=( "$@" --verbose --help --log-bin-index="$(mktemp -u)" )
-        if ! errors="$("${toRun[@]}" 2>&1 >/dev/null)"; then
-                cat >&2        <<-EOM
-
-                               ERROR: mysqld failed while attempting to check config
-                               command was: "${toRun[*]}"
-
-                               $errors
-                               EOM
-                exit 1
-        fi
+       toRun=( "$@" --verbose --help --log-bin-index="$(mktemp -u)" )
+       if ! errors="$("${toRun[@]}" 2>&1 >/dev/null)"; then
+               cat >&2 <<-EOM
+                       ERROR: mysqld failed while attempting to check config
+                       command was: "${toRun[*]}"
+                       $errors
+               EOM
+               exit 1
+       fi
 }
 
 # Fetch value from server config
 # We use mysqld --verbose --help instead of my_print_defaults because the
 # latter only show values present in config files, and not server defaults
 _get_config() {
-        local conf="$1"; shift
-        "$@" --verbose --help --log-bin-index="$(mktemp -u)" 2>/dev/null | awk '$1 == "'"$conf"'" { print $2; exit }'
+       local conf="$1"; shift
+       "$@" --verbose --help --log-bin-index="$(mktemp -u)" 2>/dev/null \
+               | awk '$1 == "'"$conf"'" && /^[^ \t]/ { sub(/^[^ \t]+[ \t]+/, ""); print; exit }'
+       # match "datadir      /some/path with/spaces in/it here" but not "--xyz=abc\n     datadir (xyz)"
 }
 
 # allow the container to be started with `--user`
 if [ "$1" = 'mysqld' -a -z "$wantHelp" -a "$(id -u)" = '0' ]; then
-        _check_config "$@"
-        DATADIR="$(_get_config 'datadir' "$@")"
-        mkdir -p "$DATADIR"
-        find "$DATADIR" \! -user mysql -exec chown mysql '{}' +
-        exec gosu mysql "$BASH_SOURCE" "$@"
+       _check_config "$@"
+       DATADIR="$(_get_config 'datadir' "$@")"
+       mkdir -p "$DATADIR"
+       find "$DATADIR" \! -user mysql -exec chown mysql '{}' +
+       exec gosu mysql "$BASH_SOURCE" "$@"
 fi
 
 if [ "$1" = 'mysqld' -a -z "$wantHelp" ]; then
-        # still need to check config, container may have started with --user
-        _check_config "$@"
-        # Get config
-        DATADIR="$(_get_config 'datadir' "$@")"
-
-        if [ ! -d "$DATADIR/mysql" ]; then
-                file_env 'MYSQL_ROOT_PASSWORD'
-                if [ -z "$MYSQL_ROOT_PASSWORD" -a -z "$MYSQL_ALLOW_EMPTY_PASSWORD" -a -z "$MYSQL_RANDOM_ROOT_PASSWORD" ]; then
-                        echo >&2 'error: database is uninitialized and password option is not specified '
-                        echo >&2 '  You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD'
-                        exit 1
-                fi
-
-                mkdir -p "$DATADIR"
-
-                echo 'Initializing database'
-                # "Other options are passed to mysqld." (so we pass all "mysqld" arguments directly here)
-                mysql_install_db --datadir="$DATADIR" --rpm "${@:2}"
-                echo 'Database initialized'
-
-                SOCKET="$(_get_config 'socket' "$@")"
-                "$@" --skip-networking --socket="${SOCKET}" &
-                pid="$!"
-
-                mysql=( mysql --protocol=socket -uroot -hlocalhost --socket="${SOCKET}" )
-
-                for i in {60..0}; do
-                        if echo 'SELECT 1' | "${mysql[@]}" &> /dev/null; then
-                                break
-                        fi
-                        echo 'MySQL init process in progress...'
-                        sleep 1
-                done
-                if [ "$i" = 0 ]; then
-                        echo >&2 'MySQL init process failed.'
-                        exit 1
-                fi
-
-                if [ -z "$MYSQL_INITDB_SKIP_TZINFO" ]; then
-                        # sed is for https://bugs.mysql.com/bug.php?id=20545
-                        mysql_tzinfo_to_sql /usr/share/zoneinfo | sed 's/Local time zone must be set--see zic manual page/FCTY/' | "${mysql[@]}" mysql
-                fi
-
-                if [ ! -z "$MYSQL_RANDOM_ROOT_PASSWORD" ]; then
-                        export MYSQL_ROOT_PASSWORD="$(pwgen -1 32)"
-                        echo "GENERATED ROOT PASSWORD: $MYSQL_ROOT_PASSWORD"
-                fi
-
-                rootCreate=
-                # default root to listen for connections from anywhere
-                file_env 'MYSQL_ROOT_HOST' '%'
-                if [ ! -z "$MYSQL_ROOT_HOST" -a "$MYSQL_ROOT_HOST" != 'localhost' ]; then
-                        # no, we don't care if read finds a terminating character in this heredoc
-                        # https://unix.stackexchange.com/questions/265149/why-is-set-o-errexit-breaking-this-read-heredoc-expression/265151#265151
-                        read -r -d '' rootCreate       <<-EOSQL || true
-                                               CREATE USER 'root'@'${MYSQL_ROOT_HOST}' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}' ;
-                                               GRANT ALL ON *.* TO 'root'@'${MYSQL_ROOT_HOST}' WITH GRANT OPTION ;
-                                               EOSQL
-                fi
-
-                "${mysql[@]}"  <<-EOSQL
-                                               -- What's done in this file shouldn't be replicated
-                                               --  or products like mysql-fabric won't work
-                                               SET @@SESSION.SQL_LOG_BIN=0;
-
-                                               DELETE FROM mysql.user WHERE user NOT IN ('mysql.sys', 'mysqlxsys', 'root') OR host NOT IN ('localhost') ;
-                                               SET PASSWORD FOR 'root'@'localhost'=PASSWORD('${MYSQL_ROOT_PASSWORD}') ;
-                                               GRANT ALL ON *.* TO 'root'@'localhost' WITH GRANT OPTION ;
-                                               ${rootCreate}
-                                               DROP DATABASE IF EXISTS test ;
-                                               FLUSH PRIVILEGES ;
-                                       EOSQL
-
-                if [ ! -z "$MYSQL_ROOT_PASSWORD" ]; then
-                        mysql+=( -p"${MYSQL_ROOT_PASSWORD}" )
-                fi
-
-                file_env 'MYSQL_DATABASE'
-                if [ "$MYSQL_DATABASE" ]; then
-                        echo "CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ;" | "${mysql[@]}"
-                        mysql+=( "$MYSQL_DATABASE" )
-                fi
-
-                file_env 'MYSQL_USER'
-                file_env 'MYSQL_PASSWORD'
-                if [ "$MYSQL_USER" -a "$MYSQL_PASSWORD" ]; then
-                        echo "CREATE USER '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD' ;" | "${mysql[@]}"
-
-                        if [ "$MYSQL_DATABASE" ]; then
-                                echo "GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;" | "${mysql[@]}"
-                        fi
-                fi
-
-                echo
-                for f in /docker-entrypoint-initdb.d/*; do
-                        case "$f" in
-                                *.sh)     echo "$0: running $f"; . "$f" ;;
-                                *.sql)    echo "$0: running $f"; "${mysql[@]}" < "$f"; echo ;;
-                                *.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${mysql[@]}"; echo ;;
-                                *)        echo "$0: ignoring $f" ;;
-                        esac
-                        echo
-                done
-
-                if ! kill -s TERM "$pid" || ! wait "$pid"; then
-                        echo >&2 'MySQL init process failed.'
-                        exit 1
-                fi
-
-                echo
-                echo 'MySQL init process done. Ready for start up.'
-                echo
-        fi
+       # still need to check config, container may have started with --user
+       _check_config "$@"
+       # Get config
+       DATADIR="$(_get_config 'datadir' "$@")"
+
+       if [ ! -d "$DATADIR/mysql" ]; then
+               file_env 'MYSQL_ROOT_PASSWORD'
+               if [ -z "$MYSQL_ROOT_PASSWORD" -a -z "$MYSQL_ALLOW_EMPTY_PASSWORD" -a -z "$MYSQL_RANDOM_ROOT_PASSWORD" ]; then
+                       echo >&2 'error: database is uninitialized and password option is not specified '
+                       echo >&2 '  You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD'
+                       exit 1
+               fi
+
+               mkdir -p "$DATADIR"
+
+               echo 'Initializing database'
+               installArgs=( --datadir="$DATADIR" --rpm )
+               if { mysql_install_db --help || :; } | grep -q -- '--auth-root-authentication-method'; then
+                       # beginning in 10.4.3, install_db uses "socket" which only allows system user root to connect, switch back to "normal" to allow mysql root without a password
+                       # see https://github.com/MariaDB/server/commit/b9f3f06857ac6f9105dc65caae19782f09b47fb3
+                       # (this flag doesn't exist in 10.0 and below)
+                       installArgs+=( --auth-root-authentication-method=normal )
+               fi
+               # "Other options are passed to mysqld." (so we pass all "mysqld" arguments directly here)
+               mysql_install_db "${installArgs[@]}" "${@:2}"
+               echo 'Database initialized'
+
+               SOCKET="$(_get_config 'socket' "$@")"
+               "$@" --skip-networking --socket="${SOCKET}" &
+               pid="$!"
+
+               mysql=( mysql --protocol=socket -uroot -hlocalhost --socket="${SOCKET}" )
+
+               for i in {60..0}; do
+                       if echo 'SELECT 1' | "${mysql[@]}" &> /dev/null; then
+                               break
+                       fi
+                       echo 'MySQL init process in progress...'
+                       sleep 1
+               done
+               if [ "$i" = 0 ]; then
+                       echo >&2 'MySQL init process failed.'
+                       exit 1
+               fi
+
+               if [ -z "$MYSQL_INITDB_SKIP_TZINFO" ]; then
+                       # sed is for https://bugs.mysql.com/bug.php?id=20545
+                       mysql_tzinfo_to_sql /usr/share/zoneinfo | sed 's/Local time zone must be set--see zic manual page/FCTY/' | "${mysql[@]}" mysql
+               fi
+
+               if [ ! -z "$MYSQL_RANDOM_ROOT_PASSWORD" ]; then
+                       export MYSQL_ROOT_PASSWORD="$(pwgen -1 32)"
+                       echo "GENERATED ROOT PASSWORD: $MYSQL_ROOT_PASSWORD"
+               fi
+
+               rootCreate=
+               # default root to listen for connections from anywhere
+               file_env 'MYSQL_ROOT_HOST' '%'
+               if [ ! -z "$MYSQL_ROOT_HOST" -a "$MYSQL_ROOT_HOST" != 'localhost' ]; then
+                       # no, we don't care if read finds a terminating character in this heredoc
+                       # https://unix.stackexchange.com/questions/265149/why-is-set-o-errexit-breaking-this-read-heredoc-expression/265151#265151
+                       read -r -d '' rootCreate <<-EOSQL || true
+                               CREATE USER 'root'@'${MYSQL_ROOT_HOST}' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}' ;
+                               GRANT ALL ON *.* TO 'root'@'${MYSQL_ROOT_HOST}' WITH GRANT OPTION ;
+                       EOSQL
+               fi
+
+               "${mysql[@]}" <<-EOSQL
+                       -- What's done in this file shouldn't be replicated
+                       --  or products like mysql-fabric won't work
+                       SET @@SESSION.SQL_LOG_BIN=0;
+                       DELETE FROM mysql.user WHERE user NOT IN ('mysql.sys', 'mysqlxsys', 'root') OR host NOT IN ('localhost') ;
+                       SET PASSWORD FOR 'root'@'localhost'=PASSWORD('${MYSQL_ROOT_PASSWORD}') ;
+                       GRANT ALL ON *.* TO 'root'@'localhost' WITH GRANT OPTION ;
+                       ${rootCreate}
+                       DROP DATABASE IF EXISTS test ;
+                       FLUSH PRIVILEGES ;
+               EOSQL
+
+               if [ ! -z "$MYSQL_ROOT_PASSWORD" ]; then
+                       mysql+=( -p"${MYSQL_ROOT_PASSWORD}" )
+               fi
+
+               file_env 'MYSQL_DATABASE'
+               if [ "$MYSQL_DATABASE" ]; then
+                       echo "CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ;" | "${mysql[@]}"
+                       mysql+=( "$MYSQL_DATABASE" )
+               fi
+
+               file_env 'MYSQL_USER'
+               file_env 'MYSQL_PASSWORD'
+               if [ "$MYSQL_USER" -a "$MYSQL_PASSWORD" ]; then
+                       echo "CREATE USER '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD' ;" | "${mysql[@]}"
+
+                       if [ "$MYSQL_DATABASE" ]; then
+                               echo "GRANT ALL ON \`$MYSQL_DATABASE\`.* TO '$MYSQL_USER'@'%' ;" | "${mysql[@]}"
+                       fi
+               fi
+
+               echo
+               for f in /docker-entrypoint-initdb.d/*; do
+                       case "$f" in
+                               *.sh)     echo "$0: running $f"; . "$f" ;;
+                               *.sql)    echo "$0: running $f"; "${mysql[@]}" < "$f"; echo ;;
+                               *.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${mysql[@]}"; echo ;;
+                               *)        echo "$0: ignoring $f" ;;
+                       esac
+                       echo
+               done
+
+               if ! kill -s TERM "$pid" || ! wait "$pid"; then
+                       echo >&2 'MySQL init process failed.'
+                       exit 1
+               fi
+
+               echo
+               echo 'MySQL init process done. Ready for start up.'
+               echo
+       fi
 fi
 
 exec "$@"
\ No newline at end of file
index f58bfe0..1c6a845 100644 (file)
@@ -28,7 +28,7 @@ update fn_app set app_url = 'http://{{.Values.config.portalSdkHostName}}:{{.Valu
 update fn_app set app_url = 'http://{{.Values.config.dmaapBcHostName}}:{{.Values.config.dmaapBcPort}}/ECOMPDBCAPP/dbc#/dmaap', app_rest_endpoint = 'http://dmaap-bc:8989/ECOMPDBCAPP/api/v2' where app_name = 'DMaaP Bus Ctrl';
 --sdc-be => 8443:30204, 8080:30205
 --sdc-fe => 8181:30206, 9443:30207
-update fn_app set app_url = 'http://{{.Values.config.sdcFeHostName}}:{{.Values.config.sdcFePort}}/sdc1/portal', app_rest_endpoint = 'http://sdc-be:8080/api/v3' where app_name = 'SDC';
+update fn_app set app_url = 'https://{{.Values.config.sdcFeHostName}}:{{.Values.config.sdcFePort}}/sdc1/portal', app_rest_endpoint = 'https://sdc-be:8443/api/v3' where app_name = 'SDC';
 --pap => 8443:30219
 update fn_app set app_url = 'https://{{.Values.config.papHostName}}:{{.Values.config.papPort}}/onap/policy', app_rest_endpoint = 'https://pap:8443/onap/api/v3' where app_name = 'Policy';
 --vid => 8080:30200
index e00f0fc..e6896f1 100644 (file)
@@ -24,7 +24,7 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/portal-db:2.5.0
+image: onap/portal-db:2.6.0
 pullPolicy: Always
 
 readinessImage: readiness-check:2.0.0
@@ -36,8 +36,8 @@ config:
   mariadbRootPassword: Aa123456
   #The directory where sql files are found in the projects gerrit repo.
   sqlSourceDirectory: portal/deliveries
-  # sdc frontend assignment for port 8181
-  sdcFePort: "30206"
+  # sdc frontend assignment for port 9443
+  sdcFePort: "30207"
   # application's front end hostname.  Must be resolvable on the client side environment
   sdcFeHostName: "sdc.api.fe.simpledemo.onap.org"
   # policy pap ui assignment for port 8443
@@ -111,7 +111,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: portal/mariadb/data
index f59a16a..736afac 100644 (file)
@@ -52,6 +52,8 @@ spec:
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         command:
           - /start-apache-tomcat.sh
+          - -b
+          - "{{ .Values.global.env.tomcatDir }}"
         ports:
         - containerPort: {{ .Values.service.internalPort }}
         {{- if eq .Values.liveness.enabled true }}
index be5d8ae..4a0124d 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/portal-sdk:2.5.0
+image: onap/portal-sdk:2.6.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 62e095d..37f4294 100644 (file)
@@ -29,7 +29,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/portal-wms:2.5.0
+image: onap/portal-wms:2.6.0
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index f8eccf7..9dbdd7c 100644 (file)
@@ -15,7 +15,7 @@
 
 global:
   env:
-    tomcatDir: "/opt/apache-tomcat-8.0.37"
+    tomcatDir: "/usr/local/tomcat"
   # portal frontend port
   portalPort: "8989"
   portalFEPort: "30225"
index b6b5b0e..1d36d59 160000 (submodule)
@@ -1 +1 @@
-Subproject commit b6b5b0e6f8880e3a922a2fef97e95e5013475228
+Subproject commit 1d36d59796cf69d8bba1d833a7faa2709bef531c
index 2d47f4b..30bd5e1 100644 (file)
@@ -71,7 +71,8 @@ spec:
           livenessProbe:
             httpGet:
               path: /sdc2/rest/version
-              port: {{ .Values.service.internalPort2 }}
+              port: {{ .Values.service.internalPort }}
+              scheme: HTTPS
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
             timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
index b202880..5ba797c 100644 (file)
@@ -28,15 +28,15 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-backend:1.5.1
-backendInitImage: onap/sdc-backend-init:1.5.1
+image: onap/sdc-backend:1.5.2
+backendInitImage: onap/sdc-backend-init:1.5.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
 debugEnabled: false
 
 config:
-  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=4000,server=y,suspend=n -Xmx1536m -Xms1536m"
+  javaOptions: "-Xmx1536m -Xms1536m"
   cassandraSslEnabled: "false"
 
 # default number of instances
@@ -93,4 +93,3 @@ resources:
       cpu: 20m
       memory: 2Gi
   unlimited: {}
-
index 49e5ac0..21b35ce 100644 (file)
@@ -28,8 +28,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-cassandra:1.5.1
-cassandraInitImage: onap/sdc-cassandra-init:1.5.1
+image: onap/sdc-cassandra:1.5.2
+cassandraInitImage: onap/sdc-cassandra-init:1.5.2
 
 pullPolicy: Always
 
@@ -85,7 +85,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: /sdc/sdc-cs/CS
index d20a1d1..26b4f4e 100644 (file)
@@ -70,14 +70,15 @@ spec:
           {{ if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end }}
           readinessProbe:
             httpGet:
               path: /dcae/conf/composition
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
+              scheme: HTTPS
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           env:
@@ -91,12 +92,12 @@ spec:
                 fieldPath: status.podIP
           volumeMounts:
           - name: {{ include "common.fullname" . }}-environments
-            mountPath: /var/opt/dcae-be/chef-solo/environments/
+            mountPath: /root/chef-solo/environments/
           - name: {{ include "common.fullname" . }}-localtime
             mountPath: /etc/localtime
             readOnly: true
           - name: {{ include "common.fullname" . }}-logs
-            mountPath: /var/log/onap
+            mountPath: /var/lib/jetty/logs
           - name: {{ include "common.fullname" . }}-logback
             mountPath: /tmp/logback.xml
             subPath: logback.xml
index 0d7cabc..77e17de 100644 (file)
@@ -52,7 +52,7 @@ spec:
         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
         volumeMounts:
         - name: {{ include "common.fullname" . }}-environments
-          mountPath: /var/opt/dcae-tools/chef-solo/environments
+          mountPath: /root/chef-solo/environments
         env:
         - name: ENVNAME
           value: {{ .Values.global.env.name }}
index 0e4d4fb..77544a7 100644 (file)
@@ -27,9 +27,9 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dcae-be:1.3.1
+image: onap/dcae-be:1.3.2
 pullPolicy: Always
-backendInitImage: onap/dcae-tools:1.3.1
+backendInitImage: onap/dcae-tools:1.3.2
 
 # flag to enable debugging - application support required
 debugEnabled: false
index f91335e..b736ae1 100644 (file)
@@ -69,14 +69,15 @@ spec:
           {{ if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end }}
           readinessProbe:
             httpGet:
               path: /dcae/healthCheckOld
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
+              scheme: HTTPS
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           env:
@@ -90,12 +91,12 @@ spec:
                 fieldPath: status.podIP
           volumeMounts:
           - name: {{ include "common.fullname" . }}-environments
-            mountPath: /var/opt/dcae-dt/chef-solo/environments/
+            mountPath: /root/chef-solo/environments/
           - name: {{ include "common.fullname" . }}-localtime
             mountPath: /etc/localtime
             readOnly: true
           - name: {{ include "common.fullname" . }}-logs
-            mountPath: /var/log/onap
+            mountPath: /var/lib/jetty/logs
           - name: {{ include "common.fullname" . }}-logback
             mountPath: /tmp/logback.xml
             subPath: logback.xml
index f586f27..7a1fffc 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dcae-dt:1.3.1
+image: onap/dcae-dt:1.3.2
 pullPolicy: IfNotPresent
 config:
   javaOptions: -XX:MaxPermSize=256m -Xmx1024m -Dconfig.home=config -Dlog.home=/var/lib/jetty/logs/ -Dlogging.config=config/dcae-dt/logback-spring.xml
index c13942f..08bbd4d 100644 (file)
@@ -69,14 +69,15 @@ spec:
           {{ if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end }}
           readinessProbe:
             httpGet:
               path: /dcaed/healthCheck
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
+              scheme: HTTPS
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           env:
@@ -90,12 +91,12 @@ spec:
                 fieldPath: status.podIP
           volumeMounts:
           - name: {{ include "common.fullname" . }}-environments
-            mountPath: /var/opt/dcae-fe/chef-solo/environments/
+            mountPath: /root/chef-solo/environments/
           - name: {{ include "common.fullname" . }}-localtime
             mountPath: /etc/localtime
             readOnly: true
           - name: {{ include "common.fullname" . }}-logs
-            mountPath: /var/log/onap
+            mountPath: /var/lib/jetty/logs
           - name: {{ include "common.fullname" . }}-logback
             mountPath: /tmp/logback.xml
             subPath: logback.xml
index b6ea577..f38ef30 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/dcae-fe:1.3.1
+image: onap/dcae-fe:1.3.2
 pullPolicy: Always
 config:
   javaOptions: -XX:MaxPermSize=256m -Xmx1024m -Dconfig.home=config -Dlog.home=/var/lib/jetty/logs/ -Dlogging.config=config/dcae-fe/logback-spring.xml
index c6cc67e..7723885 100644 (file)
@@ -56,7 +56,7 @@ spec:
           {{ if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end }}
@@ -77,7 +77,7 @@ spec:
                 fieldPath: status.podIP
           volumeMounts:
           - name: {{ include "common.fullname" . }}-environments
-            mountPath: /var/opt/dcae-be/chef-solo/environments/
+            mountPath: /root/chef-solo/environments/
           - name: {{ include "common.fullname" . }}-localtime
             mountPath: /etc/localtime
             readOnly: true
index 4c0a6cc..adb0595 100644 (file)
@@ -31,8 +31,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-elasticsearch:1.5.1
-elasticInitImage: onap/sdc-init-elasticsearch:1.5.1
+image: onap/sdc-elasticsearch:1.5.2
+elasticInitImage: onap/sdc-init-elasticsearch:1.5.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -89,7 +89,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: /sdc/sdc-es/ES
index 46ba241..62dffd6 100644 (file)
@@ -70,13 +70,13 @@ spec:
           {{ if eq .Values.liveness.enabled true }}
           livenessProbe:
             tcpSocket:
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end }}
           readinessProbe:
             tcpSocket:
-              port: {{ .Values.service.internalPort }}
+              port: {{ .Values.service.internalPort2 }}
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           resources:
index fba4c56..6831555 100644 (file)
@@ -28,16 +28,16 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-frontend:1.5.1
+image: onap/sdc-frontend:1.5.2
 pullPolicy: Always
 
 config:
-  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=6000,server=y,suspend=n -Xmx256m -Xms256m"
+  javaOptions: "-Xmx256m -Xms256m"
   plugins:
-    dcae_discovery_url: "http://sdc-dcae-fe:8183/dcaed/#/home"
-    dcae_source_url: "http://sdc.dcae.plugin.simpledemo.onap.org:30263/dcaed/#/home"
-    dcae_dt_discovery_url: "http://sdc-dcae-dt:8186/dcae/#/dcae/home"
-    dcae_dt_source_url: "http://sdc.dcae.plugin.simpledemo.onap.org:30265/dcae/#/dcae/home"
+    dcae_discovery_url: "https://sdc-dcae-fe:9444/dcaed/#/home"
+    dcae_source_url: "https://sdc.dcae.plugin.simpledemo.onap.org:30264/dcaed/#/home"
+    dcae_dt_discovery_url: "https://sdc-dcae-dt:9446/dcae/#/dcae/home"
+    dcae_dt_source_url: "https://sdc.dcae.plugin.simpledemo.onap.org:30266/dcae/#/dcae/home"
     workflow_discovery_url: "http://sdc-wfd-fe:8080/workflows"
     workflow_source_url: "https://sdc.workflow.plugin.simpledemo.onap.org:30431/workflows/"
 
index e120365..c2859e2 100644 (file)
@@ -28,7 +28,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-kibana:1.5.1
+image: onap/sdc-kibana:1.5.2
 pullPolicy: Always
 
 config:
index 32b8cdb..ce04d48 100644 (file)
@@ -28,15 +28,15 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdc-onboard-backend:1.5.1
-onboardingInitImage: onap/sdc-onboard-cassandra-init:1.5.1
+image: onap/sdc-onboard-backend:1.5.2
+onboardingInitImage: onap/sdc-onboard-cassandra-init:1.5.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
 debugEnabled: false
 
 config:
-  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=4001,server=y,suspend=n -Xmx1g -Xms1g"
+  javaOptions: "-Xmx1g -Xms1g"
   cassandraSslEnabled: "false"
 
 # default number of instances
@@ -85,7 +85,7 @@ persistence:
   ##   GKE, AWS & OpenStack)
   ##
   # storageClass: "-"
-  accessMode: ReadWriteMany
+  accessMode: ReadWriteOnce
   size: 2Gi
   mountPath: /dockerdata-nfs
   mountSubPath: /sdc/sdc-cs/CS
index 73eea4a..0a250e4 100644 (file)
@@ -28,8 +28,8 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/workflow-backend:1.4.1
-configInitImage: onap/workflow-init:1.4.1
+image: onap/workflow-backend:1.5.1
+configInitImage: onap/workflow-init:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
@@ -39,7 +39,7 @@ initJob:
   enabled: true
 
 config:
-  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=7001,server=y,suspend=n -Xmx1536m -Xms1536m"
+  javaOptions: "-Xmx1536m -Xms1536m"
   cassandraAuthenticationEnabled: true
   cassandraThriftClientPort: 9160
   cassandraClientPort: 9042
index 639c811..91cdead 100644 (file)
@@ -28,14 +28,14 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/workflow-frontend:1.4.1
+image: onap/workflow-frontend:1.5.1
 pullPolicy: Always
 
 # flag to enable debugging - application support required
 debugEnabled: false
 
 config:
-  javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=7000,server=y,suspend=n -Xmx256m -Xms256m"
+  javaOptions: "-Xmx256m -Xms256m"
   backendServerURL: "http://sdc-wfd-be:8080"
   isHttpsEnabled: true
 
index 577eb96..b642e85 100755 (executable)
@@ -8,7 +8,7 @@
     "chef_type": "environment",
 
     "default_attributes": {
-        "disableHttp": false,
+        "disableHttp": true,
         "CS_VIP": "{{.Values.global.cassandra.serviceName}}.{{include "common.namespace" .}}",
         "BE_VIP": "sdc-be.{{include "common.namespace" .}}",
         "ONBOARDING_BE_VIP": "sdc-onboarding-be.{{include "common.namespace" .}}",
index b921564..759bea3 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdnc-dmaap-listener-image:1.6.2
+image: onap/sdnc-dmaap-listener-image:1.7.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index df256a3..c0be77b 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdnc-ansible-server-image:1.6.2
+image: onap/sdnc-ansible-server-image:1.7.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index cf6eaf9..cce8835 100644 (file)
@@ -27,13 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/admportal-sdnc-image:1.6.2
-pullPolicy: Always
-
-# flag to enable debugging - application support required
-debugEnabled: false
-
-# application configuration
+image: onap/admportal-sdnc-image:1.7.2
 config:
   dbRootPassword: secretpassword
   dbSdnctlPassword: gamma
@@ -48,7 +42,7 @@ config:
     internalPort: 3306
 
 # default number of instances
-replicaCount: 0
+replicaCount: 1
 
 nodeSelector: {}
 
@@ -70,8 +64,8 @@ service:
   type: NodePort
   name: sdnc-portal
   portName: sdnc-portal
-  internalPort: 8843
-  externalPort: 8843
+  internalPort: 8443
+  externalPort: 8443
   nodePort: "01"
 
 ingress:
index f0c8ab5..d09763d 100644 (file)
@@ -27,7 +27,7 @@ global:
 #################################################################
 # application image
 repository: nexus3.onap.org:10001
-image: onap/sdnc-ueb-listener-image:1.6.2
+image: onap/sdnc-ueb-listener-image:1.7.2
 pullPolicy: Always
 
 # flag to enable debugging - application support required
index 913fed1..c3b757a 100644 (file)
@@ -16,10 +16,6 @@ dependencies:
   - name: common
     version: ~5.x-0
     repository: '@local'
-  - name: cds
-    version: ~5.x-0
-    repository: '@local'
-    condition: cds.enabled
   - name: network-name-gen
     version: ~5.x-0
     repository: '@local'
diff --git a/kubernetes/sdnc/resources/config/conf/akka.conf b/kubernetes/sdnc/resources/config/conf/akka.conf
new file mode 100644 (file)
index 0000000..8440a9d
--- /dev/null
@@ -0,0 +1,80 @@
+
+odl-cluster-data {
+  akka {
+    remote {
+      artery {
+        enabled = off
+        canonical.hostname = "127.0.0.1"
+        canonical.port = 2550
+      }
+      netty.tcp {
+        hostname = "127.0.0.1"
+        port = 2550
+      }
+
+      use-passive-connections = off
+      # when under load we might trip a false positive on the failure detector
+      # transport-failure-detector {
+      # heartbeat-interval = 4 s
+      # acceptable-heartbeat-pause = 16s
+      # }
+    }
+
+    actor {
+      debug {
+        autoreceive = on
+        lifecycle = on
+        unhandled = on
+        fsm = on
+        event-stream = on
+      }
+    }
+
+    cluster {
+      # Remove ".tcp" when using artery.
+      seed-nodes = ["akka.tcp://opendaylight-cluster-data@127.0.0.1:2550"]
+
+      seed-node-timeout = {{.Values.config.odl.akka.seedNodeTimeout}}
+
+      roles = ["member-1"]
+
+    }
+
+    persistence {
+      # By default the snapshots/journal directories live in KARAF_HOME. You can choose to put it somewhere else by
+      # modifying the following two properties. The directory location specified may be a relative or absolute path.
+      # The relative path is always relative to KARAF_HOME.
+
+      # snapshot-store.local.dir = "target/snapshots"
+      # journal.leveldb.dir = "target/journal"
+
+      journal {
+        leveldb {
+            # Set native = off to use a Java-only implementation of leveldb.
+            # Note that the Java-only version is not currently considered by Akka to be production quality.
+
+            # native = off
+        }
+
+        journal-plugin-fallback {
+          circuit-breaker {
+              max-failures = {{.Values.config.odl.akka.circuitBreaker.maxFailures}}
+              call-timeout = {{.Values.config.odl.akka.circuitBreaker.callTimeout}}
+              reset-timeout = {{.Values.config.odl.akka.circuitBreaker.resetTimeout}}
+          }
+          recovery-event-timeout = {{.Values.config.odl.akka.recoveryEventTimeout}}
+        }
+
+        snapshot-store-plugin-fallback {
+          circuit-breaker {
+            max-failures = {{.Values.config.odl.akka.circuitBreaker.maxFailures}}
+            call-timeout = {{.Values.config.odl.akka.circuitBreaker.callTimeout}}
+            reset-timeout = {{.Values.config.odl.akka.circuitBreaker.resetTimeout}}
+          }
+          recovery-event-timeout = {{.Values.config.odl.akka.recoveryEventTimeout}}
+        }
+      }
+    }
+  }
+}
+
diff --git a/kubernetes/sdnc/resources/config/conf/org.opendaylight.controller.cluster.datastore.cfg b/kubernetes/sdnc/resources/config/conf/org.opendaylight.controller.cluster.datastore.cfg
new file mode 100644 (file)
index 0000000..29dd0e5
--- /dev/null
@@ -0,0 +1,107 @@
+# This file specifies property settings for the clustered data store to control its behavior. A
+# property may be applied to every data store type ("config" and "operational") or can be customized
+# differently for each data store type by prefixing the data store type + '.'. For example, specifying
+# the "shard-election-timeout-factor" property would be applied to both data stores whereas specifying
+# "operational.shard-election-timeout-factor" would only apply to the "operational" data store. Similarly,
+# specifying "config.shard-election-timeout-factor" would only apply to the "config" data store.
+
+# The multiplication factor to be used to determine shard election timeout. The shard election timeout
+# is determined by multiplying shardHeartbeatIntervalInMillis with the shardElectionTimeoutFactor.
+shard-election-timeout-factor=20
+
+# The interval at which a shard will send a heart beat message to its remote shard.
+#shard-heartbeat-interval-in-millis=500
+
+# The amount by which to divide election timeout in case of a candidate. This serves as a counter-balance
+# to shard-election-timeout-factor. The default value is 1, i.e. election timeout is the same in all
+# situations.
+#shard-candidate-election-timeout-divisor=1
+
+# The maximum amount of time to wait for a shard to elect a leader before failing an operation (eg transaction create).
+#shard-leader-election-timeout-in-seconds=30
+
+# Enable or disable data persistence.
+#persistent=true
+
+# Disable persistence for the operational data store by default.
+operational.persistent=false
+
+# The maximum amount of time a shard transaction can be idle without receiving any messages before it self-destructs.
+#shard-transaction-idle-timeout-in-minutes=10
+
+# The maximum amount of time a shard transaction three-phase commit can be idle without receiving the
+# next messages before it aborts the transaction.
+#shard-transaction-commit-timeout-in-seconds=30
+
+# The maximum allowed capacity for each shard's transaction commit queue.
+#shard-transaction-commit-queue-capacity=20000
+
+# The maximum amount of time to wait for a shard to initialize from persistence on startup before
+# failing an operation (eg transaction create and change listener registration).
+#shard-initialization-timeout-in-seconds=300
+
+# The minimum number of entries to be present in the in-memory journal log before a snapshot is to be taken.
+#shard-snapshot-batch-count=20000
+
+# The percentage of Runtime.totalMemory() used by the in-memory journal log before a snapshot is to be taken.
+#shard-snapshot-data-threshold-percentage=12
+
+# The interval at which the leader of the shard will check if its majority followers are active and
+# term itself as isolated.
+#shard-isolated-leader-check-interval-in-millis=5000
+
+# The number of transaction modification operations (put, merge, delete) to batch before sending to the
+# shard transaction actor. Batching improves performance as less modifications messages are sent to the
+# actor and thus lessens the chance that the transaction actor's mailbox queue could get full.
+#shard-batched-modification-count=1000
+
+# The maximum amount of time for akka operations (remote or local) to complete before failing.
+#operation-timeout-in-seconds=5
+
+# The initial number of transactions per second that are allowed before the data store should begin
+# applying back pressure. This number is only used as an initial guidance, subsequently the datastore
+# measures the latency for a commit and auto-adjusts the rate limit.
+#transaction-creation-initial-rate-limit=100
+
+# The maximum thread pool size for each shard's data store data change notification executor.
+#max-shard-data-change-executor-pool-size=20
+
+# The maximum queue size for each shard's data store data change notification executor.
+#max-shard-data-change-executor-queue-size=1000
+
+# The maximum queue size for each shard's data store data change listener.
+#max-shard-data-change-listener-queue-size=1000
+
+# The maximum queue size for each shard's data store executor.
+#max-shard-data-store-executor-queue-size=5000
+
+# A fully qualified java class name. The class should implement
+# org.opendaylight.controller.cluster.raft.policy.RaftPolicy. This java class should be
+# accessible to the distributed data store OSGi module so that it can be dynamically loaded via
+# reflection. For now let's assume that these classes to customize raft behaviors should be
+# present in the distributed data store module itself. If this property is set to a class which
+# cannot be found then the default raft policy will be applied
+#custom-raft-policy-implementation=
+
+# When fragmenting messages thru the akka remoting framework, this is the maximum size in bytes
+# for a message slice.
+#maximum-message-slice-size=20480000
+
+# Enable tell-based protocol between frontend (applications) and backend (shards). Using this protocol
+# should avoid AskTimeoutExceptions seen under heavy load. Defaults to false (use ask-based protocol).
+#use-tell-based-protocol=true
+
+# Tune the maximum number of entries a follower is allowed to lag behind the leader before it is
+# considered out-of-sync. This flag may require tuning in face of a large number of small transactions.
+#sync-index-threshold=10
+
+# Record new transaction allocation stack trace, useful for debugging.  This makes the log include
+# the stack trace of the creator of the Tx when there is an exception when the transaction is submitted 
+# (e.g. for a failed validation).  Defaults to false due to performance impact.
+#transaction-debug-context-enabled=true
+persistent-actor-restart-min-backoff-in-seconds={{.Values.config.odl.datastore.persistentActorRestartMinBackoffInSeconds}}
+persistent-actor-restart-max-backoff-in-seconds={{.Values.config.odl.datastore.persistentActorRestartMaxBackoffInSeconds}}
+persistent-actor-restart-reset-backoff-in-seconds={{.Values.config.odl.datastore.persistentActorRestartResetBackoffInSeconds}}
+shard-transaction-commit-timeout-in-seconds={{.Values.config.odl.datastore.shardTransactionCommitTimeoutInSeconds}}
+shard-isolated-leader-check-interval-in-millis={{.Values.config.odl.datastore.shardIsolatedLeaderCheckIntervalInMillis}}
+operation-timeout-in-seconds={{.Values.config.odl.datastore.operationTimeoutInSeconds}}
diff --git a/kubernetes/sdnc/resources/config/conf/setenv b/kubernetes/sdnc/resources/config/conf/setenv
new file mode 100644 (file)
index 0000000..7476e68
--- /dev/null
@@ -0,0 +1,61 @@
+#!/bin/sh
+#
+#    Licensed to the Apache Software Foundation (ASF) under one or more
+#    contributor license agreements.  See the NOTICE file distributed with
+#    this work for additional information regarding copyright ownership.
+#    The ASF licenses this file to You 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.
+#
+
+#
+# handle specific scripts; the SCRIPT_NAME is exactly the name of the Karaf
+# script: client, instance, shell, start, status, stop, karaf
+#
+# if [ "${KARAF_SCRIPT}" == "SCRIPT_NAME" ]; then
+#   Actions go here...
+# fi
+
+#
+# general settings which should be applied for all scripts go here; please keep
+# in mind that it is possible that scripts might be executed more than once, e.g.
+# in example of the start script where the start script is executed first and the
+# karaf script afterwards.
+#
+
+#
+# The following section shows the possible configuration options for the default 
+# karaf scripts
+#
+# export JAVA_HOME # Location of Java installation
+# export JAVA_MIN_MEM # Minimum memory for the JVM
+# export JAVA_MAX_MEM # Maximum memory for the JVM
+# export JAVA_PERM_MEM # Minimum perm memory for the JVM
+# export JAVA_MAX_PERM_MEM # Maximum perm memory for the JVM
+# export EXTRA_JAVA_OPTS # Additional JVM options
+# export KARAF_HOME # Karaf home folder
+# export KARAF_DATA # Karaf data folder
+# export KARAF_BASE # Karaf base folder
+# export KARAF_ETC  # Karaf etc  folder
+# export KARAF_SYSTEM_OPTS # First citizen Karaf options
+# export KARAF_OPTS # Additional available Karaf options
+# export KARAF_DEBUG # Enable debug mode
+# export KARAF_REDIRECT # Enable/set the std/err redirection when using bin/start
+# export KARAF_NOROOT # Prevent execution as root if set to true
+if [ "x$JAVA_MAX_MEM" = "x" ]; then
+    export JAVA_MAX_MEM="2048m"
+fi
+
+EXTRA_JAVA_OPTS: "-XX:+UseG1GC -XX:MaxGCPauseMillis={{.Values.config.odl.javaOptions.maxGCPauseMillis}} \
+ -XX:ParallelGCThreads={{.Values.config.odl.javaOptions.parallelGCThreads}} -XX:+ParallelRefProcEnabled \
+ -XX:+UseStringDeduplication -XX:+PrintGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails \
+ -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation \
+ -XX:NumberOfGCLogFiles={{.Values.config.odl.javaOptions.numberGGLogFiles}} -Xloggc:/var/log/onap/sdnc/gc-%t.log"
diff --git a/kubernetes/sdnc/resources/config/overrides/image-versions.yaml b/kubernetes/sdnc/resources/config/overrides/image-versions.yaml
deleted file mode 100644 (file)
index fa4d8d2..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-sdnc:
-  image: onap/sdnc-image:1.6.1
-  sdnc-ansible-server:
-    image: onap/sdnc-ansible-server-image:1.6.1
-  dmaap-listener:
-    image: onap/sdnc-dmaap-listener-image:1.6.1
-  sdnc-portal:
-    image: onap/admportal-sdnc-image:1.6.1
-  ueb-listener:
-    image: onap/sdnc-ueb-listener-image:1.6.1
-cds:
-  cds-command-executor:
-    image: onap/ccsdk-commandexecutor:0.5.1
-  cds-blueprints-processor:
-    image: onap/ccsdk-blueprintsprocessor:0.5.1
-  cds-ui:
-    image: onap/ccsdk-cds-ui-server:0.5.1
-  cds-controller-blueprints:
-    image: onap/ccsdk-controllerblueprints:0.5.1
-  cds-sdc-listener:
-    image: onap/ccsdk-sdclistener:0.5.1
-common:
-  dgbuilder:
-    image: onap/ccsdk-dgbuilder-image:0.5.1
-
diff --git a/kubernetes/sdnc/resources/config/overrides/sdnc-versions.yaml b/kubernetes/sdnc/resources/config/overrides/sdnc-versions.yaml
new file mode 100644 (file)
index 0000000..c664860
--- /dev/null
@@ -0,0 +1,21 @@
+sdnc:
+  image: onap/sdnc-image:1.7.0
+  sdnc-ansible-server:
+    image: onap/sdnc-ansible-server-image:1.7.0
+  dmaap-listener:
+    image: onap/sdnc-dmaap-listener-image:1.7.0
+  sdnc-portal:
+    image: onap/admportal-sdnc-image:1.7.0
+  ueb-listener:
+    image: onap/sdnc-ueb-listener-image:1.7.0
+cds:
+  cds-command-executor:
+    image: onap/ccsdk-commandexecutor:0.6.0
+  cds-blueprints-processor:
+    image: onap/ccsdk-blueprintsprocessor:0.6.0
+  cds-ui:
+    image: onap/ccsdk-cds-ui-server:0.6.0
+  cds-controller-blueprints:
+    image: onap/ccsdk-controllerblueprints:0.6.0
+  cds-sdc-listener:
+    image: onap/ccsdk-sdclistener:0.6.0
index d60319f..e3ac50f 100644 (file)
@@ -145,6 +145,15 @@ spec:
             name: logs
           - mountPath: {{ .Values.certpersistence.certPath }}
             name: {{ include "common.fullname" . }}-certs
+          - mountPath: {{ .Values.config.odl.salConfigDir }}/{{ .Values.config.odl.salConfigVersion}}/sal-clustering-config-{{ .Values.config.odl.salConfigVersion}}-akkaconf.xml
+            name: properties
+            subPath: akka.conf
+          - mountPath: {{ .Values.config.odl.etcDir }}/org.opendaylight.controller.cluster.datastore.cfg
+            name: properties
+            subPath: org.opendaylight.controller.cluster.datastore.cfg
+          - mountPath: {{ .Values.config.odl.binDir }}/setenv
+            name: properties
+            subPath: setenv
           resources:
 {{ include "common.resources" . | indent 12 }}
         {{- if .Values.nodeSelector }}
index 76608d7..f5d4871 100644 (file)
@@ -32,7 +32,7 @@ global:
 # application images
 repository: nexus3.onap.org:10001
 pullPolicy: Always
-image: onap/sdnc-image:1.6.2
+image: onap/sdnc-image:1.7.2
 
 
 # flag to enable debugging - application support required
@@ -66,6 +66,32 @@ config:
   ansiblePort: 8000
   javaHome: /usr/lib/jvm/java-1.8-openjdk
 
+  odl:
+    etcDir: /opt/opendaylight/etc
+    binDir: /opt/opendaylight/bin
+    salConfigDir: /opt/opendaylight/system/org/opendaylight/controller/sal-clustering-config
+    salConfigVersion: 1.8.2
+    akka:
+      seedNodeTimeout: 15s
+      circuitBreaker:
+        maxFailures: 10
+        callTimeout: 90s
+        resetTimeout: 30s
+      recoveryEventTimeout: 90s
+    datastore:
+      persistentActorRestartMinBackoffInSeconds: 10
+      persistentActorRestartMaxBackoffInSeconds: 40
+      persistentActorRestartResetBackoffInSeconds: 20
+      shardTransactionCommitTimeoutInSeconds: 120
+      shardIsolatedLeaderCheckIntervalInMillis: 30000
+      operationTimeoutInSeconds: 120
+    javaOptions:
+      maxGCPauseMillis: 100
+      parallelGCThreads : 3
+      numberGGLogFiles: 10
+
+
+
   #local Mariadb-galera cluster
   localDBCluster: false
 
@@ -77,7 +103,7 @@ config:
 
 # dependency / sub-chart configuration
 cds:
-  enabled: true
+  enabled: false
 
 dmaap-listener:
   nameOverride: sdnc-dmaap-listener
index 35b86a3..d1f23e9 100755 (executable)
@@ -93,7 +93,7 @@ mso:
         endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/rest/v1/vnfs
     volume-groups:
       rest:
-        endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}g:8087/services/rest/v1/volume-groups
+        endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/rest/v1/volume-groups
     vnf-async:
       endpoint: http://so-openstack-adapter.{{ include "common.namespace" . }}:8087/services/VnfAsync
     vfc:
@@ -323,6 +323,14 @@ server:
   tomcat:
     max-threads: 50
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/camundabpmn
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: bpmn-pool
+      registerMbeans: true
   security:
     usercredentials:
     -
index beda240..89b0eb4 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/bpmn-infra:1.5.0
+image: onap/so/bpmn-infra:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index c59949c..b643c4a 100755 (executable)
@@ -26,6 +26,14 @@ mso:
   db:
     auth: Basic YnBlbDpwYXNzd29yZDEk
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: true
   security:
     usercredentials:
     -
index ecfeec2..57b7fe5 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/catalog-db-adapter:1.5.0
+image: onap/so/catalog-db-adapter:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index 7e0be43..7539e47 100644 (file)
@@ -32,7 +32,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/so-monitoring:1.5.0
+image: onap/so/so-monitoring:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
@@ -85,4 +85,3 @@ ingress:
 nodeSelector: {}
 tolerations: []
 affinity: {}
-
index 62351b8..4bf20a6 100755 (executable)
@@ -17,6 +17,14 @@ aai:
 server:
   port: {{ index .Values.containerPort }}
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: false
   security:
     usercredentials:
     -
index 965a306..c570f5e 100755 (executable)
@@ -26,7 +26,7 @@ global:
 #################################################################
 # Application configuration defaults.
 #################################################################
-image: onap/so/openstack-adapter:1.5.0
+image: onap/so/openstack-adapter:1.5.2
 pullPolicy: Always
 repository: nexus3.onap.org:10001
 
index 7a326d3..6d746ed 100755 (executable)
@@ -25,6 +25,14 @@ mso:
       auth: Basic YnBlbDpwYXNzd29yZDEk
       endpoint: http://so-request-db-adapter.{{ include "common.namespace" . }}:8083
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: reqdb-pool
+      registerMbeans: true
   security:
     usercredentials:
     -
index 5c0329e..028d123 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/request-db-adapter:1.5.0
+image: onap/so/request-db-adapter:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index f74ef8f..44544f4 100755 (executable)
@@ -16,6 +16,14 @@ aai:
 server:
   port: {{ index .Values.containerPort }}
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: false
   security:
     usercredentials:
     -
@@ -28,10 +36,13 @@ spring:
       role: ACTUATOR
 request:
   datasource:
-    jdbc-url: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
-    username: ${DB_USERNAME}
-    password: ${DB_PASSWORD}
-    driver-class-name: org.mariadb.jdbc.Driver
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: reqdb-pool
+      registerMbeans: false
 mso:
   msoKey: 07a7159d3bf51a0e53be7a8f89699be7
   logPath: ./logs/sdc
index 2354edf..1259435 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/sdc-controller:1.5.0
+image: onap/so/sdc-controller:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index 0969452..e48c9c9 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/sdnc-adapter:1.5.0
+image: onap/so/sdnc-adapter:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index 72a2f61..dee73ab 100755 (executable)
@@ -15,10 +15,13 @@ logging:
   path: logs
 spring:
   datasource:
-     driver-class-name: org.mariadb.jdbc.Driver
-     url: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
-     username: ${DB_USERNAME}
-     password: ${DB_PASSWORD}
+    hikari:
+       driver-class-name: org.mariadb.jdbc.Driver
+       jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+       username: ${DB_USERNAME}
+       password: ${DB_PASSWORD}
+       pool-name: reqdb-pool
+       registerMbeans: true
   security:
     usercredentials:
     - username: bpel
index e69ceec..1663fb3 100755 (executable)
@@ -27,7 +27,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/vfc-adapter:1.5.0
+image: onap/so/vfc-adapter:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index a7051c5..d29bff2 100755 (executable)
@@ -26,7 +26,7 @@ global:
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/vnfm-adapter:1.5.0
+image: onap/so/vnfm-adapter:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index 55f7672..1aeb50d 100755 (executable)
@@ -69,6 +69,14 @@ mso:
         uri: http://so-catalog-db-adapter:8082
 
 spring:
+  datasource:
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/catalogdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: catdb-pool
+      registerMbeans: true
   jersey:
     type: filter
   security:
@@ -99,10 +107,13 @@ spring:
       role: ACTUATOR
 request:
   datasource:
-    jdbc-url: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
-    username: ${DB_USERNAME}
-    password: ${DB_PASSWORD}
-    driver-class-name: org.mariadb.jdbc.Driver
+    hikari:
+      jdbcUrl: jdbc:mariadb://${DB_HOST}:${DB_PORT}/requestdb
+      username: ${DB_USERNAME}
+      password: ${DB_PASSWORD}
+      driver-class-name: org.mariadb.jdbc.Driver
+      pool-name: reqdb-pool
+      registerMbeans: true
 org:
   onap:
     so:
index 9493865..ae126fa 100755 (executable)
@@ -25,7 +25,7 @@ global:
     serviceName: mariadb-galera
     servicePort: "3306"
     mariadbRootPassword: secretpassword
-    #This flag allows SO to instantiate its own mariadb-galera cluster, 
+    #This flag allows SO to instantiate its own mariadb-galera cluster,
     #serviceName and nameOverride should be so-mariadb-galera if this flag is enabled
     localCluster: false
   persistence:
@@ -38,12 +38,12 @@ global:
     dbPort: 3306
     dbUser: root
     dbPassword: secretpassword
-    
+
 #################################################################
 # Application configuration defaults.
 #################################################################
 repository: nexus3.onap.org:10001
-image: onap/so/api-handler-infra:1.5.0
+image: onap/so/api-handler-infra:1.5.2
 pullPolicy: Always
 
 replicaCount: 1
index a4e821e..cd24150 100644 (file)
@@ -72,6 +72,8 @@ spec:
               value: "{{ .Values.config.asdcclientrestauth }}"
             - name: ASDC_CLIENT_REST_PORT
               value: "{{ .Values.config.asdcclientrestport }}"
+            - name: ASDC_CLIENT_REST_PROTOCOL
+              value: "https"
             - name: VID_AAI_URL
               value: https://aai.{{ include "common.namespace" . }}:{{ .Values.config.vidaaiport }}
             - name: VID_ECOMP_SHARED_CONTEXT_REST_URL
index 346577c..9c44565 100644 (file)
@@ -27,7 +27,7 @@ subChartsOnly:
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/vid:5.0.0
+image: onap/vid:5.0.3
 pullPolicy: Always
 
 # mariadb image for initializing
@@ -37,7 +37,7 @@ mariadb_image: library/mariadb:10
 config:
   vidmysqlpassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
   asdcclientrestauth: "Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
-  asdcclientrestport: "8080"
+  asdcclientrestport: "8443"
   vidaaiport: "8443"
   onapport: "30225"
   onapportrest: "8443"