Merge "change ansible directory ownership"
authorBorislav Glozman <Borislav.Glozman@amdocs.com>
Wed, 10 Jul 2019 10:26:01 +0000 (10:26 +0000)
committerGerrit Code Review <gerrit@onap.org>
Wed, 10 Jul 2019 10:26:01 +0000 (10:26 +0000)
16 files changed:
docs/oom_quickstart_guide.rst
docs/release-notes.rst
kubernetes/cds/charts/cds-ui/templates/deployment.yaml
kubernetes/cds/charts/cds-ui/values.yaml
kubernetes/onap/resources/overrides/environment.yaml [new file with mode: 0644]
kubernetes/onap/resources/overrides/onap-all.yaml
kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
kubernetes/readiness/docker/init/job_complete.py
kubernetes/readiness/docker/init/ready.py
kubernetes/robot/demo-k8s.sh
kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py
kubernetes/robot/resources/config/eteshare/config/vm_properties.py
kubernetes/robot/values.yaml
kubernetes/sdc/charts/sdc-wfd-fe/templates/ingress.yaml
kubernetes/sdc/charts/sdc-wfd-fe/values.yaml
kubernetes/so/charts/so-bpmn-infra/resources/config/overrides/override.yaml

index 3c491b4..a641fab 100644 (file)
@@ -129,32 +129,42 @@ single command
   The --timeout 900 is currently required in Dublin to address long running initialization tasks
   for DMaaP and SO. Without this timeout value both applications may fail to deploy.
 
- a. To deploy all ONAP applications use this command::
+To deploy all ONAP applications use this command::
 
     > cd oom/kubernetes
-    > helm deploy dev local/onap --namespace onap -f onap/resources/overrides/onap-all.yaml -f onap/resources/overrides/openstack.yaml --timeout 900
+    > helm deploy dev local/onap --namespace onap -f onap/resources/overrides/onap-all.yaml -f onap/resources/overrides/environment.yaml -f onap/resources/overrides/openstack.yaml --timeout 900
 
- b. If you are using a custom override (e.g. integration-override.yaml) use this command::
+All override files may be customized (or replaced by other overrides) as per needs.
 
-    > helm deploy dev local/onap -f /root/integration-override.yaml --namespace onap --timeout 900
+onap-all.yaml
 
+  Enables the modules in the ONAP deployment. As ONAP is very modular, it is possible to customize ONAP and disable some components through this configuration file.
 
- c. If you have a slower cloud environment you may want to use the public-cloud.yaml
-    which has longer delay intervals on database updates.::
+environment.yaml
 
-    > helm deploy dev local/onap -f /root/oom/kubernetes/onap/resources/environments/public-cloud.yaml -f /root/integration-override.yaml --namespace onap --timeout 900
+  Includes configuration values specific to the deployment environment.
 
+  Example: adapt readiness and liveness timers to the level of performance of your infrastructure
 
-**Step 9.** Commands to interact with the OOM installation
+openstack.yaml
 
-Use the following to monitor your deployment and determine when ONAP is
-ready for use::
+  Includes all the Openstack related information for the default target tenant you want to use to deploy VNFs from ONAP and/or additional parameters for the embedded tests.
+
+**Step 9.** Verify ONAP installation
+
+Use the following to monitor your deployment and determine when ONAP is ready for use::
 
   > kubectl get pods -n onap -o=wide
 
-Undeploying onap can be done using the following command::
+.. note::
+  While all pods may be in a Running state, it is not a guarantee that all components are running fine.
+
+  Launch the healthcheck tests using Robot to verify that the components are healthy.
+
+  > ~/oom/kubernetes/robot/ete-k8s.sh onap health
 
-  > helm undeploy dev --purge
+**Step 10.** Undeploy ONAP
 
+> helm undeploy dev --purge
 
 More examples of using the deploy and undeploy plugins can be found here: https://wiki.onap.org/display/DW/OOM+Helm+%28un%29Deploy+plugins
index ae22cb2..dc10400 100644 (file)
@@ -7,16 +7,16 @@
 .. Links
 .. _release-notes-label:
 
