diff options
Diffstat (limited to 'kubernetes')
32 files changed, 349 insertions, 322 deletions
diff --git a/kubernetes/LICENSE b/kubernetes/LICENSE index d1e69ec497..c493ac9d11 100644 --- a/kubernetes/LICENSE +++ b/kubernetes/LICENSE @@ -1,8 +1,8 @@ ============LICENSE_START========================================== =================================================================== - Copyright © 2017 Amdocs - Copyright © 2017 Bell Canada + Copyright © 2017-2019 Amdocs + Copyright © 2017-2019 Bell Canada All rights reserved. =================================================================== Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/kubernetes/common/controller-blueprints/values.yaml b/kubernetes/common/controller-blueprints/values.yaml index bcca317dee..4243210d20 100644 --- a/kubernetes/common/controller-blueprints/values.yaml +++ b/kubernetes/common/controller-blueprints/values.yaml @@ -38,7 +38,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/ccsdk-controllerblueprints:0.3.2 +image: onap/ccsdk-controllerblueprints:0.4-STAGING-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml b/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml index cdea9e3da2..449949992f 100644 --- a/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml +++ b/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml @@ -137,3 +137,5 @@ spec: app: {{ include "common.name" . }} release: "{{ .Release.Name }}" {{- end }} + imagePullSecrets: + - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml b/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml index 5215ca811d..92888ea20f 100755 --- a/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml +++ b/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml @@ -152,4 +152,6 @@ spec: name: {{ include "common.fullname" . }}-initializers-configmap - name: {{ include "common.fullname" . }}-configuration-config configMap: - name: {{ include "common.fullname" . }}-configuration-configmap
\ No newline at end of file + name: {{ include "common.fullname" . }}-configuration-configmap + imagePullSecrets: + - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml index 84887587ae..93fabe1292 100644 --- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml +++ b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml @@ -110,5 +110,5 @@ spec: {{- else }} emptyDir: {} {{- end }} - imagePullSecrets: - - name: "{{ include "common.namespace" . }}-docker-registry-key"
\ No newline at end of file + imagePullSecrets: + - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml index b223872a3c..da65944701 100644 --- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml +++ b/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml @@ -95,5 +95,5 @@ spec: {{- else }} emptyDir: {} {{- end }} - imagePullSecrets: - - name: "{{ include "common.namespace" . }}-docker-registry-key" + imagePullSecrets: + - name: "{{ include "common.namespace" . }}-docker-registry-key" diff --git a/kubernetes/helm/plugins/deploy/deploy.sh b/kubernetes/helm/plugins/deploy/deploy.sh index 9195f161f6..c92bc6e8b1 100755 --- a/kubernetes/helm/plugins/deploy/deploy.sh +++ b/kubernetes/helm/plugins/deploy/deploy.sh @@ -66,7 +66,6 @@ generate_overrides() { fi done } - resolve_deploy_flags() { flags=($1) n=${#flags[*]} @@ -75,7 +74,8 @@ resolve_deploy_flags() { if [[ $PARAM == "-f" || \ $PARAM == "--values" || \ $PARAM == "--set" || \ - $PARAM == "--set-string" ]]; then + $PARAM == "--set-string" || \ + $PARAM == "--version" ]]; then # skip param and its value i=$((i + 1)) else @@ -116,12 +116,18 @@ deploy() { # should pass all flags instead NAMESPACE="$(echo $FLAGS | sed -n 's/.*\(namespace\).\s*/\1/p' | cut -c10- | cut -d' ' -f1)" + VERSION="$(echo $FLAGS | sed -n 's/.*\(version\).\s*/\1/p' | cut -c8- | cut -d' ' -f1)" + + if [ ! -z $VERSION ]; then + VERSION="--version $VERSION" + fi + # Remove all override values passed in as arguments. These will be used during dry run # to resolve computed override values. Remaining flags will be passed on during # actual upgrade/install of parent and subcharts. DEPLOY_FLAGS=$(resolve_deploy_flags "$FLAGS") - # determine if upgrading individual subchart or entire parent + subcharts + # determine if upgrading individual subchart or entire parent + subcharts SUBCHART_RELEASE="$(cut -d'-' -f2 <<<"$RELEASE")" if [[ ! -d "$CACHE_SUBCHART_DIR/$SUBCHART_RELEASE" ]]; then SUBCHART_RELEASE= @@ -148,7 +154,7 @@ deploy() { rm -rf $CHART_DIR/charts/*.tgz else echo "fetching $CHART_URL" - helm fetch $CHART_URL --untar --untardir $CACHE_DIR + helm fetch $CHART_URL --untar --untardir $CACHE_DIR $VERSION fi # move out subcharts to process separately @@ -238,4 +244,4 @@ case "${1:-"help"}" in ;; esac -exit 0
\ No newline at end of file +exit 0 diff --git a/kubernetes/policy/charts/brmsgw/values.yaml b/kubernetes/policy/charts/brmsgw/values.yaml index d7c9535cf2..0001d9a841 100644 --- a/kubernetes/policy/charts/brmsgw/values.yaml +++ b/kubernetes/policy/charts/brmsgw/values.yaml @@ -26,7 +26,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/policy-pe:1.3.4 +image: onap/policy-pe:1.4-SNAPSHOT-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/policy/charts/drools/values.yaml b/kubernetes/policy/charts/drools/values.yaml index 2451ceac1a..1400e6c97e 100644 --- a/kubernetes/policy/charts/drools/values.yaml +++ b/kubernetes/policy/charts/drools/values.yaml @@ -28,7 +28,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/policy-drools:1.3.4 +image: onap/policy-drools:1.4-SNAPSHOT-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/policy/charts/pdp/values.yaml b/kubernetes/policy/charts/pdp/values.yaml index 1b2d494546..6794681452 100644 --- a/kubernetes/policy/charts/pdp/values.yaml +++ b/kubernetes/policy/charts/pdp/values.yaml @@ -28,7 +28,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/policy-pe:1.3.4 +image: onap/policy-pe:1.4-SNAPSHOT-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/policy/charts/policy-apex-pdp/values.yaml b/kubernetes/policy/charts/policy-apex-pdp/values.yaml index b84b769660..95b2d2c28d 100644 --- a/kubernetes/policy/charts/policy-apex-pdp/values.yaml +++ b/kubernetes/policy/charts/policy-apex-pdp/values.yaml @@ -28,7 +28,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/policy-apex-pdp:2.0.3 +image: onap/policy-apex-pdp:2.1-SNAPSHOT-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/policy/charts/policy-distribution/values.yaml b/kubernetes/policy/charts/policy-distribution/values.yaml index 240c266cb4..65f02cba46 100644 --- a/kubernetes/policy/charts/policy-distribution/values.yaml +++ b/kubernetes/policy/charts/policy-distribution/values.yaml @@ -27,7 +27,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/policy-distribution:2.0.3 +image: onap/policy-distribution:2.1.0-SNAPSHOT-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/policy/resources/config/pe/push-policies.sh b/kubernetes/policy/resources/config/pe/push-policies.sh index 9074b9a63a..a9a8687824 100644 --- a/kubernetes/policy/resources/config/pe/push-policies.sh +++ b/kubernetes/policy/resources/config/pe/push-policies.sh @@ -1,5 +1,5 @@ # Copyright © 2017 Amdocs, Bell Canada, AT&T -# Modifications Copyright © 2018 AT&T. All rights reserved. +# Modifications Copyright © 2018-2019 AT&T. 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. @@ -23,7 +23,7 @@ echo "Upload BRMS Param Template" sleep 2 -wget -O cl-amsterdam-template.drl https://git.onap.org/policy/drools-applications/plain/controlloop/templates/archetype-cl-amsterdam/src/main/resources/archetype-resources/src/main/resources/__closedLoopControlName__.drl?h=casablanca +wget -O cl-amsterdam-template.drl https://git.onap.org/policy/drools-applications/plain/controlloop/templates/archetype-cl-amsterdam/src/main/resources/archetype-resources/src/main/resources/__closedLoopControlName__.drl sleep 2 diff --git a/kubernetes/policy/values.yaml b/kubernetes/policy/values.yaml index 521a229078..48a5dcae1b 100644 --- a/kubernetes/policy/values.yaml +++ b/kubernetes/policy/values.yaml @@ -41,7 +41,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/policy-pe:1.3.4 +image: onap/policy-pe:1.4-SNAPSHOT-latest pullPolicy: Always subChartsOnly: @@ -117,4 +117,4 @@ resources: requests: cpu: 20m memory: 2Gi - unlimited: {}
\ No newline at end of file + unlimited: {} diff --git a/kubernetes/pomba/charts/pomba-data-router/values.yaml b/kubernetes/pomba/charts/pomba-data-router/values.yaml index d92e75c705..5815b9667a 100644 --- a/kubernetes/pomba/charts/pomba-data-router/values.yaml +++ b/kubernetes/pomba/charts/pomba-data-router/values.yaml @@ -27,7 +27,7 @@ global: # application image repository: nexus3.onap.org:10001 -image: onap/data-router:1.3.1 +image: onap/data-router:1.3.3 pullPolicy: Always restartPolicy: Always diff --git a/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/application.properties b/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/application.properties index 8c7d27cab0..bbf0901449 100644 --- a/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/application.properties +++ b/kubernetes/pomba/charts/pomba-servicedecomposition/resources/config/application.properties @@ -45,8 +45,9 @@ aai.httpProtocol={{ .Values.config.aaiHttpProtocol }} aai.securityProtocol=TLS aai.connectionTimeout=60000 aai.readTimeout=60000 -aai.resourceList=vnfc,vserver,l3-network +aai.resourceList=vnfc,vserver,l3-network,pserver aai.serviceInstancePath=/aai/v13/nodes/service-instance/{0} +aai.urlDepth=2 #Servlet context parameters server.context_parameters.p-name=value #context parameter with p-name as key and value as value. diff --git a/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy b/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy index 877e74c7e0..1902a1050f 100644 --- a/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy +++ b/kubernetes/pomba/charts/pomba-validation-service/resources/bundleconfig/etc/rules/poa-event/default-rules.groovy @@ -25,130 +25,171 @@ entity { // NDCB-AAI comparison: Context level useRule { - name 'NDCB-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.ndcb', 'context-list.aai' } // NDCB-AAI comparison: Service entity useRule { - name 'NDCB-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.ndcb.service', 'context-list.aai.service' } - // NDCB-AAI comparison: VF list + // NDCB-AAI comparison: Context level network list useRule { - name 'NDCB-AAI-attribute-comparison' + name 'Attribute-comparison' + attributes 'context-list.ndcb.networkList[*]', 'context-list.aai.networkList[*]' + } + + // NDCB-AAI comparison: VNF list + useRule { + name 'Attribute-comparison' attributes 'context-list.ndcb.vnfList[*]', 'context-list.aai.vnfList[*]' } + // NDCB-AAI comparison: VNF network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.ndcb.vnfList[*].networkList[*]', 'context-list.aai.vnfList[*].networkList[*]' + } + // NDCB-AAI comparison: VF-Module list useRule { - name 'NDCB-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.ndcb.vnfList[*].vfModuleList[*]', 'context-list.aai.vnfList[*].vfModuleList[*]' } + // NDCB-AAI comparison: VF-Module network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.ndcb.vnfList[*].vfModuleList[*].networkList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].networkList[*]' + } + // NDCB-AAI comparison: VNFC list useRule { - name 'NDCB-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.ndcb.vnfList[*].vnfcList[*]', 'context-list.aai.vnfList[*].vnfcList[*]' } // NDCB-AAI comparison: VM list useRule { - name 'NDCB-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.ndcb.vnfList[*].vfModuleList[*].vmList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].vmList[*]' } - - // NDCB-AAI comparison: Network list - useRule { - name 'NDCB-AAI-attribute-comparison' - attributes 'context-list.ndcb.vnfList[*].vfModuleList[*].networkList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].networkList[*]' - } - + + // SDNC-AAI comparison: Context level useRule { - name 'SDNC-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc', 'context-list.aai' } // SDNC-AAI comparison: Service entity useRule { - name 'SDNC-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.service', 'context-list.aai.service' } - // SDNC-AAI comparison: VF list + // SDNC-AAI comparison: Context level network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.sdnc.networkList[*]', 'context-list.aai.networkList[*]' + } + + // SDNC-AAI comparison: VNF list useRule { - name 'SDNC-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*]', 'context-list.aai.vnfList[*]' } + // SDNC-AAI comparison: VNF network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.sdnc.vnfList[*].networkList[*]', 'context-list.aai.vnfList[*].networkList[*]' + } + // SDNC-AAI comparison: VF-Module list useRule { - name 'SDNC-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*].vfModuleList[*]', 'context-list.aai.vnfList[*].vfModuleList[*]' } + // SDNC-AAI comparison: VF-Module network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.sdnc.vnfList[*].vfModuleList[*].networkList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].networkList[*]' + } + // SDNC-AAI comparison: VNFC list useRule { - name 'SDNC-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*].vnfcList[*]', 'context-list.aai.vnfList[*].vnfcList[*]' } // SDNC-AAI comparison: VM list useRule { - name 'SDNC-AAI-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*].vfModuleList[*].vmList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].vmList[*]' } - // SDNC-AAI comparison: Network list - useRule { - name 'SDNC-AAI-attribute-comparison' - attributes 'context-list.sdnc.vnfList[*].vfModuleList[*].networkList[*]', 'context-list.aai.vnfList[*].vfModuleList[*].networkList[*]' - } - + + // SDNC-NDCB comparison: Context level useRule { - name 'SDNC-NDCB-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc', 'context-list.ndcb' } // SDNC-NDCB comparison: Service entity useRule { - name 'SDNC-NDCB-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.service', 'context-list.ndcb.service' } - // SDNC-NDCB comparison: VF list + // SDNC-NDCB comparison: Context level network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.sdnc.networkList[*]', 'context-list.ndcb.networkList[*]' + } + + // SDNC-NDCB comparison: VNF list useRule { - name 'SDNC-NDCB-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*]', 'context-list.ndcb.vnfList[*]' } + // SDNC-NDCB comparison: VNF network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.sdnc.vnfList[*].networkList[*]', 'context-list.ndcb.vnfList[*].networkList[*]' + } + // SDNC-NDCB comparison: VF-Module list useRule { - name 'SDNC-NDCB-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*].vfModuleList[*]', 'context-list.ndcb.vnfList[*].vfModuleList[*]' } + // SDNC-NDCB comparison: VF-Module network list + useRule { + name 'Attribute-comparison' + attributes 'context-list.sdnc.vnfList[*].vfModuleList[*].networkList[*]', 'context-list.ndcb.vnfList[*].vfModuleList[*].networkList[*]' + } + // SDNC-NDCB comparison: VNFC list useRule { - name 'SDNC-NDCB-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*].vnfcList[*]', 'context-list.ndcb.vnfList[*].vnfcList[*]' } // SDNC-NDCB comparison: VM list useRule { - name 'SDNC-NDCB-attribute-comparison' + name 'Attribute-comparison' attributes 'context-list.sdnc.vnfList[*].vfModuleList[*].vmList[*]', 'context-list.ndcb.vnfList[*].vfModuleList[*].vmList[*]' } - // SDNC-NDCB comparison: Network list - useRule { - name 'SDNC-NDCB-attribute-comparison' - attributes 'context-list.sdnc.vnfList[*].vfModuleList[*].networkList[*]', 'context-list.ndcb.vnfList[*].vfModuleList[*].networkList[*]' - } - + + // SDC-AAI VNFC type useRule { name 'SDC-AAI-vnfc-type' @@ -236,249 +277,126 @@ rule { } rule { - name 'NDCB-AAI-attribute-comparison' + name 'Attribute-comparison' category 'Attribute Mismatch' - description 'Verify that all attributes in Network-Discovery are the same as in AAI' - errorText 'Error found with attribute "{0}"; Network-Discovery value does not match AAI value "{1}"' + description 'Determine all discrepancies between values for attributes with matching names from each model' + errorText 'Error found with attribute(s) and values: {0}' severity 'ERROR' - attributes 'ndcbItems', 'aaiItems' + attributes 'lhsObject', 'rhsObject' validate ''' - Closure<java.util.Map> getAttributes = { parsedData -> - java.util.Map attributeMap = new java.util.HashMap() - - def isAttributeDataQualityOk = { attribute -> - attribute.findResult{ k, v -> if(k.equals("dataQuality") ) {return v.get("status")}}.equals("ok") - } - - def addToMap = { attrKey, attrValue -> - java.util.Set values = attributeMap.get("$attrKey") - if(values == null) { - values = new java.util.HashSet() - attributeMap.put("$attrKey", values) - } - values.add("$attrValue") - } - - def addAttributeToMap = { attribute -> - if(isAttributeDataQualityOk(attribute)) { - String key, value - attribute.each { k, v -> - if(k.equals("name")) {key = "$v"} - if(k.equals("value")) {value = "$v"} - } - addToMap("$key", "$value") - } - } - - def processKeyValue = { key, value -> - if(value instanceof java.util.ArrayList) { - if(key.equals("attributeList")) { - value.each { - addAttributeToMap(it) - } - } - } else if(!(value instanceof groovy.json.internal.LazyMap)) { - // only add key-value attributes, skip the rest - addToMap("$key", "$value") - } - } - - if(parsedData instanceof java.util.ArrayList) { - parsedData.each { - it.each { key, value -> processKeyValue(key, value) } - } - } else { - parsedData.each { key, value -> processKeyValue(key, value) } - } - return attributeMap - } - - def slurper = new groovy.json.JsonSlurper() - java.util.Map ndcb = getAttributes(slurper.parseText(ndcbItems.toString())) - java.util.Map aai = getAttributes(slurper.parseText(aaiItems.toString())) - - boolean result = true - List<String> details = new ArrayList<>(); - ndcb.any{ ndcbKey, ndcbValueList -> - def aaiValueList = aai.get("$ndcbKey") - aaiValueList.each{ aaiValue -> - if(!ndcbValueList.any{ it == "$aaiValue" }) { - result = false - details.add("$ndcbKey") - details.add("$aaiValue") - } - } - if(result == false) { - // break out of 'any' loop - return true - } - } - return new Tuple2(result, details) - ''' -} - -rule { - name 'SDNC-AAI-attribute-comparison' - category 'Attribute Mismatch' - description 'Verify that all attributes in SDN-C are the same as in AAI' - errorText 'Error found with attribute "{0}"; SDN-C value does not match AAI value "{1}"' - severity 'ERROR' - attributes 'sdncItems', 'aaiItems' - validate ''' - Closure<java.util.Map> getAttributes = { parsedData -> - java.util.Map attributeMap = new java.util.HashMap() - - def isAttributeDataQualityOk = { attribute -> - attribute.findResult{ k, v -> if(k.equals("dataQuality") ) {return v.get("status")}}.equals("ok") - } - - def addToMap = { attrKey, attrValue -> - java.util.Set values = attributeMap.get("$attrKey") - if(values == null) { - values = new java.util.HashSet() - attributeMap.put("$attrKey", values) - } - values.add("$attrValue") - } - - def addAttributeToMap = { attribute -> - if(isAttributeDataQualityOk(attribute)) { - String key, value - attribute.each { k, v -> - if(k.equals("name")) {key = "$v"} - if(k.equals("value")) {value = "$v"} - } - addToMap("$key", "$value") - } - } - - def processKeyValue = { key, value -> - if(value instanceof java.util.ArrayList) { - if(key.equals("attributeList")) { - value.each { - addAttributeToMap(it) - } - } - } else if(!(value instanceof groovy.json.internal.LazyMap)) { - // only add key-value attributes, skip the rest - addToMap("$key", "$value") - } - } - - if(parsedData instanceof java.util.ArrayList) { - parsedData.each { - it.each { key, value -> processKeyValue(key, value) } - } - } else { - parsedData.each { key, value -> processKeyValue(key, value) } - } - return attributeMap - } - - def slurper = new groovy.json.JsonSlurper() - java.util.Map sdnc = getAttributes(slurper.parseText(sdncItems.toString())) - java.util.Map aai = getAttributes(slurper.parseText(aaiItems.toString())) - - boolean result = true - List<String> details = new ArrayList<>(); - sdnc.any{ sdncKey, sdncValueList -> - def aaiValueList = aai.get("$sdncKey") - aaiValueList.each{ aaiValue -> - if(!sdncValueList.any{ it == "$aaiValue" }) { - result = false - details.add("$sdncKey") - details.add("$aaiValue") - } - } - if(result == false) { - // break out of 'any' loop - return true - } - } - return new Tuple2(result, details) - ''' -} - - -rule { - name 'SDNC-NDCB-attribute-comparison' - category 'Attribute Mismatch' - description 'Verify that all attributes in SDN-C are the same as in Network Discovery' - errorText 'Error found with attribute "{0}"; SDN-C value does not match Network-Discovery value "{1}"' - severity 'ERROR' - attributes 'sdncItems', 'ndcbItems' - validate ''' - Closure<java.util.Map> getAttributes = { parsedData -> - java.util.Map attributeMap = new java.util.HashMap() - - def isAttributeDataQualityOk = { attribute -> - attribute.findResult{ k, v -> if(k.equals("dataQuality") ) {return v.get("status")}}.equals("ok") - } - - def addToMap = { attrKey, attrValue -> - java.util.Set values = attributeMap.get("$attrKey") - if(values == null) { - values = new java.util.HashSet() - attributeMap.put("$attrKey", values) - } - values.add("$attrValue") - } - - def addAttributeToMap = { attribute -> - if(isAttributeDataQualityOk(attribute)) { - String key, value - attribute.each { k, v -> - if(k.equals("name")) {key = "$v"} - if(k.equals("value")) {value = "$v"} - } - addToMap("$key", "$value") - } - } - - def processKeyValue = { key, value -> - if(value instanceof java.util.ArrayList) { - if(key.equals("attributeList")) { - value.each { - addAttributeToMap(it) - } - } - } else if(!(value instanceof groovy.json.internal.LazyMap)) { - // only add key-value attributes, skip the rest - addToMap("$key", "$value") - } - } - - if(parsedData instanceof java.util.ArrayList) { - parsedData.each { - it.each { key, value -> processKeyValue(key, value) } - } - } else { - parsedData.each { key, value -> processKeyValue(key, value) } - } - return attributeMap - } - - def slurper = new groovy.json.JsonSlurper() - java.util.Map sdnc = getAttributes(slurper.parseText(sdncItems.toString())) - java.util.Map ndcb = getAttributes(slurper.parseText(ndcbItems.toString())) - - boolean result = true - List<String> details = new ArrayList<>(); - sdnc.any{ sdncKey, sdncValueList -> - def ndcbValueList = ndcb.get("$sdncKey") - ndcbValueList.each{ ndcbValue -> - if(!sdncValueList.any{ it == "$ndcbValue" }) { - result = false - details.add("$sdncKey") - details.add("$ndcbValue") - } - } - if(result == false) { - // break out of 'any' loop - return true - } - } - return new Tuple2(result, details) + // This closure extracts the given object's root level attributes and contents of the attribute list. + // Complex items like lists are excluded. + // Returns a map containing attribute names as keys, mapping to a list of values for each attribute. + Closure<java.util.Map> getAttributes = { parsedData -> + java.util.Map attributeMap = new java.util.HashMap() + + def isAttributeDataQualityOk = { attribute -> + attribute.findResult{ k, v -> if(k.equals("dataQuality") ) {return v.get("status")}}.equals("ok") + } + + def addToMap = { attrKey, attrValue -> + java.util.Set values = attributeMap.get("$attrKey") + if(values == null) { + values = new java.util.HashSet() + attributeMap.put("$attrKey", values) + } + values.add("$attrValue") + } + + def addAttributeToMap = { attribute -> + if(isAttributeDataQualityOk(attribute)) { + String key, value + attribute.each { k, v -> + if(k.equals("name")) {key = "$v"} + if(k.equals("value")) {value = "$v"} + } + addToMap("$key", "$value") + } + } + + def processKeyValue = { key, value -> + if(value instanceof java.util.ArrayList) { + if(key.equals("attributeList")) { + value.each { + addAttributeToMap(it) + } + } + } else if(!(value instanceof groovy.json.internal.LazyMap)) { + // only add key-value attributes, skip the rest + addToMap("$key", "$value") + } + } + + if(parsedData instanceof java.util.ArrayList) { + parsedData.each { + it.each { key, value -> processKeyValue(key, value) } + } + } else { + parsedData.each { key, value -> processKeyValue(key, value) } + } + return attributeMap + } + + // This closure compares all values for each key from the left map, to values of the same key from the right map. + // Returns a map of attributes with mismatched or missing values (i.e. attribute name mapped to list of failed values). + Closure<java.util.Map> compareAttributes = { java.util.Map left, java.util.Map right -> + java.util.Map violationMap = new java.util.HashMap() + left.each{ leftKey, leftValueList -> + def rightValueList = right.get("$leftKey") + rightValueList.each{ rightValue -> + if(!leftValueList.any{ it == "$rightValue" }) { + def existingValues = violationMap.get(leftKey) + if(existingValues) { + existingValues.add("$rightValue") + } else { + java.util.Set newValues = new HashSet() + newValues.add("$rightValue") + violationMap.put("$leftKey", newValues) + } + } + } + } + return violationMap + } + + // This closure merges the given maps into a new map. + // Returns a map containing all keys and their values from both maps. + Closure<java.util.Map> mergeMaps = { java.util.Map left, java.util.Map right -> + if(left.isEmpty() && right.isEmpty()) { + return [:] + } else if(left.isEmpty()) { + return right + } else if(right.isEmpty()) { + return left + } + java.util.Map merged = new java.util.HashMap() + merged.putAll(left) + right.each{ rightKey, rightValues -> + java.util.Set mergedValues = merged.get(rightKey) + if(mergedValues == null) { + merged.put(rightKey, rightValues) + } else { + mergedValues.addAll(rightValues) + } + } + return merged + } + + def slurper = new groovy.json.JsonSlurper() + java.util.Map lhsAttributes = getAttributes(slurper.parseText(lhsObject.toString())) + java.util.Map rhsAttributes = getAttributes(slurper.parseText(rhsObject.toString())) + + def leftToRight = compareAttributes(lhsAttributes, rhsAttributes) + def rightToLeft = compareAttributes(rhsAttributes, lhsAttributes) + def mergedResults = mergeMaps(leftToRight, rightToLeft) + + boolean success = true + List<String> details = new ArrayList<>() + if(!mergedResults.isEmpty()) { + success = false + details.add(mergedResults.toString()) + } + return new Tuple2(success, details) ''' } diff --git a/kubernetes/robot/demo-k8s.sh b/kubernetes/robot/demo-k8s.sh index 11d41a37b2..d253ec7f4f 100755 --- a/kubernetes/robot/demo-k8s.sh +++ b/kubernetes/robot/demo-k8s.sh @@ -173,6 +173,14 @@ do TAG="distributeVFWNG" shift ;; + distributeDemoVFWDT) + TAG="DistributeDemoVFWDT" + shift + ;; + instantiateDemoVFWDT) + TAG="instantiateVFWDT" + shift + ;; vfwclosedloop) TAG="vfwclosedloop" shift @@ -189,7 +197,7 @@ set -x POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot) -ETEHOME=/var/opt/OpenECOMP_ETE +ETEHOME=/var/opt/ONAP export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec ${POD} -- bash -c "ls -1q /share/logs/ | wc -l") OUTPUT_FOLDER=$(printf %04d $GLOBAL_BUILD_NUMBER)_demo_$key diff --git a/kubernetes/robot/ete-k8s.sh b/kubernetes/robot/ete-k8s.sh index c4059b90c7..aaa3bc83ac 100755 --- a/kubernetes/robot/ete-k8s.sh +++ b/kubernetes/robot/ete-k8s.sh @@ -33,7 +33,7 @@ POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot) TAGS="-i $2" -ETEHOME=/var/opt/OpenECOMP_ETE +ETEHOME=/var/opt/ONAP export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec ${POD} -- bash -c "ls -1q /share/logs/ | wc -l") OUTPUT_FOLDER=$(printf %04d $GLOBAL_BUILD_NUMBER)_ete_$2 DISPLAY_NUM=$(($GLOBAL_BUILD_NUMBER + 90)) diff --git a/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py b/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py index 4a738c4a44..0ae1047529 100644 --- a/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py +++ b/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py @@ -30,8 +30,7 @@ GLOBAL_PRELOAD_PARAMETERS = { "cloud_env" : "${GLOBAL_INJECTED_CLOUD_ENV}", "install_script_version" : "${GLOBAL_INJECTED_SCRIPT_VERSION}", }, - -# ## + # ## # heat template parameter values for heat template instances created during Vnf-Orchestration test cases # ## "Vnf-Orchestration" : { @@ -95,7 +94,94 @@ GLOBAL_PRELOAD_PARAMETERS = { "vpg_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}", "vpg_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}", }, - # vLBMS + # vFWDT preload data + "vfwdt_vpkg_preload.template": { + "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}", + "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}", + "unprotected_private_net_cidr" : "192.168.10.0/24", + "protected_private_net_cidr" : "192.168.20.0/24", + "vfw_private_ip_0" : "192.168.10.100", + "vpg_private_ip_0" : "192.168.10.200", + "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103", + "vsn_private_ip_0" : "192.168.20.250", + "sec_group" : "{{ .Values.openStackSecurityGroup }}", + 'vpg_name_0':'vofwl01pgn${hostid}', + "vfw_name_0": "vofwl01vfw${hostid}", + "vsn_name_0": "vofwl01snk${hostid}", + "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}", + "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}", + "protected_private_net_id" : "vofwlsnk01_protected${hostid}", + "protected_private_subnet_id" : "vofwlsnk01_protected_sub${hostid}", + "ext_private_net_id": "onap_oam_ext", + "ext_private_subnet_id": "onap_oam_ext_sub", + "ext_private_net_cidr": "10.100.0.0/16", + "vfw_private_ip_1": "192.168.20.100", + "vfw_private_ip_2": "10.0.110.1", + "vfw_private_ip_3": "10.100.100.1", + "vsn_private_ip_1": "10.0.110.3", + "vsn_private_ip_0": "192.168.20.250", + "vsn_private_ip_2": "10.100.100.3", + }, + "vfwdt_vfwsnk0_preload.template": { + "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}", + "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}", + "unprotected_private_net_cidr" : "192.168.10.0/24", + "protected_private_net_cidr" : "192.168.20.0/24", + "vfw_private_ip_0" : "192.168.10.100", + "vpg_private_ip_0" : "192.168.10.200", + "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103", + "vsn_private_ip_0" : "192.168.20.250", + "sec_group" : "{{ .Values.openStackSecurityGroup }}", + 'vpg_name_0':'vofwl01pgn${hostid}', + "vsn_name_0": "vofwl01snk${hostid}", + "vfw_name_0": "vofwl01vfw${hostid}", + "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}", + "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}", + "protected_private_net_id" : "vofwlsnk01_protected${hostid}", + "protected_private_subnet_id" : "vofwlsnk01_protected_sub${hostid}", + "ext_private_net_id": "onap_oam_ext", + "ext_private_subnet_id": "onap_oam_ext_sub", + "ext_private_net_cidr": "10.100.0.0/16", + "vfw_private_ip_1": "192.168.20.100", + "vfw_private_ip_2": "10.0.110.1", + "vfw_private_ip_3": "10.100.100.1", + "vsn_private_ip_1": "10.0.110.3", + "vsn_private_ip_0": "192.168.20.250", + "vpg_private_ip_2": "10.100.100.2", + "vsn_private_ip_1": "10.0.110.3", + "vsn_private_ip_0": "192.168.20.250", + "vsn_private_ip_2": "10.100.100.3" + }, + "vfwdt_vfwsnk1_preload.template": { + "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}", + "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}", + "unprotected_private_net_cidr" : "192.168.10.0/24", + "protected_private_net_cidr" : "192.168.20.0/24", + "vfw_private_ip_0" : "192.168.10.110", + "vpg_private_ip_0" : "192.168.10.200", + "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103", + "vsn_private_ip_0" : "192.168.20.250", + "sec_group" : "{{ .Values.openStackSecurityGroup }}", + 'vpg_name_0':'vofwl01pgn${hostid}', + "vsn_name_0": "vofwl01snk${hostid}", + "vfw_name_0": "vofwl01vfw${hostid}", + "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}", + "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}", + "protected_private_net_id" : "vofwlsnk01_protected${hostid}", + "protected_private_subnet_id" : "vofwlsnk01_protected_sub${hostid}", + "ext_private_net_id": "onap_oam_ext", + "ext_private_subnet_id": "onap_oam_ext_sub", + "ext_private_net_cidr": "10.100.0.0/16", + "vfw_private_ip_1": "192.168.20.110", + "vfw_private_ip_2": "10.0.110.4", + "vfw_private_ip_3": "10.100.100.4", + "vpg_private_ip_0": "192.168.10.200", + "vpg_private_ip_1": "10.0.110.2", + "vpg_private_ip_2": "10.100.100.2", + "vsn_private_ip_0": "192.168.20.240", + "vsn_private_ip_1": "10.0.110.5", + "vsn_private_ip_2": "10.100.100.5" + }, "vlb_preload.template" : { "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}", "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}", diff --git a/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py b/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py index d8179e1ba1..3b65df8b54 100644 --- a/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py +++ b/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py @@ -151,4 +151,4 @@ GLOBAL_PROXY_WARNING_CONTINUE_XPATH="" # dns info GLOBAL_DNS_TRAFFIC_DURATION = "600" # location where heat templates are loaded from -GLOBAL_HEAT_TEMPLATES_FOLDER = "/var/opt/OpenECOMP_ETE/demo/heat" +GLOBAL_HEAT_TEMPLATES_FOLDER = "/var/opt/ONAP/demo/heat" diff --git a/kubernetes/robot/values.yaml b/kubernetes/robot/values.yaml index ede9a045d9..bc80528b69 100755 --- a/kubernetes/robot/values.yaml +++ b/kubernetes/robot/values.yaml @@ -22,7 +22,7 @@ global: # global defaults # application image repository: nexus3.onap.org:10001 -image: onap/testsuite:1.3.2 +image: onap/testsuite:1.4.0-STAGING-latest pullPolicy: Always ubuntuInitImage: oomk8s/ubuntu-init:2.0.0 diff --git a/kubernetes/sdc/charts/sdc-fe/values.yaml b/kubernetes/sdc/charts/sdc-fe/values.yaml index 762d6c3c24..e9b329c9e7 100644 --- a/kubernetes/sdc/charts/sdc-fe/values.yaml +++ b/kubernetes/sdc/charts/sdc-fe/values.yaml @@ -38,8 +38,8 @@ config: 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" - workflow_discovery_url: "http://sdc-wfd-fe:8080" - workflow_source_url: "http://sdc.workflow.plugin.simpledemo.onap.org:30256" + workflow_discovery_url: "http://sdc-wfd-fe:8080/workflows" + workflow_source_url: "http://sdc.workflow.plugin.simpledemo.onap.org:30256/workflows/" # default number of instances replicaCount: 1 diff --git a/kubernetes/sdc/charts/sdc-wfd-be/values.yaml b/kubernetes/sdc/charts/sdc-wfd-be/values.yaml index cb55f4a3a5..1e0ea51764 100644 --- a/kubernetes/sdc/charts/sdc-wfd-be/values.yaml +++ b/kubernetes/sdc/charts/sdc-wfd-be/values.yaml @@ -28,8 +28,8 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/workflow-backend:1.3.2 -configInitImage: onap/workflow-init:1.3.2 +image: onap/workflow-backend:1.4.0-SNAPSHOT +configInitImage: onap/workflow-init:1.4.0-SNAPSHOT pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/sdc/charts/sdc-wfd-fe/values.yaml b/kubernetes/sdc/charts/sdc-wfd-fe/values.yaml index 5d942e16f7..8c002af181 100644 --- a/kubernetes/sdc/charts/sdc-wfd-fe/values.yaml +++ b/kubernetes/sdc/charts/sdc-wfd-fe/values.yaml @@ -27,7 +27,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/workflow-frontend:1.3.2 +image: onap/workflow-frontend:1.4.0-SNAPSHOT pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/sdnc/charts/dmaap-listener/values.yaml b/kubernetes/sdnc/charts/dmaap-listener/values.yaml index 917a6a2b20..f88b6adfc5 100644 --- a/kubernetes/sdnc/charts/dmaap-listener/values.yaml +++ b/kubernetes/sdnc/charts/dmaap-listener/values.yaml @@ -27,7 +27,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/sdnc-dmaap-listener-image:1.4.3 +image: onap/sdnc-dmaap-listener-image:1.5-STAGING-latest pullPolicy: Always # flag to enable debugging - application support required @@ -91,4 +91,4 @@ resources: requests: cpu: 1 memory: 2Gi - unlimited: {}
\ No newline at end of file + unlimited: {} diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml index 1f14dd3157..75596226b5 100644 --- a/kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml +++ b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml @@ -49,6 +49,7 @@ spec: - name: {{ include "common.name" . }} command: ["/bin/bash"] args: ["-c", "cd /opt/onap/ccsdk && ./startAnsibleServer.sh"] + image: "{{ include "common.repository" . }}/{{ .Values.image }}" imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} ports: diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml index a9cb46965f..44a3f96355 100644 --- a/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml +++ b/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml @@ -27,7 +27,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/sdnc-ansible-server-image:1.4.3 +image: onap/sdnc-ansible-server-image:1.5-STAGING-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/sdnc/charts/sdnc-portal/values.yaml b/kubernetes/sdnc/charts/sdnc-portal/values.yaml index 7dc57fd918..df407e6258 100644 --- a/kubernetes/sdnc/charts/sdnc-portal/values.yaml +++ b/kubernetes/sdnc/charts/sdnc-portal/values.yaml @@ -27,7 +27,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/admportal-sdnc-image:1.4.3 +image: onap/admportal-sdnc-image:1.5-STAGING-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/sdnc/charts/ueb-listener/values.yaml b/kubernetes/sdnc/charts/ueb-listener/values.yaml index c44ba959d3..c1892efadf 100644 --- a/kubernetes/sdnc/charts/ueb-listener/values.yaml +++ b/kubernetes/sdnc/charts/ueb-listener/values.yaml @@ -27,7 +27,7 @@ global: ################################################################# # application image repository: nexus3.onap.org:10001 -image: onap/sdnc-ueb-listener-image:1.4.3 +image: onap/sdnc-ueb-listener-image:1.5-STAGING-latest pullPolicy: Always # flag to enable debugging - application support required diff --git a/kubernetes/sdnc/templates/statefulset.yaml b/kubernetes/sdnc/templates/statefulset.yaml index b30ef38bb8..70713cc311 100644 --- a/kubernetes/sdnc/templates/statefulset.yaml +++ b/kubernetes/sdnc/templates/statefulset.yaml @@ -95,6 +95,8 @@ spec: value: "{{ .Values.replicaCount }}" - name: MYSQL_HOST value: "{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}" + - name: JAVA_HOME + value: "{{ .Values.config.javaHome}}" volumeMounts: - mountPath: /etc/localtime name: localtime diff --git a/kubernetes/sdnc/values.yaml b/kubernetes/sdnc/values.yaml index a82f053652..20f20af3ec 100644 --- a/kubernetes/sdnc/values.yaml +++ b/kubernetes/sdnc/values.yaml @@ -32,7 +32,7 @@ global: # application images repository: nexus3.onap.org:10001 pullPolicy: Always -image: onap/sdnc-image:1.4.3 +image: onap/sdnc-image:1.5-STAGING-latest # flag to enable debugging - application support required debugEnabled: false @@ -57,6 +57,7 @@ config: logstashPort: 5044 ansibleServiceName: sdnc-ansible-server ansiblePort: 8000 + javaHome: /usr/lib/jvm/java-1.8-openjdk # dependency / sub-chart configuration dmaap-listener: |