-Release Notes
-=============
+ONAP Operations Manager Release Notes
+=====================================
 
-Version 4.0.0 Dublin Release
-----------------------------
+Version 4.0.0 (Dublin Release)
+------------------------------
 
-:Release Date: 2019-06-10
+:Release Date: 2019-06-26
 
 Summary
-=======
+-------
 
 **Platform Resiliency**
 
@@ -55,6 +55,7 @@ Summary
 
 * In default deployment OOM (consul-server-ui) exposes HTTP port 30270 outside of cluster. [`OJSI-134 <https://jira.onap.org/browse/OJSI-134>`_]
 * Hard coded password used for all oom deployments [`OJSI-188 <https://jira.onap.org/browse/OJSI-188>`_]
+* CVE-2019-12127 - OOM exposes unprotected API/UI on port 30270 [`OJSI-202 <https://jira.onap.org/browse/OJSI-202>`_]
 
 *Known Vulnerabilities in Used Modules*
 
@@ -78,7 +79,7 @@ Version 3.0.0 Casablanca Release
 :Release Date: 2018-11-30
 
 Summary
-=======
+-------
 
 The focus of this release was on incremental improvements in the following
 areas:
index ead1b2e..021a6a9 100644 (file)
@@ -50,14 +50,22 @@ spec:
           env:
             - name: HOST
               value: 0.0.0.0
-            - name: API_BLUEPRINT_CONTROLLER_BASE_URL
-              value: {{ .Values.config.api.controller.baseUrl }}
-            - name: API_BLUEPRINT_CONTROLLER_AUTH_TOKEN
-              value: {{ .Values.config.api.controller.authToken }}
-            - name: API_BLUEPRINT_PROCESSOR_BASE_URL
-              value: {{ .Values.config.api.processor.baseUrl }}
-            - name: API_BLUEPRINT_PROCESSOR_AUTH_TOKEN
-              value: {{ .Values.config.api.processor.authToken }}
+            - name: APP_ACTION_DEPLOY_BLUEPRINT_GRPC_ENABLED
+              value: {{ .Values.config.app.action.deployBlueprint.grpcEnabled }}
+            - name: API_BLUEPRINT_CONTROLLER_HTTP_BASE_URL
+              value: {{ .Values.config.api.controller.http.baseUrl }}
+            - name: API_BLUEPRINT_CONTROLLER_HTTP_AUTH_TOKEN
+              value: {{ .Values.config.api.controller.http.authToken }}
+            - name: API_BLUEPRINT_PROCESSOR_HHTP_BASE_URL
+              value: {{ .Values.config.api.processor.http.baseUrl }}
+            - name: API_BLUEPRINT_PROCESSOR_HTTP_AUTH_TOKEN
+              value: {{ .Values.config.api.processor.http.authToken }}
+            - name: API_BLUEPRINT_PROCESSOR_GRPC_HOST
+              value: {{ .Values.config.api.processor.grpc.host }}
+            - name: API_BLUEPRINT_PROCESSOR_GRPC_PORT
+              value: {{ .Values.config.api.processor.grpc.port }}
+            - name: API_BLUEPRINT_PROCESSOR_GRPC_AUTH_TOKEN
+              value: {{ .Values.config.api.processor.grpc.authToken }}
           readinessProbe:
             tcpSocket:
               port: {{ .Values.service.internalPort }}
index 036b888..1ba8a17 100644 (file)
@@ -33,13 +33,23 @@ pullPolicy: Always
 
 # application configuration
 config:
+  app:
+    action:
+      deployBlueprint:
+        grpcEnabled: true
   api:
     controller:
-      baseUrl: http://cds-controller-blueprints:8080/api/v1
-      authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
+      http:
+       baseUrl: http://cds-controller-blueprints:8080/api/v1
+       authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
     processor:
-      baseUrl: http://cds-blueprints-processor-http:8080/api/v1
-      authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
+      http:
+       baseUrl: http://cds-blueprints-processor-http:8080/api/v1
+       authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
+      grpc:
+        host: cds-blueprints-processor-grpc
+        port: 9111
+        authToken: Basic Y2NzZGthcHBzOmNjc2RrYXBwcw==
 
 # default number of instances
 replicaCount: 1
diff --git a/kubernetes/onap/resources/overrides/environment.yaml b/kubernetes/onap/resources/overrides/environment.yaml
new file mode 100644 (file)
index 0000000..75ce8e5
--- /dev/null
@@ -0,0 +1,225 @@
+# Copyright © 2017,2019 Amdocs, AT&T , 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.
+
+#################################################################
+#
+# These overrides will affect all helm charts (ie. applications)
+# that are listed below and are 'enabled'.
+#
+#
+# This is specifically for the environments which take time to
+# deploy ONAP. This increase in timeouts prevents false restarting of
+# the pods during startup configuration.
+#
+# These timers have been tuned by the ONAP integration team. They
+# have been tested and validated in the ONAP integration lab (Intel/Windriver lab).
+# They are however indicative and may be adapted to your environment as they
+# depend on the performance of the infrastructure you are installing ONAP on.
+#
+# Please note that these timers must remain reasonable, in other words, if
+# your infrastructure is not performant enough, extending the timers to very
+# large value may not fix all installation issues on over subscribed hardware.
+#
+#################################################################
+aaf:
+  aaf-cs:
+    liveness:
+      initialDelaySeconds: 240
+    readiness:
+      initialDelaySeconds: 240
+  aaf-gui:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  aaf-oauth:
+    liveness:
+      initialDelaySeconds: 300
+    readiness:
+      initialDelaySeconds: 300
+  aaf-service:
+    liveness:
+      initialDelaySeconds: 300
+    readiness:
+      initialDelaySeconds: 300
+aai:
+  liveness:
+    initialDelaySeconds: 120
+  aai-champ:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  aai-data-router:
+    liveness:
+      initialDelaySeconds: 120
+  aai-sparky-be:
+    liveness:
+      initialDelaySeconds: 120
+  aai-spike:
+    liveness:
+      initialDelaySeconds: 120
+  aai-cassandra:
+    liveness:
+      periodSeconds: 120
+    readiness:
+      periodSeconds: 60
+appc:
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
+cassandra:
+  liveness:
+    initialDelaySeconds: 120
+    periodSeconds: 120
+  readiness:
+    initialDelaySeconds: 120
+    periodSeconds: 60
+clamp:
+  liveness:
+    initialDelaySeconds: 60
+  readiness:
+    initialDelaySeconds: 60
+dcaegen2:
+  dcae-cloudify-manager:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+dmaap:
+  dmaap-bus-controller:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  message-router:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  dmaap-dr-prov:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+    mariadb:
+      liveness:
+        initialDelaySeconds: 180
+        periodSeconds: 60
+  dmaap-dr-node:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+mariadb-galera:
+  liveness:
+    initialDelaySeconds: 180
+    periodSeconds: 60
+  mariadb-galera-server:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+modeling:
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
+oof:
+  oof-has:
+    music:
+      music-cassandra:
+        liveness:
+          periodSeconds: 120
+        readiness:
+          periodSeconds: 60
+portal:
+  portal-app:
+    liveness:
+      initialDelaySeconds: 60
+    readiness:
+      initialDelaySeconds: 60
+  portal-cassandra:
+    liveness:
+      periodSeconds: 120
+    readiness:
+      periodSeconds: 60
+sdc:
+  sdc-be:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  sdc-cs:
+    liveness:
+      initialDelaySeconds: 120
+      periodSeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+      periodSeconds: 60
+  sdc-es:
+    liveness:
+      initialDelaySeconds: 60
+    readiness:
+      initialDelaySeconds: 120
+  sdc-onboarding-be:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+sdnc:
+  liveness:
+    initialDelaySeconds: 60
+  readiness:
+    initialDelaySeconds: 60
+  dmaap-listener:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
+  sdnc-ansible-server:
+    readiness:
+      initialDelaySeconds: 120
+  sdnc-portal:
+    readiness:
+      initialDelaySeconds: 120
+  ueb-listener:
+    liveness:
+      initialDelaySeconds: 60
+    readiness:
+      initialDelaySeconds: 60
+so:
+  liveness:
+    initialDelaySeconds: 120
+  mariadb:
+    liveness:
+      initialDelaySeconds: 900
+    readiness:
+      initialDelaySeconds: 900
+uui:
+  uui-server:
+    liveness:
+      initialDelaySeconds: 120
+    readiness:
+      initialDelaySeconds: 120
+vfc:
+  mariadb-galera:
+    liveness:
+      initialDelaySeconds: 180
+      periodSeconds: 60
index 7f611a1..01c79be 100644 (file)
@@ -63,5 +63,5 @@ BRMS_UEB_API_KEY=
 BRMS_UEB_API_SECRET=
 
 #Dependency.json file version
-BRMS_DEPENDENCY_VERSION=1.4.0
-BRMS_MODELS_DEPENDENCY_VERSION=2.0.0
+BRMS_DEPENDENCY_VERSION=1.4.2
+BRMS_MODELS_DEPENDENCY_VERSION=2.0.2
index b20cb5a..a9570c5 100644 (file)
@@ -20,7 +20,8 @@ with open(token_path, 'r') as token_file:
 # setup logging
 log = logging.getLogger(__name__)
 handler = logging.StreamHandler(sys.stdout)
-handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
+formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
+handler.setFormatter(formatter)
 handler.setLevel(logging.INFO)
 log.addHandler(handler)
 log.setLevel(logging.INFO)
@@ -54,17 +55,22 @@ def is_job_complete(job_name):
 
 DEF_TIMEOUT = 10
 DESCRIPTION = "Kubernetes container job complete check utility"
-USAGE = "Usage: job_complete.py [-t <timeout>] -j <job_name> [-j <job_name> ...]\n" \
+USAGE = "Usage: job_complete.py [-t <timeout>] -j <job_name> " \
+        "[-j <job_name> ...]\n" \
         "where\n" \
-        "<timeout> - wait for container job complete timeout in min, default is " + str(DEF_TIMEOUT) + "\n" \
+        "<timeout> - wait for container job complete timeout in min, " \
+        "default is " + str(DEF_TIMEOUT) + "\n" \
         "<job_name> - name of the job to wait for\n"
 
+
 def main(argv):
     # args are a list of job names
     job_names = []
     timeout = DEF_TIMEOUT
     try:
-        opts, args = getopt.getopt(argv, "hj:t:", ["job-name=", "timeout=", "help"])
+        opts, args = getopt.getopt(argv, "hj:t:", ["job-name=",
+                                                   "timeout=",
+                                                   "help"])
         for opt, arg in opts:
             if opt in ("-h", "--help"):
                 print("%s\n\n%s" % (DESCRIPTION, USAGE))
@@ -89,11 +95,14 @@ def main(argv):
             if complete is True:
                 break
             elif time.time() > timeout:
-                log.warning("timed out waiting for '" + job_name + "' to be completed")
+                log.warning("timed out waiting for '" + job_name +
+                            "' to be completed")
                 exit(1)
             else:
-                # spread in time potentially parallel execution in multiple containers
+                # spread in time potentially parallel execution in multiple
+                # containers
                 time.sleep(random.randint(5, 11))
 
+
 if __name__ == "__main__":
-    main(sys.argv[1:])
\ No newline at end of file
+    main(sys.argv[1:])
index 0e133ea..db7105a 100644 (file)
@@ -20,7 +20,8 @@ with open(token_path, 'r') as token_file:
 # setup logging
 log = logging.getLogger(__name__)
 handler = logging.StreamHandler(sys.stdout)
-handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
+formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
+handler.setFormatter(formatter)
 handler.setLevel(logging.INFO)
 log.addHandler(handler)
 log.setLevel(logging.INFO)
@@ -31,14 +32,14 @@ configuration.ssl_ca_cert = cert
 configuration.api_key['authorization'] = token
 configuration.api_key_prefix['authorization'] = 'Bearer'
 coreV1Api = client.CoreV1Api(client.ApiClient(configuration))
-api_instance=client.ExtensionsV1beta1Api(client.ApiClient(configuration))
+api_instance = client.ExtensionsV1beta1Api(client.ApiClient(configuration))
 api = client.AppsV1beta1Api(client.ApiClient(configuration))
 batchV1Api = client.BatchV1Api(client.ApiClient(configuration))
 
+
 def is_job_complete(job_name):
     complete = False
     log.info("Checking if " + job_name + "  is complete")
-    response = ""
     try:
         response = batchV1Api.read_namespaced_job_status(job_name, namespace)
         if response.status.succeeded == 1:
@@ -54,11 +55,12 @@ def is_job_complete(job_name):
     except Exception as e:
         log.error("Exception when calling read_namespaced_job_status: %s\n" % e)
 
+
 def wait_for_statefulset_complete(statefulset_name):
     try:
         response = api.read_namespaced_stateful_set(statefulset_name, namespace)
         s = response.status
-        if ( s.updated_replicas == response.spec.replicas and
+        if (s.updated_replicas == response.spec.replicas and
                 s.replicas == response.spec.replicas and
                 s.ready_replicas == response.spec.replicas and
                 s.current_replicas == response.spec.replicas and
@@ -71,11 +73,12 @@ def wait_for_statefulset_complete(statefulset_name):
     except Exception as e:
         log.error("Exception when waiting for Statefulset status: %s\n" % e)
 
+
 def wait_for_deployment_complete(deployment_name):
     try:
         response = api.read_namespaced_deployment(deployment_name, namespace)
         s = response.status
-        if ( s.unavailable_replicas == None and
+        if (s.unavailable_replicas is None and
                 s.updated_replicas == response.spec.replicas and
                 s.replicas == response.spec.replicas and
                 s.ready_replicas == response.spec.replicas and
@@ -88,24 +91,27 @@ def wait_for_deployment_complete(deployment_name):
     except Exception as e:
         log.error("Exception when waiting for deployment status: %s\n" % e)
 
+
 def is_ready(container_name):
     ready = False
     log.info("Checking if " + container_name + "  is ready")
     try:
-        response = coreV1Api.list_namespaced_pod(namespace=namespace, watch=False)
+        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 i.metadata.owner_references[0].kind  == "StatefulSet":
-                        ready = wait_for_statefulset_complete(i.metadata.owner_references[0].name)
+                    name = read_name(i)
+                    if i.metadata.owner_references[0].kind == "StatefulSet":
+                        ready = wait_for_statefulset_complete(name)
                     elif i.metadata.owner_references[0].kind == "ReplicaSet":
-                        api_response = api_instance.read_namespaced_replica_set_status(i.metadata.owner_references[0].name, namespace)
-                        ready = wait_for_deployment_complete(api_response.metadata.owner_references[0].name)
+                        deployment_name = get_deployment_name(name)
+                        ready = wait_for_deployment_complete(deployment_name)
                     elif i.metadata.owner_references[0].kind == "Job":
-                        ready = is_job_complete(i.metadata.owner_references[0].name)
+                        ready = is_job_complete(name)
 
                     return ready
 
@@ -115,19 +121,36 @@ def is_ready(container_name):
     except Exception as e:
         log.error("Exception when calling list_namespaced_pod: %s\n" % e)
 
+
+def read_name(item):
+    return item.metadata.owner_reference[0].name
+
+
+def get_deployment_name(replicaset):
+    api_response = api_instance.read_namespaced_replica_set_status(replicaset,
+                                                                   namespace)
+    deployment_name = read_name(api_response)
+    return deployment_name
+
+
 DEF_TIMEOUT = 10
 DESCRIPTION = "Kubernetes container readiness check utility"
-USAGE = "Usage: ready.py [-t <timeout>] -c <container_name> [-c <container_name> ...]\n" \
+USAGE = "Usage: ready.py [-t <timeout>] -c <container_name> " \
+        "[-c <container_name> ...]\n" \
         "where\n" \
-        "<timeout> - wait for container readiness timeout in min, default is " + str(DEF_TIMEOUT) + "\n" \
+        "<timeout> - wait for container readiness timeout in min, " \
+        "default is " + str(DEF_TIMEOUT) + "\n" \
         "<container_name> - name of the container to wait for\n"
 
+
 def main(argv):
     # args are a list of container names
     container_names = []
     timeout = DEF_TIMEOUT
     try:
-        opts, args = getopt.getopt(argv, "hc:t:", ["container-name=", "timeout=", "help"])
+        opts, args = getopt.getopt(argv, "hc:t:", ["container-name=",
+                                                   "timeout=",
+                                                   "help"])
         for opt, arg in opts:
             if opt in ("-h", "--help"):
                 print("%s\n\n%s" % (DESCRIPTION, USAGE))
@@ -152,12 +175,15 @@ def main(argv):
             if ready is True:
                 break
             elif time.time() > timeout:
-                log.warning("timed out waiting for '" + container_name + "' to be ready")
+                log.warning("timed out waiting for '" + container_name +
+                            "' to be ready")
                 exit(1)
             else:
-                # spread in time potentially parallel execution in multiple containers
+                # spread in time potentially parallel execution in multiple
+                # containers
                 time.sleep(random.randint(5, 11))
 
+
 if __name__ == "__main__":
     main(sys.argv[1:])
 
index 0f45783..eb6744b 100755 (executable)
@@ -59,7 +59,7 @@ function usage
 
 # Set the defaults
 
-echo "Number of parameters:" 
+echo "Number of parameters:"
 echo $#
 
 if [ $# -lt 2 ];then
@@ -199,7 +199,7 @@ do
         vfwclosedloop)
                         TAG="vfwclosedloop"
                         shift
-                        VARIABLES="$VARIABLES -v PACKET_GENERATOR_HOST:$1"
+                        VARIABLES="$VARIABLES -v PACKET_GENERATOR_HOST:$1 -v pkg_host:$1"
                         shift
                         ;;
        *)
@@ -221,4 +221,3 @@ DISPLAY_NUM=$(($GLOBAL_BUILD_NUMBER + 90))
 VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
 
 kubectl --namespace $NAMESPACE exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} -i ${TAG} --display $DISPLAY_NUM 2> ${TAG}.out
-
index 6919063..1db75b0 100644 (file)
@@ -130,6 +130,9 @@ GLOBAL_OOF_SNIRO_SERVER_PORT = "8698"
 #oof user
 GLOBAL_OOF_OSDF_USERNAME="{{ .Values.oofUsername }}"
 GLOBAL_OOF_OSDF_PASSWORD="{{ .Values.oofPassword }}"
+#oof pci user
+GLOBAL_OOF_PCI_USERNAME="{{ .Values.oofOsdfPciOptUsername }}"
+GLOBAL_OOF_PCI_PASSWORD="{{ .Values.oofOsdfPciOptPassword }}"
 # oof cmso global info - everything is from the private oam network (also called onap private network)
 GLOBAL_OOF_CMSO_PROTOCOL = "https"
 GLOBAL_OOF_CMSO_SERVER_PORT = "8080"
index 173def5..9cc3031 100644 (file)
@@ -75,6 +75,7 @@ GLOBAL_INJECTED_OPENSTACK_TENANT_ID_REGION_THREE = '{{ .Values.openStackTenantId
 GLOBAL_INJECTED_OPENSTACK_PROJECT_DOMAIN_REGION_THREE = '{{ .Values.openStackProjectNameRegionThree }}'
 GLOBAL_INJECTED_OPENSTACK_USER_DOMAIN_REGION_THREE = '{{ .Values.openStackDomainIdRegionThree }}'
 GLOBAL_INJECTED_OPENSTACK_OAM_NETWORK_CIDR_PREFIX = '{{ .Values.openStackOamNetworkCidrPrefix }}'
+GLOBAL_INJECTED_OPENSTACK_PUBLIC_NETWORK = 'public'
 GLOBAL_INJECTED_POLICY_IP_ADDR = 'pdp.{{include "common.namespace" .}}'
 GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = 'drools.{{include "common.namespace" .}}'
 GLOBAL_INJECTED_PORTAL_IP_ADDR = 'portal-app.{{include "common.namespace" .}}'
@@ -167,6 +168,7 @@ GLOBAL_INJECTED_PROPERTIES = {
     "GLOBAL_INJECTED_OPENSTACK_PROJECT_DOMAIN_REGION_THREE" : '{{ .Values.openStackProjectNameRegionThree }}',
     "GLOBAL_INJECTED_OPENSTACK_USER_DOMAIN_REGION_THREE" : '{{ .Values.openStackDomainIdRegionThree }}',
     "GLOBAL_INJECTED_OPENSTACK_OAM_NETWORK_CIDR_PREFIX" : '{{ .Values.openStackOamNetworkCidrPrefix }}',
+    "GLOBAL_INJECTED_OPENSTACK_PUBLIC_NETWORK" : 'public',
     "GLOBAL_INJECTED_POLICY_IP_ADDR" : 'pdp.{{include "common.namespace" .}}',
     "GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR" : 'drools.{{include "common.namespace" .}}',
     "GLOBAL_INJECTED_POLICY_API_IP_ADDR" : 'policy-api.{{include "common.namespace" .}}',
index 9afb81e..65da947 100644 (file)
@@ -22,7 +22,7 @@ global: # global defaults
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/testsuite:1.4.1
+image: onap/testsuite:1.4.2
 pullPolicy: Always
 
 ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
@@ -156,6 +156,8 @@ oofUsername: "oof@oof.onap.org"
 oofPassword: "demo123456!"
 cmsoUsername: "oof@oof.onap.org"
 cmsoPassword: "demo123456!"
+oofOsdfPciOptUsername: "oof@oof.onap.org"
+oofOsdfPciOptPassword: "demo123456!"
 oofHomingUsername: "admin1"
 oofHomingPassword: "plan.15"
 
index d051eaf..e10de6d 100644 (file)
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+{{- define "rules.wf" -}}
+- http:
+    paths:
+      - path: /workflows/
+        backend:
+          serviceName: {{.Values.service.name}}
+          servicePort: {{.Values.service.internalPort}}
+{{- end -}}
+
 {{- if .Values.ingress.enabled }}
+
 apiVersion: extensions/v1beta1
 kind: Ingress
 metadata:
@@ -29,11 +39,21 @@ metadata:
 {{- end }}
 spec:
   rules:
-  - http:
-      paths:
-      - path: /workflows/
-        backend:
-          serviceName: {{.Values.service.name}}
-          servicePort: {{.Values.service.internalPort}}
+{{- if .Values.ingress.hosts}}
+{{- range .Values.ingress.hosts}}
+{{- include "rules.wf" $ | nindent 2}}
+{{- if .}}
+    host: {{. | quote}}
+{{- end}}
+{{- end}}
+  tls:
+  - hosts:
+{{- range .Values.ingress.hosts}}
+{{- if .}}
+    - {{ . | quote }}
+{{- end}}
+{{- end }}
+{{- else}}
+{{- include "rules.wf" . | nindent 2}}
+{{- end}}
 {{ end }}
-
index d26c927..639c811 100644 (file)
@@ -80,6 +80,7 @@ service:
 
 ingress:
   enabled: false
+  hosts: ~
   annotations:
     ingress.kubernetes.io/secure-backends: "false"
     nginx.ingress.kubernetes.io/secure-backends: "false"
index 2c8d865..35b86a3 100755 (executable)
@@ -48,6 +48,9 @@ bpelURL: http://so-bpmn-infra.{{ include "common.namespace" . }}:8081
 msb-ip: msb-iag.{{ include "common.namespace" . }}
 msb-port: 80
 mso:
+  rainyDay:
+    retryDurationMultiplier: 2
+    maxRetries: 5
   msoKey: 07a7159d3bf51a0e53be7a8f89699be7
   correlation:
     timeout: 60