added updated dockerfiles and ric workflow 81/1481/1
authorRohan Patel <rp5811@att.com>
Mon, 11 Nov 2019 21:30:46 +0000 (16:30 -0500)
committerRohan Patel <rp5811@att.com>
Mon, 11 Nov 2019 21:33:58 +0000 (16:33 -0500)
Change-Id: I28f4367307789418825deb5c81684d6fccbf3d32
Signed-off-by: Rohan Patel <rp5811@att.com>
51 files changed:
oran-ric-test-head/Dockerfile
oran-ric-test-head/Jenkinsfile
oran-ric-test-head/mock_server/index.js
oran-ric-test-head/ric-test-head.py
oran-ric-test-head/workflows/Delete_xAPP_Test.bpmn [new file with mode: 0644]
oran-ric-test-head/workflows/Deploy_xAPP_Test.bpmn
otf-aaf-credential-generator/Jenkinsfile
otf-camunda/.gitignore
otf-camunda/Jenkinsfile
otf-camunda/docker/Dockerfile
otf-camunda/helm/forceDelete.sh
otf-camunda/settings.xml [new file with mode: 0644]
otf-cert-secret-builder/Jenkinsfile
otf-frontend/.gitignore
otf-frontend/Dockerfile
otf-frontend/Jenkinsfile
otf-frontend/client/.gitignore
otf-frontend/client/config/karma.conf.js
otf-frontend/client/config/protractor.conf.js
otf-frontend/client/e2e/app.e2e-spec.ts
otf-frontend/client/e2e/app.po.ts
otf-frontend/server/test/app.test.js
otf-frontend/server/test/hooks/group-filter.test.js
otf-frontend/server/test/services/bpmn-upload.test.js
otf-frontend/server/test/services/bpmn-validate.test.js
otf-frontend/server/test/services/groups-m.test.js
otf-frontend/server/test/services/groups.test.js
otf-frontend/server/test/services/health.test.js
otf-frontend/server/test/services/strategy-upload.test.js
otf-frontend/server/test/services/test-definition.test.js
otf-frontend/server/test/services/test-heads.test.js
otf-frontend/server/test/services/test-instances.test.js
otf-frontend/server/test/services/test-requests.test.js
otf-frontend/server/test/services/test-strategies.test.js
otf-frontend/server/test/services/tests.test.js
otf-frontend/server/test/services/users.test.js
otf-installation.txt
otf-ping-test-head/.gitignore
otf-ping-test-head/Dockerfile
otf-ping-test-head/Jenkinsfile
otf-robot-test-head/.gitignore
otf-robot-test-head/Dockerfile
otf-robot-test-head/Jenkinsfile
otf-robot-test-head/run.py
otf-service-api/.gitignore
otf-service-api/Jenkinsfile
otf-service-api/docker/Dockerfile
otf-service-api/settings.xml [new file with mode: 0644]
otf-ssh-test-head/.gitignore
otf-ssh-test-head/Dockerfile
otf-ssh-test-head/Jenkinsfile

index 86f740d..7b6be0c 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 FROM python:2.7\r
 \r
 RUN python --version\r
index f5defc2..a6ad06a 100644 (file)
@@ -1,5 +1,19 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
 \r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
         [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
index 255591a..d915ef9 100644 (file)
@@ -1,3 +1,18 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
 const express = require('express')\r
 const app = express()\r
 const port = 3000\r
index f80d3d3..9057678 100644 (file)
@@ -17,6 +17,7 @@ import datetime
 import json\r
 import logging\r
 from logging import FileHandler\r
+import os\r
 \r
 import requests\r
 from flask import Flask, request, jsonify\r
@@ -82,7 +83,7 @@ def executeRicRequest():
                        responseData['vthResponse']['resultData']['statusCode'] = res.status_code\r
                        responseData['vthResponse']['resultData']['resultOutput'] = res.json()\r
                elif action == 'deploy':\r
-                       payload = {'name': requestData['name']}\r
+                       payload = json.dumps({'name': requestData['name']})\r
                        res = requests.post(baseAddress+config['actions_path'][action], data=payload)\r
                        responseData['vthResponse']['resultData']['statusCode'] = res.status_code\r
                        responseData['vthResponse']['resultData']['resultOutput'] = res.json()\r
diff --git a/oran-ric-test-head/workflows/Delete_xAPP_Test.bpmn b/oran-ric-test-head/workflows/Delete_xAPP_Test.bpmn
new file mode 100644 (file)
index 0000000..98be1cc
--- /dev/null
@@ -0,0 +1,214 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_0x9ttcz" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.0.1">
+  <bpmn:process id="Delete_xAPP_Test" isExecutable="true">
+    <bpmn:startEvent id="StartEvent_0cebtfp" camunda:asyncBefore="true">
+      <bpmn:outgoing>SequenceFlow_03vt4gu</bpmn:outgoing>
+    </bpmn:startEvent>
+    <bpmn:scriptTask id="verify" name="Verify Inputs" scriptFormat="JavaScript">
+      <bpmn:incoming>SequenceFlow_03vt4gu</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1gceb7d</bpmn:outgoing>
+      <bpmn:script>var System = java.lang.System 
+
+var deleteVthId = 'delete'
+var testData = execution.getVariable("testData")
+var vthInput = execution.getVariable("vthInput")
+var validInput = false;
+var testResultMessage = "";
+
+try{
+
+  var appName = testData['appName'];
+
+  if(typeof appName  !== 'string' || appName.trim() === ''){
+    System.out.println("appName is not a string, or empty string")
+    throw Error("appName is not a string, or empty string")
+  }
+
+
+  validInput = true
+
+  vthInput[deleteVthId].name = appName
+}
+catch(err){
+  System.out.println(err)
+  validInput = false
+  testResultMessage = "Invalid input params. error: " + err;
+  execution.setVariable("testResult", "FAILED");
+}
+
+execution.setVariable("validInput", validInput)
+execution.setVariable("testResultMessage", testResultMessage)</bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:exclusiveGateway id="ExclusiveGateway_04n8k6e" default="SequenceFlow_035k1kv">
+      <bpmn:incoming>SequenceFlow_1gceb7d</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1xykozf</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_035k1kv</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:sequenceFlow id="SequenceFlow_03vt4gu" sourceRef="StartEvent_0cebtfp" targetRef="verify" />
+    <bpmn:sequenceFlow id="SequenceFlow_1gceb7d" sourceRef="verify" targetRef="ExclusiveGateway_04n8k6e" />
+    <bpmn:sequenceFlow id="SequenceFlow_1xykozf" name="To Delete" sourceRef="ExclusiveGateway_04n8k6e" targetRef="delete">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${validInput}</bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:scriptTask id="ScriptTask_1d0llw5" name="Mark Test Failure" scriptFormat="JavaScript">
+      <bpmn:incoming>SequenceFlow_035k1kv</bpmn:incoming>
+      <bpmn:incoming>SequenceFlow_11htm0z</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1ivi698</bpmn:outgoing>
+      <bpmn:script>execution.setVariable("testResult", "FAILED")</bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_0zeodmx" name="Mark Test Success" scriptFormat="JavaScript">
+      <bpmn:incoming>SequenceFlow_1fcorq2</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1s62i1u</bpmn:outgoing>
+      <bpmn:script>execution.setVariable("testResult", "SUCCESS")</bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:endEvent id="EndEvent_0wf03rq">
+      <bpmn:incoming>SequenceFlow_1czqxne</bpmn:incoming>
+      <bpmn:terminateEventDefinition id="TerminateEventDefinition_1o1stwj" />
+    </bpmn:endEvent>
+    <bpmn:sequenceFlow id="SequenceFlow_1ivi698" sourceRef="ScriptTask_1d0llw5" targetRef="ServiceTask_0yfqtmz" />
+    <bpmn:sequenceFlow id="SequenceFlow_1s62i1u" sourceRef="ScriptTask_0zeodmx" targetRef="ServiceTask_0yfqtmz" />
+    <bpmn:sequenceFlow id="SequenceFlow_1czqxne" sourceRef="ServiceTask_0yfqtmz" targetRef="EndEvent_0wf03rq" />
+    <bpmn:exclusiveGateway id="ExclusiveGateway_0df2lf1" default="SequenceFlow_11htm0z">
+      <bpmn:incoming>SequenceFlow_1hq011g</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1fcorq2</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_11htm0z</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:sequenceFlow id="SequenceFlow_1rdc2w4" sourceRef="delete" targetRef="checkDelete" />
+    <bpmn:sequenceFlow id="SequenceFlow_1fcorq2" name="Deleted" sourceRef="ExclusiveGateway_0df2lf1" targetRef="ScriptTask_0zeodmx">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${deleted}</bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_035k1kv" sourceRef="ExclusiveGateway_04n8k6e" targetRef="ScriptTask_1d0llw5" />
+    <bpmn:sequenceFlow id="SequenceFlow_11htm0z" sourceRef="ExclusiveGateway_0df2lf1" targetRef="ScriptTask_1d0llw5" />
+    <bpmn:scriptTask id="checkDelete" name="Verify Delete" scriptFormat="JavaScript">
+      <bpmn:incoming>SequenceFlow_1rdc2w4</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1hq011g</bpmn:outgoing>
+      <bpmn:script>var System = java.lang.System 
+
+var deleteVthId = 'delete'
+var testData = execution.getVariable("testData")
+var vthInput = execution.getVariable("vthInput")
+var deleted = false;
+var testResultMessage = "RIC VTH reported that the xapp was not deleted."
+
+
+
+try {
+  //get output from delete call
+  var testExecution = execution.getVariable('otf-execution-testExecution');
+  var data = null;
+  testExecution.testHeadResults.forEach(function(item, index, array) {
+    if(item.bpmnVthTaskId == deleteVthId ){
+      data = item['testHeadResponse']['vthResponse']['resultData']['statusCode'];
+    }
+  })
+  
+  if(data === 204){
+    deleted = true
+    testResultMessage = "RIC VTH reported that the xapp was deleted."
+  }
+  
+}
+catch(err) {
+  deleted = false
+}
+
+execution.setVariable("deleted", deleted);
+execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:sequenceFlow id="SequenceFlow_1hq011g" sourceRef="checkDelete" targetRef="ExclusiveGateway_0df2lf1" />
+    <bpmn:task id="ServiceTask_0yfqtmz" name="UTIL:LogTestResult">
+      <bpmn:incoming>SequenceFlow_1ivi698</bpmn:incoming>
+      <bpmn:incoming>SequenceFlow_1s62i1u</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1czqxne</bpmn:outgoing>
+    </bpmn:task>
+    <bpmn:task id="delete" name="LVTH:RIC:Delete">
+      <bpmn:incoming>SequenceFlow_1xykozf</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1rdc2w4</bpmn:outgoing>
+    </bpmn:task>
+  </bpmn:process>
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Delete_xAPP_Test">
+      <bpmndi:BPMNShape id="StartEvent_0cebtfp_di" bpmnElement="StartEvent_0cebtfp">
+        <dc:Bounds x="156" y="103" width="36" height="36" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0rqy7r1_di" bpmnElement="verify">
+        <dc:Bounds x="234" y="81" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ExclusiveGateway_04n8k6e_di" bpmnElement="ExclusiveGateway_04n8k6e" isMarkerVisible="true">
+        <dc:Bounds x="385" y="96" width="50" height="50" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_03vt4gu_di" bpmnElement="SequenceFlow_03vt4gu">
+        <di:waypoint x="192" y="121" />
+        <di:waypoint x="234" y="121" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1gceb7d_di" bpmnElement="SequenceFlow_1gceb7d">
+        <di:waypoint x="334" y="121" />
+        <di:waypoint x="385" y="121" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1xykozf_di" bpmnElement="SequenceFlow_1xykozf">
+        <di:waypoint x="435" y="121" />
+        <di:waypoint x="489" y="121" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="434" y="100" width="46" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_1d0llw5_di" bpmnElement="ScriptTask_1d0llw5">
+        <dc:Bounds x="749" y="336" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0zeodmx_di" bpmnElement="ScriptTask_0zeodmx">
+        <dc:Bounds x="878" y="81" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_0wf03rq_di" bpmnElement="EndEvent_0wf03rq">
+        <dc:Bounds x="1169" y="103" width="36" height="36" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1ivi698_di" bpmnElement="SequenceFlow_1ivi698">
+        <di:waypoint x="849" y="376" />
+        <di:waypoint x="1065" y="376" />
+        <di:waypoint x="1065" y="161" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1s62i1u_di" bpmnElement="SequenceFlow_1s62i1u">
+        <di:waypoint x="978" y="121" />
+        <di:waypoint x="1015" y="121" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1czqxne_di" bpmnElement="SequenceFlow_1czqxne">
+        <di:waypoint x="1115" y="121" />
+        <di:waypoint x="1169" y="121" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ExclusiveGateway_0df2lf1_di" bpmnElement="ExclusiveGateway_0df2lf1" isMarkerVisible="true">
+        <dc:Bounds x="774" y="96" width="50" height="50" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1rdc2w4_di" bpmnElement="SequenceFlow_1rdc2w4">
+        <di:waypoint x="589" y="121" />
+        <di:waypoint x="629" y="121" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1fcorq2_di" bpmnElement="SequenceFlow_1fcorq2">
+        <di:waypoint x="824" y="121" />
+        <di:waypoint x="878" y="121" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="827" y="99" width="38" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_035k1kv_di" bpmnElement="SequenceFlow_035k1kv">
+        <di:waypoint x="410" y="146" />
+        <di:waypoint x="410" y="376" />
+        <di:waypoint x="749" y="376" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_11htm0z_di" bpmnElement="SequenceFlow_11htm0z">
+        <di:waypoint x="799" y="146" />
+        <di:waypoint x="799" y="336" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_0td2q01_di" bpmnElement="checkDelete">
+        <dc:Bounds x="629" y="81" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1hq011g_di" bpmnElement="SequenceFlow_1hq011g">
+        <di:waypoint x="729" y="121" />
+        <di:waypoint x="774" y="121" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="Task_1tklwc0_di" bpmnElement="ServiceTask_0yfqtmz">
+        <dc:Bounds x="1015" y="81" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="Task_026zsim_di" bpmnElement="delete">
+        <dc:Bounds x="489" y="81" width="100" height="80" />
+      </bpmndi:BPMNShape>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn:definitions>
index bf2b3d9..9cefb0e 100644 (file)
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_0cpfikh" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.0.1">
-  <bpmn:process id="Deploy_xAPP_Test" name="Deploy xAPP Test" isExecutable="true">
-    <bpmn:startEvent id="StartEvent_1" camunda:asyncBefore="true">
-      <bpmn:outgoing>SequenceFlow_0st7o3p</bpmn:outgoing>
-    </bpmn:startEvent>
-    <bpmn:sequenceFlow id="SequenceFlow_0st7o3p" sourceRef="StartEvent_1" targetRef="ScriptTask_08k2jy1" />
-    <bpmn:sequenceFlow id="SequenceFlow_0j9397y" sourceRef="ready" targetRef="verify_ready" />
-    <bpmn:sequenceFlow id="SequenceFlow_0e1kt1e" sourceRef="verify_ready" targetRef="ExclusiveGateway_1u1b164" />
-    <bpmn:sequenceFlow id="SequenceFlow_0zxo4fr" name="Ready" sourceRef="ExclusiveGateway_1u1b164" targetRef="first_list">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${ready}</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_1chkfad" name="Not Ready" sourceRef="ExclusiveGateway_1u1b164" targetRef="mark_failure" />
-    <bpmn:sequenceFlow id="SequenceFlow_0s6ntyv" sourceRef="first_list" targetRef="alreadyDeployed" />
-    <bpmn:sequenceFlow id="SequenceFlow_1oze54u" sourceRef="deploy" targetRef="IntermediateThrowEvent_0aoxbne" />
-    <bpmn:sequenceFlow id="SequenceFlow_07jnolr" sourceRef="second_list" targetRef="verify_deploy" />
-    <bpmn:sequenceFlow id="SequenceFlow_08wazou" sourceRef="verify_deploy" targetRef="ExclusiveGateway_05eh6vk" />
-    <bpmn:sequenceFlow id="SequenceFlow_0nfij3v" name="xAPP deploy failed" sourceRef="ExclusiveGateway_05eh6vk" targetRef="mark_failure" />
-    <bpmn:sequenceFlow id="SequenceFlow_18bpwal" sourceRef="mark_success" targetRef="log_test_result" />
-    <bpmn:sequenceFlow id="SequenceFlow_07rma3l" sourceRef="IntermediateThrowEvent_0aoxbne" targetRef="second_list" />
-    <bpmn:sequenceFlow id="SequenceFlow_01cc25d" sourceRef="log_test_result" targetRef="EndEvent_0lg4zm4" />
-    <bpmn:sequenceFlow id="SequenceFlow_1u9jrl1" sourceRef="mark_failure" targetRef="log_test_result" />
-    <bpmn:sequenceFlow id="SequenceFlow_08hkwrc" name="xAPP deployed" sourceRef="ExclusiveGateway_05eh6vk" targetRef="mark_success">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${deployed}</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_18luk66" sourceRef="ScriptTask_08k2jy1" targetRef="ExclusiveGateway_10o6bsf" />
-    <bpmn:sequenceFlow id="SequenceFlow_1y69zdb" sourceRef="ExclusiveGateway_10o6bsf" targetRef="ready">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${validInput}</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_0g7zkcv" name="Bad Input" sourceRef="ExclusiveGateway_10o6bsf" targetRef="mark_failure" />
-    <bpmn:sequenceFlow id="SequenceFlow_08v4jva" name="Not Deployed" sourceRef="ExclusiveGateway_0ridg34" targetRef="deploy">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${!alreadyDeployed}</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_0dscvt7" name="Already Deployed" sourceRef="ExclusiveGateway_0ridg34" targetRef="mark_failure" />
-    <bpmn:sequenceFlow id="SequenceFlow_0i3et2n" sourceRef="alreadyDeployed" targetRef="ExclusiveGateway_0ridg34" />
-    <bpmn:scriptTask id="verify_ready" name="Verify xAPP Manager is Ready" scriptFormat="JavaScript">
-      <bpmn:incoming>SequenceFlow_0j9397y</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0e1kt1e</bpmn:outgoing>
-      <bpmn:script>var System = java.lang.System 
-
-var readyVthId = 'ready'
-var testData = execution.getVariable("testData")
-var vthInput = execution.getVariable("vthInput")
-var ready = false;
-var testResultMessage = "RIC VTH reported that xAppManager is not ready."
-
-
-
-try {
-  //get output from ready call
-  var testExecution = execution.getVariable('otf-execution-testExecution');
-  var data = null;
-  testExecution.testHeadResults.forEach(function(item, index, array) {
-    if(item.bpmnVthTaskId == readyVthId ){
-      data = item['testHeadResponse']['vthResponse']['resultData']['statusCode'];
-    }
-  })
-  
-  if(data === 200){
-    ready = true
-    testResultMessage = "RIC VTH reported that xAppManager is ready."
-  }
-  
-}
-catch(err) {
-  ready = false
-}
-
-execution.setVariable("ready", ready);
-execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:scriptTask id="mark_failure" name="Mark Test Failure" scriptFormat="JavaScript">
-      <bpmn:incoming>SequenceFlow_1chkfad</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_0nfij3v</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_0g7zkcv</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_0dscvt7</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1u9jrl1</bpmn:outgoing>
-      <bpmn:script>execution.setVariable("testResult", "FAILED")</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:scriptTask id="mark_success" name="Mark Test Success" scriptFormat="JavaScript">
-      <bpmn:incoming>SequenceFlow_08hkwrc</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_18bpwal</bpmn:outgoing>
-      <bpmn:script>execution.setVariable("testResult", "SUCCESS")</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:scriptTask id="verify_deploy" name="Compare xAPP list and validate test" scriptFormat="JavaScript">
-      <bpmn:incoming>SequenceFlow_07jnolr</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_08wazou</bpmn:outgoing>
-      <bpmn:script>var System = java.lang.System 
-
-var deploy = 'deploy'
-var secondList = 'second_list'
-var testData = execution.getVariable("testData")
-var vthInput = execution.getVariable("vthInput")
-var deployed = false;
-var testResultMessage = "RIC VTH reported that xApp is not deployed."
-var appName = testData['appName']
-
-
-
-try {
-  //get output from deploy call
-  var testExecution = execution.getVariable('otf-execution-testExecution');
-  data = null;
-  testExecution.testHeadResults.forEach(function(item, index, array) {
-    if(item.bpmnVthTaskId == deploy ){
-      data = item['testHeadResponse']['vthResponse']['resultData']['statusCode'];
-    }
-  })
-
-  if(data === 201){
-    testResultMessage = "RIC VTH reported that xAppManager deployment call succeeded."
-
-    //get output from secondList call
-    var testExecution = execution.getVariable('otf-execution-testExecution');
-    data = null;
-    testExecution.testHeadResults.forEach(function(item, index, array) {
-      if(item.bpmnVthTaskId == secondList ){
-        data = item['testHeadResponse']['vthResponse']['resultData']['resultOutput'];
-      }
-    })
-
-    instance = null
-    data.forEach(function(item, index, array) {
-      if(item.name === appName){
-        instance = item
-        testResultMessage = "RIC VTH reported that xApp is present."
-      }
-    })
-
-    if(instance !== null &amp;&amp; instance.status === 'deployed'){
-      deployed = true
-      testResultMessage = "RIC VTH reported that xApp is deployed."
-      testDetails = execution.getVariable("testDetails")
-      testDetails.put("instance", instance);
-      execution.setVariable("testDetails", testDetails)
-    }  
-    else{
-      deployed = false
-      testResultMessage = "RIC VTH reported that xApp was deployed, but xApp instance was either null or not deployed. See vth results for further information."
-    }
-
-  }
-  
-}
-catch(err) {
-  deployed = false
-  testResultMessage = "Couldn't verify is xApp was deployed. Check Test Results"  + err
-}
-
-execution.setVariable("deployed", deployed);
-execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:scriptTask id="ScriptTask_08k2jy1" name="Verify Inputs" scriptFormat="JavaScript">
-      <bpmn:incoming>SequenceFlow_0st7o3p</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_18luk66</bpmn:outgoing>
-      <bpmn:script>var System = java.lang.System 
-
-var deployVthId = 'deploy'
-var testData = execution.getVariable("testData")
-var vthInput = execution.getVariable("vthInput")
-var validInput = false;
-var testResultMessage = "";
-
-try{
-
-  var appName = testData['appName'];
-  var waitDurationSec = testData['waitDurationSec'];
-
-  if(typeof appName  !== 'string' || appName.trim() === ''){
-    System.out.println("appName is not a string, or empty string")
-    throw Error("appName is not a string, or empty string")
-  }
-
-  if(typeof waitDurationSec !== 'number' || waitDurationSec &lt; 0){
-    System.out.println("not a number")
-    throw Error("waitDurationSec is not a number greater than 0")
-  }
-
-  validInput = true
-
-  vthInput[deployVthId].name = appName
-  var timer = "PT" + waitDurationSec + "S"
-  System.out.println("timer " + timer)
-  execution.setVariable("timer", timer)
-}
-catch(err){
-  System.out.println(err)
-  validInput = false
-  testResultMessage = "Invalid input params. error: " + err;
-  execution.setVariable("testResult", "FAILED");
-}
-
-execution.setVariable("validInput", validInput)
-execution.setVariable("testResultMessage", testResultMessage)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:scriptTask id="alreadyDeployed" name="Check if xAPP is already deployed" scriptFormat="JavaScript">
-      <bpmn:incoming>SequenceFlow_0s6ntyv</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0i3et2n</bpmn:outgoing>
-      <bpmn:script>var System = java.lang.System 
-
-var firstList = 'first_list'
-var testData = execution.getVariable("testData")
-var vthInput = execution.getVariable("vthInput")
-var alreadyDeployed = true;
-var testResultMessage = "RIC VTH reported that xApp is already deployed."
-var appName = testData['appName']
-
-
-
-try {
-  //get output from firstList call
-  var testExecution = execution.getVariable('otf-execution-testExecution');
-  var data = null;
-  testExecution.testHeadResults.forEach(function(item, index, array) {
-    if(item.bpmnVthTaskId == firstList ){
-      data = item['testHeadResponse']['vthResponse']['resultData']['resultOutput'];
-    }
-  })
-
-  var instance = null
-  data.forEach(function(item, index, array) {
-    if(item.name === appName){
-      instance = item
-      testResultMessage = "RIC VTH reported that xApp is already present."
-    }
-  })
-
-  if(instance === null){
-    alreadyDeployed = false
-    testResultMessage = "RIC VTH reported that xApp is not present."
-  }  
-
-  
-}
-catch(err) {
-  alreadyDeployed = true
-  testResultMessage = "Couldn't verify is xApp was already deployed."
-}
-
-execution.setVariable("alreadyDeployed", alreadyDeployed);
-execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:exclusiveGateway id="ExclusiveGateway_1u1b164" default="SequenceFlow_1chkfad">
-      <bpmn:incoming>SequenceFlow_0e1kt1e</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0zxo4fr</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_1chkfad</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:exclusiveGateway id="ExclusiveGateway_05eh6vk" default="SequenceFlow_0nfij3v">
-      <bpmn:incoming>SequenceFlow_08wazou</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0nfij3v</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_08hkwrc</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:exclusiveGateway id="ExclusiveGateway_10o6bsf" default="SequenceFlow_0g7zkcv">
-      <bpmn:incoming>SequenceFlow_18luk66</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1y69zdb</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_0g7zkcv</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:exclusiveGateway id="ExclusiveGateway_0ridg34" default="SequenceFlow_0dscvt7">
-      <bpmn:incoming>SequenceFlow_0i3et2n</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_08v4jva</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_0dscvt7</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:intermediateCatchEvent id="IntermediateThrowEvent_0aoxbne">
-      <bpmn:incoming>SequenceFlow_1oze54u</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_07rma3l</bpmn:outgoing>
-      <bpmn:timerEventDefinition>
-        <bpmn:timeDuration xsi:type="bpmn:tFormalExpression">${timer}</bpmn:timeDuration>
-      </bpmn:timerEventDefinition>
-    </bpmn:intermediateCatchEvent>
-    <bpmn:endEvent id="EndEvent_0lg4zm4">
-      <bpmn:incoming>SequenceFlow_01cc25d</bpmn:incoming>
-      <bpmn:terminateEventDefinition />
-    </bpmn:endEvent>
-    <bpmn:serviceTask id="ready" name="VTH:RIC:Ready" camunda:delegateExpression="${callTestHeadDelegate}">
-      <bpmn:incoming>SequenceFlow_1y69zdb</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0j9397y</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:serviceTask id="first_list" name="VTH:RIC:List" camunda:delegateExpression="${callTestHeadDelegate}">
-      <bpmn:incoming>SequenceFlow_0zxo4fr</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0s6ntyv</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:serviceTask id="deploy" name="VTH:RIC:Deploy" camunda:delegateExpression="${callTestHeadDelegate}">
-      <bpmn:incoming>SequenceFlow_08v4jva</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1oze54u</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:serviceTask id="second_list" name="VTH:RIC:List" camunda:delegateExpression="${callTestHeadDelegate}">
-      <bpmn:incoming>SequenceFlow_07rma3l</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_07jnolr</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:serviceTask id="log_test_result" name="UTIL:LogTestResult" camunda:delegateExpression="${logTestResultDelegate}">
-      <bpmn:incoming>SequenceFlow_18bpwal</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_1u9jrl1</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_01cc25d</bpmn:outgoing>
-    </bpmn:serviceTask>
-  </bpmn:process>
-  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
-    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Deploy_xAPP_Test">
-      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
-        <dc:Bounds x="156" y="190" width="36" height="36" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_01o5d6n_di" bpmnElement="verify_ready">
-        <dc:Bounds x="660" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ExclusiveGateway_1u1b164_di" bpmnElement="ExclusiveGateway_1u1b164" isMarkerVisible="true">
-        <dc:Bounds x="804" y="183" width="50" height="50" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="IntermediateCatchEvent_0o4pf4x_di" bpmnElement="IntermediateThrowEvent_0aoxbne">
-        <dc:Bounds x="1455" y="190" width="36" height="36" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ExclusiveGateway_05eh6vk_di" bpmnElement="ExclusiveGateway_05eh6vk" isMarkerVisible="true">
-        <dc:Bounds x="1884" y="183" width="50" height="50" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0iya1du_di" bpmnElement="mark_failure">
-        <dc:Bounds x="1859" y="423" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_1dygfw7_di" bpmnElement="mark_success">
-        <dc:Bounds x="2069" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_15niqin_di" bpmnElement="EndEvent_0lg4zm4">
-        <dc:Bounds x="2407" y="190" width="36" height="36" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0qmq6pn_di" bpmnElement="verify_deploy">
-        <dc:Bounds x="1728" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="Task_0smfzp7_di" bpmnElement="ready">
-        <dc:Bounds x="508" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="Task_0p2tcjd_di" bpmnElement="first_list">
-        <dc:Bounds x="905" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="Task_14wupjq_di" bpmnElement="deploy">
-        <dc:Bounds x="1288" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="Task_1wygysw_di" bpmnElement="second_list">
-        <dc:Bounds x="1563" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="Task_0lcfr55_di" bpmnElement="log_test_result">
-        <dc:Bounds x="2253" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_08k2jy1_di" bpmnElement="ScriptTask_08k2jy1">
-        <dc:Bounds x="240" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ExclusiveGateway_10o6bsf_di" bpmnElement="ExclusiveGateway_10o6bsf" isMarkerVisible="true">
-        <dc:Bounds x="381" y="183" width="50" height="50" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ExclusiveGateway_0ridg34_di" bpmnElement="ExclusiveGateway_0ridg34" isMarkerVisible="true">
-        <dc:Bounds x="1165" y="183" width="50" height="50" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0snkxz0_di" bpmnElement="alreadyDeployed">
-        <dc:Bounds x="1040" y="168" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_0st7o3p_di" bpmnElement="SequenceFlow_0st7o3p">
-        <di:waypoint x="192" y="208" />
-        <di:waypoint x="240" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0j9397y_di" bpmnElement="SequenceFlow_0j9397y">
-        <di:waypoint x="608" y="208" />
-        <di:waypoint x="660" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0e1kt1e_di" bpmnElement="SequenceFlow_0e1kt1e">
-        <di:waypoint x="760" y="208" />
-        <di:waypoint x="804" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0zxo4fr_di" bpmnElement="SequenceFlow_0zxo4fr">
-        <di:waypoint x="854" y="208" />
-        <di:waypoint x="905" y="208" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="854" y="189" width="33" height="14" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1chkfad_di" bpmnElement="SequenceFlow_1chkfad">
-        <di:waypoint x="829" y="233" />
-        <di:waypoint x="829" y="463" />
-        <di:waypoint x="1859" y="463" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="839" y="347" width="53" height="14" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0s6ntyv_di" bpmnElement="SequenceFlow_0s6ntyv">
-        <di:waypoint x="1005" y="208" />
-        <di:waypoint x="1040" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1oze54u_di" bpmnElement="SequenceFlow_1oze54u">
-        <di:waypoint x="1388" y="208" />
-        <di:waypoint x="1455" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_07jnolr_di" bpmnElement="SequenceFlow_07jnolr">
-        <di:waypoint x="1663" y="208" />
-        <di:waypoint x="1728" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_08wazou_di" bpmnElement="SequenceFlow_08wazou">
-        <di:waypoint x="1828" y="208" />
-        <di:waypoint x="1884" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0nfij3v_di" bpmnElement="SequenceFlow_0nfij3v">
-        <di:waypoint x="1909" y="233" />
-        <di:waypoint x="1909" y="423" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1924" y="272" width="63" height="27" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_18bpwal_di" bpmnElement="SequenceFlow_18bpwal">
-        <di:waypoint x="2169" y="208" />
-        <di:waypoint x="2253" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_07rma3l_di" bpmnElement="SequenceFlow_07rma3l">
-        <di:waypoint x="1491" y="208" />
-        <di:waypoint x="1563" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_01cc25d_di" bpmnElement="SequenceFlow_01cc25d">
-        <di:waypoint x="2353" y="208" />
-        <di:waypoint x="2407" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1u9jrl1_di" bpmnElement="SequenceFlow_1u9jrl1">
-        <di:waypoint x="1959" y="463" />
-        <di:waypoint x="2303" y="463" />
-        <di:waypoint x="2303" y="248" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_08hkwrc_di" bpmnElement="SequenceFlow_08hkwrc">
-        <di:waypoint x="1934" y="208" />
-        <di:waypoint x="2069" y="208" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1964" y="190" width="75" height="14" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_18luk66_di" bpmnElement="SequenceFlow_18luk66">
-        <di:waypoint x="340" y="208" />
-        <di:waypoint x="381" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1y69zdb_di" bpmnElement="SequenceFlow_1y69zdb">
-        <di:waypoint x="431" y="208" />
-        <di:waypoint x="508" y="208" />
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0g7zkcv_di" bpmnElement="SequenceFlow_0g7zkcv">
-        <di:waypoint x="406" y="233" />
-        <di:waypoint x="406" y="463" />
-        <di:waypoint x="1859" y="463" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="416" y="360" width="49" height="14" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_08v4jva_di" bpmnElement="SequenceFlow_08v4jva">
-        <di:waypoint x="1215" y="208" />
-        <di:waypoint x="1288" y="208" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1218" y="190" width="67" height="14" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0dscvt7_di" bpmnElement="SequenceFlow_0dscvt7">
-        <di:waypoint x="1190" y="233" />
-        <di:waypoint x="1190" y="463" />
-        <di:waypoint x="1859" y="463" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1205" y="357" width="86" height="14" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0i3et2n_di" bpmnElement="SequenceFlow_0i3et2n">
-        <di:waypoint x="1140" y="208" />
-        <di:waypoint x="1165" y="208" />
-      </bpmndi:BPMNEdge>
-    </bpmndi:BPMNPlane>
-  </bpmndi:BPMNDiagram>
-</bpmn:definitions>
+<?xml version="1.0" encoding="UTF-8"?>\r
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_0cpfikh" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.0.1">\r
+  <bpmn:process id="Deploy_xAPP_Test" name="Deploy xAPP Test" isExecutable="true">\r
+    <bpmn:startEvent id="StartEvent_1" camunda:asyncBefore="true">\r
+      <bpmn:outgoing>SequenceFlow_0st7o3p</bpmn:outgoing>\r
+    </bpmn:startEvent>\r
+    <bpmn:sequenceFlow id="SequenceFlow_0st7o3p" sourceRef="StartEvent_1" targetRef="ScriptTask_08k2jy1" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_0j9397y" sourceRef="ready" targetRef="verify_ready" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_0e1kt1e" sourceRef="verify_ready" targetRef="ExclusiveGateway_1u1b164" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_0zxo4fr" name="Ready" sourceRef="ExclusiveGateway_1u1b164" targetRef="first_list">\r
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${ready}</bpmn:conditionExpression>\r
+    </bpmn:sequenceFlow>\r
+    <bpmn:sequenceFlow id="SequenceFlow_1chkfad" name="Not Ready" sourceRef="ExclusiveGateway_1u1b164" targetRef="mark_failure" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_0s6ntyv" sourceRef="first_list" targetRef="alreadyDeployed" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_1oze54u" sourceRef="deploy" targetRef="IntermediateThrowEvent_0aoxbne" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_07jnolr" sourceRef="second_list" targetRef="verify_deploy" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_08wazou" sourceRef="verify_deploy" targetRef="ExclusiveGateway_05eh6vk" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_0nfij3v" name="xAPP deploy failed" sourceRef="ExclusiveGateway_05eh6vk" targetRef="mark_failure" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_18bpwal" sourceRef="mark_success" targetRef="log_test_result" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_07rma3l" sourceRef="IntermediateThrowEvent_0aoxbne" targetRef="second_list" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_01cc25d" sourceRef="log_test_result" targetRef="EndEvent_0lg4zm4" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_1u9jrl1" sourceRef="mark_failure" targetRef="log_test_result" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_08hkwrc" name="xAPP deployed" sourceRef="ExclusiveGateway_05eh6vk" targetRef="mark_success">\r
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${deployed}</bpmn:conditionExpression>\r
+    </bpmn:sequenceFlow>\r
+    <bpmn:sequenceFlow id="SequenceFlow_18luk66" sourceRef="ScriptTask_08k2jy1" targetRef="ExclusiveGateway_10o6bsf" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_1y69zdb" sourceRef="ExclusiveGateway_10o6bsf" targetRef="ready">\r
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${validInput}</bpmn:conditionExpression>\r
+    </bpmn:sequenceFlow>\r
+    <bpmn:sequenceFlow id="SequenceFlow_0g7zkcv" name="Bad Input" sourceRef="ExclusiveGateway_10o6bsf" targetRef="mark_failure" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_08v4jva" name="Not Deployed" sourceRef="ExclusiveGateway_0ridg34" targetRef="deploy">\r
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${!alreadyDeployed}</bpmn:conditionExpression>\r
+    </bpmn:sequenceFlow>\r
+    <bpmn:sequenceFlow id="SequenceFlow_0dscvt7" name="Already Deployed" sourceRef="ExclusiveGateway_0ridg34" targetRef="mark_failure" />\r
+    <bpmn:sequenceFlow id="SequenceFlow_0i3et2n" sourceRef="alreadyDeployed" targetRef="ExclusiveGateway_0ridg34" />\r
+    <bpmn:scriptTask id="verify_ready" name="Verify xAPP Manager is Ready" scriptFormat="JavaScript">\r
+      <bpmn:incoming>SequenceFlow_0j9397y</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_0e1kt1e</bpmn:outgoing>\r
+      <bpmn:script>var System = java.lang.System \r
+\r
+var readyVthId = 'ready'\r
+var testData = execution.getVariable("testData")\r
+var vthInput = execution.getVariable("vthInput")\r
+var ready = false;\r
+var testResultMessage = "RIC VTH reported that xAppManager is not ready."\r
+\r
+\r
+\r
+try {\r
+  //get output from ready call\r
+  var testExecution = execution.getVariable('otf-execution-testExecution');\r
+  var data = null;\r
+  testExecution.testHeadResults.forEach(function(item, index, array) {\r
+    if(item.bpmnVthTaskId == readyVthId ){\r
+      data = item['testHeadResponse']['vthResponse']['resultData']['statusCode'];\r
+    }\r
+  })\r
+  \r
+  if(data === 200){\r
+    ready = true\r
+    testResultMessage = "RIC VTH reported that xAppManager is ready."\r
+  }\r
+  \r
+}\r
+catch(err) {\r
+  ready = false\r
+}\r
+\r
+execution.setVariable("ready", ready);\r
+execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>\r
+    </bpmn:scriptTask>\r
+    <bpmn:scriptTask id="mark_failure" name="Mark Test Failure" scriptFormat="JavaScript">\r
+      <bpmn:incoming>SequenceFlow_1chkfad</bpmn:incoming>\r
+      <bpmn:incoming>SequenceFlow_0nfij3v</bpmn:incoming>\r
+      <bpmn:incoming>SequenceFlow_0g7zkcv</bpmn:incoming>\r
+      <bpmn:incoming>SequenceFlow_0dscvt7</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_1u9jrl1</bpmn:outgoing>\r
+      <bpmn:script>execution.setVariable("testResult", "FAILED")</bpmn:script>\r
+    </bpmn:scriptTask>\r
+    <bpmn:scriptTask id="mark_success" name="Mark Test Success" scriptFormat="JavaScript">\r
+      <bpmn:incoming>SequenceFlow_08hkwrc</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_18bpwal</bpmn:outgoing>\r
+      <bpmn:script>execution.setVariable("testResult", "SUCCESS")</bpmn:script>\r
+    </bpmn:scriptTask>\r
+    <bpmn:scriptTask id="verify_deploy" name="Compare xAPP list and validate test" scriptFormat="JavaScript">\r
+      <bpmn:incoming>SequenceFlow_07jnolr</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_08wazou</bpmn:outgoing>\r
+      <bpmn:script>var System = java.lang.System \r
+\r
+var deploy = 'deploy'\r
+var secondList = 'second_list'\r
+var testData = execution.getVariable("testData")\r
+var vthInput = execution.getVariable("vthInput")\r
+var deployed = false;\r
+var testResultMessage = "RIC VTH reported that xApp is not deployed."\r
+var appName = testData['appName']\r
+\r
+\r
+\r
+try {\r
+  //get output from deploy call\r
+  var testExecution = execution.getVariable('otf-execution-testExecution');\r
+  data = null;\r
+  testExecution.testHeadResults.forEach(function(item, index, array) {\r
+    if(item.bpmnVthTaskId == deploy ){\r
+      data = item['testHeadResponse']['vthResponse']['resultData']['statusCode'];\r
+    }\r
+  })\r
+\r
+  if(data === 201){\r
+    testResultMessage = "RIC VTH reported that xAppManager deployment call succeeded."\r
+\r
+    //get output from secondList call\r
+    var testExecution = execution.getVariable('otf-execution-testExecution');\r
+    data = null;\r
+    testExecution.testHeadResults.forEach(function(item, index, array) {\r
+      if(item.bpmnVthTaskId == secondList ){\r
+        data = item['testHeadResponse']['vthResponse']['resultData']['resultOutput'];\r
+      }\r
+    })\r
+\r
+    instance = null\r
+    data.forEach(function(item, index, array) {\r
+      if(item.name === appName){\r
+        instance = item\r
+        testResultMessage = "RIC VTH reported that xApp is present."\r
+      }\r
+    })\r
+\r
+    if(instance !== null &amp;&amp; instance.status === 'deployed'){\r
+      deployed = true\r
+      testResultMessage = "RIC VTH reported that xApp is deployed."\r
+      testDetails = execution.getVariable("testDetails")\r
+      testDetails.put("instance", instance);\r
+      execution.setVariable("testDetails", testDetails)\r
+    }  \r
+    else{\r
+      deployed = false\r
+      testResultMessage = "RIC VTH reported that xApp was deployed, but xApp instance was either null or not deployed. See vth results for further information."\r
+    }\r
+\r
+  }\r
+  \r
+}\r
+catch(err) {\r
+  deployed = false\r
+  testResultMessage = "Couldn't verify is xApp was deployed. Check Test Results"  + err\r
+}\r
+\r
+execution.setVariable("deployed", deployed);\r
+execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>\r
+    </bpmn:scriptTask>\r
+    <bpmn:scriptTask id="ScriptTask_08k2jy1" name="Verify Inputs" scriptFormat="JavaScript">\r
+      <bpmn:incoming>SequenceFlow_0st7o3p</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_18luk66</bpmn:outgoing>\r
+      <bpmn:script>var System = java.lang.System \r
+\r
+var deployVthId = 'deploy'\r
+var testData = execution.getVariable("testData")\r
+var vthInput = execution.getVariable("vthInput")\r
+var validInput = false;\r
+var testResultMessage = "";\r
+\r
+try{\r
+\r
+  var appName = testData['appName'];\r
+  var waitDurationSec = testData['waitDurationSec'];\r
+\r
+  if(typeof appName  !== 'string' || appName.trim() === ''){\r
+    System.out.println("appName is not a string, or empty string")\r
+    throw Error("appName is not a string, or empty string")\r
+  }\r
+\r
+  if(typeof waitDurationSec !== 'number' || waitDurationSec &lt; 0){\r
+    System.out.println("not a number")\r
+    throw Error("waitDurationSec is not a number greater than 0")\r
+  }\r
+\r
+  validInput = true\r
+\r
+  vthInput[deployVthId].name = appName\r
+  var timer = "PT" + waitDurationSec + "S"\r
+  System.out.println("timer " + timer)\r
+  execution.setVariable("timer", timer)\r
+}\r
+catch(err){\r
+  System.out.println(err)\r
+  validInput = false\r
+  testResultMessage = "Invalid input params. error: " + err;\r
+  execution.setVariable("testResult", "FAILED");\r
+}\r
+\r
+execution.setVariable("validInput", validInput)\r
+execution.setVariable("testResultMessage", testResultMessage)</bpmn:script>\r
+    </bpmn:scriptTask>\r
+    <bpmn:scriptTask id="alreadyDeployed" name="Check if xAPP is already deployed" scriptFormat="JavaScript">\r
+      <bpmn:incoming>SequenceFlow_0s6ntyv</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_0i3et2n</bpmn:outgoing>\r
+      <bpmn:script>var System = java.lang.System \r
+\r
+var firstList = 'first_list'\r
+var testData = execution.getVariable("testData")\r
+var vthInput = execution.getVariable("vthInput")\r
+var alreadyDeployed = true;\r
+var testResultMessage = "RIC VTH reported that xApp is already deployed."\r
+var appName = testData['appName']\r
+\r
+\r
+\r
+try {\r
+  //get output from firstList call\r
+  var testExecution = execution.getVariable('otf-execution-testExecution');\r
+  var data = null;\r
+  testExecution.testHeadResults.forEach(function(item, index, array) {\r
+    if(item.bpmnVthTaskId == firstList ){\r
+      data = item['testHeadResponse']['vthResponse']['resultData']['resultOutput'];\r
+    }\r
+  })\r
+\r
+  var instance = null\r
+  data.forEach(function(item, index, array) {\r
+    if(item.name === appName){\r
+      instance = item\r
+      testResultMessage = "RIC VTH reported that xApp is already present."\r
+    }\r
+  })\r
+\r
+  if(instance === null){\r
+    alreadyDeployed = false\r
+    testResultMessage = "RIC VTH reported that xApp is not present."\r
+  }  \r
+\r
+  \r
+}\r
+catch(err) {\r
+  alreadyDeployed = true\r
+  testResultMessage = "Couldn't verify is xApp was already deployed."\r
+}\r
+\r
+execution.setVariable("alreadyDeployed", alreadyDeployed);\r
+execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>\r
+    </bpmn:scriptTask>\r
+    <bpmn:exclusiveGateway id="ExclusiveGateway_1u1b164" default="SequenceFlow_1chkfad">\r
+      <bpmn:incoming>SequenceFlow_0e1kt1e</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_0zxo4fr</bpmn:outgoing>\r
+      <bpmn:outgoing>SequenceFlow_1chkfad</bpmn:outgoing>\r
+    </bpmn:exclusiveGateway>\r
+    <bpmn:exclusiveGateway id="ExclusiveGateway_05eh6vk" default="SequenceFlow_0nfij3v">\r
+      <bpmn:incoming>SequenceFlow_08wazou</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_0nfij3v</bpmn:outgoing>\r
+      <bpmn:outgoing>SequenceFlow_08hkwrc</bpmn:outgoing>\r
+    </bpmn:exclusiveGateway>\r
+    <bpmn:exclusiveGateway id="ExclusiveGateway_10o6bsf" default="SequenceFlow_0g7zkcv">\r
+      <bpmn:incoming>SequenceFlow_18luk66</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_1y69zdb</bpmn:outgoing>\r
+      <bpmn:outgoing>SequenceFlow_0g7zkcv</bpmn:outgoing>\r
+    </bpmn:exclusiveGateway>\r
+    <bpmn:exclusiveGateway id="ExclusiveGateway_0ridg34" default="SequenceFlow_0dscvt7">\r
+      <bpmn:incoming>SequenceFlow_0i3et2n</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_08v4jva</bpmn:outgoing>\r
+      <bpmn:outgoing>SequenceFlow_0dscvt7</bpmn:outgoing>\r
+    </bpmn:exclusiveGateway>\r
+    <bpmn:intermediateCatchEvent id="IntermediateThrowEvent_0aoxbne">\r
+      <bpmn:incoming>SequenceFlow_1oze54u</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_07rma3l</bpmn:outgoing>\r
+      <bpmn:timerEventDefinition>\r
+        <bpmn:timeDuration xsi:type="bpmn:tFormalExpression">${timer}</bpmn:timeDuration>\r
+      </bpmn:timerEventDefinition>\r
+    </bpmn:intermediateCatchEvent>\r
+    <bpmn:endEvent id="EndEvent_0lg4zm4">\r
+      <bpmn:incoming>SequenceFlow_01cc25d</bpmn:incoming>\r
+      <bpmn:terminateEventDefinition />\r
+    </bpmn:endEvent>\r
+    <bpmn:serviceTask id="ready" name="LVTH:RIC:Ready" camunda:delegateExpression="${callTestHeadDelegate}">\r
+      <bpmn:incoming>SequenceFlow_1y69zdb</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_0j9397y</bpmn:outgoing>\r
+    </bpmn:serviceTask>\r
+    <bpmn:serviceTask id="first_list" name="LVTH:RIC:List" camunda:delegateExpression="${callTestHeadDelegate}">\r
+      <bpmn:incoming>SequenceFlow_0zxo4fr</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_0s6ntyv</bpmn:outgoing>\r
+    </bpmn:serviceTask>\r
+    <bpmn:serviceTask id="deploy" name="LVTH:RIC:Deploy" camunda:delegateExpression="${callTestHeadDelegate}">\r
+      <bpmn:incoming>SequenceFlow_08v4jva</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_1oze54u</bpmn:outgoing>\r
+    </bpmn:serviceTask>\r
+    <bpmn:serviceTask id="second_list" name="LVTH:RIC:List" camunda:delegateExpression="${callTestHeadDelegate}">\r
+      <bpmn:incoming>SequenceFlow_07rma3l</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_07jnolr</bpmn:outgoing>\r
+    </bpmn:serviceTask>\r
+    <bpmn:serviceTask id="log_test_result" name="UTIL:LogTestResult" camunda:delegateExpression="${logTestResultDelegate}">\r
+      <bpmn:incoming>SequenceFlow_18bpwal</bpmn:incoming>\r
+      <bpmn:incoming>SequenceFlow_1u9jrl1</bpmn:incoming>\r
+      <bpmn:outgoing>SequenceFlow_01cc25d</bpmn:outgoing>\r
+    </bpmn:serviceTask>\r
+  </bpmn:process>\r
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">\r
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Deploy_xAPP_Test">\r
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">\r
+        <dc:Bounds x="156" y="190" width="36" height="36" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ScriptTask_01o5d6n_di" bpmnElement="verify_ready">\r
+        <dc:Bounds x="660" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ExclusiveGateway_1u1b164_di" bpmnElement="ExclusiveGateway_1u1b164" isMarkerVisible="true">\r
+        <dc:Bounds x="804" y="183" width="50" height="50" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="IntermediateCatchEvent_0o4pf4x_di" bpmnElement="IntermediateThrowEvent_0aoxbne">\r
+        <dc:Bounds x="1455" y="190" width="36" height="36" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ExclusiveGateway_05eh6vk_di" bpmnElement="ExclusiveGateway_05eh6vk" isMarkerVisible="true">\r
+        <dc:Bounds x="1884" y="183" width="50" height="50" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ScriptTask_0iya1du_di" bpmnElement="mark_failure">\r
+        <dc:Bounds x="1859" y="423" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ScriptTask_1dygfw7_di" bpmnElement="mark_success">\r
+        <dc:Bounds x="2069" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="EndEvent_15niqin_di" bpmnElement="EndEvent_0lg4zm4">\r
+        <dc:Bounds x="2407" y="190" width="36" height="36" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ScriptTask_0qmq6pn_di" bpmnElement="verify_deploy">\r
+        <dc:Bounds x="1728" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="Task_0smfzp7_di" bpmnElement="ready">\r
+        <dc:Bounds x="508" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="Task_0p2tcjd_di" bpmnElement="first_list">\r
+        <dc:Bounds x="905" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="Task_14wupjq_di" bpmnElement="deploy">\r
+        <dc:Bounds x="1288" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="Task_1wygysw_di" bpmnElement="second_list">\r
+        <dc:Bounds x="1563" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="Task_0lcfr55_di" bpmnElement="log_test_result">\r
+        <dc:Bounds x="2253" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ScriptTask_08k2jy1_di" bpmnElement="ScriptTask_08k2jy1">\r
+        <dc:Bounds x="240" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ExclusiveGateway_10o6bsf_di" bpmnElement="ExclusiveGateway_10o6bsf" isMarkerVisible="true">\r
+        <dc:Bounds x="381" y="183" width="50" height="50" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ExclusiveGateway_0ridg34_di" bpmnElement="ExclusiveGateway_0ridg34" isMarkerVisible="true">\r
+        <dc:Bounds x="1165" y="183" width="50" height="50" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNShape id="ScriptTask_0snkxz0_di" bpmnElement="alreadyDeployed">\r
+        <dc:Bounds x="1040" y="168" width="100" height="80" />\r
+      </bpmndi:BPMNShape>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0st7o3p_di" bpmnElement="SequenceFlow_0st7o3p">\r
+        <di:waypoint x="192" y="208" />\r
+        <di:waypoint x="240" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0j9397y_di" bpmnElement="SequenceFlow_0j9397y">\r
+        <di:waypoint x="608" y="208" />\r
+        <di:waypoint x="660" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0e1kt1e_di" bpmnElement="SequenceFlow_0e1kt1e">\r
+        <di:waypoint x="760" y="208" />\r
+        <di:waypoint x="804" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0zxo4fr_di" bpmnElement="SequenceFlow_0zxo4fr">\r
+        <di:waypoint x="854" y="208" />\r
+        <di:waypoint x="905" y="208" />\r
+        <bpmndi:BPMNLabel>\r
+          <dc:Bounds x="854" y="189" width="33" height="14" />\r
+        </bpmndi:BPMNLabel>\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_1chkfad_di" bpmnElement="SequenceFlow_1chkfad">\r
+        <di:waypoint x="829" y="233" />\r
+        <di:waypoint x="829" y="463" />\r
+        <di:waypoint x="1859" y="463" />\r
+        <bpmndi:BPMNLabel>\r
+          <dc:Bounds x="839" y="347" width="53" height="14" />\r
+        </bpmndi:BPMNLabel>\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0s6ntyv_di" bpmnElement="SequenceFlow_0s6ntyv">\r
+        <di:waypoint x="1005" y="208" />\r
+        <di:waypoint x="1040" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_1oze54u_di" bpmnElement="SequenceFlow_1oze54u">\r
+        <di:waypoint x="1388" y="208" />\r
+        <di:waypoint x="1455" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_07jnolr_di" bpmnElement="SequenceFlow_07jnolr">\r
+        <di:waypoint x="1663" y="208" />\r
+        <di:waypoint x="1728" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_08wazou_di" bpmnElement="SequenceFlow_08wazou">\r
+        <di:waypoint x="1828" y="208" />\r
+        <di:waypoint x="1884" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0nfij3v_di" bpmnElement="SequenceFlow_0nfij3v">\r
+        <di:waypoint x="1909" y="233" />\r
+        <di:waypoint x="1909" y="423" />\r
+        <bpmndi:BPMNLabel>\r
+          <dc:Bounds x="1924" y="272" width="63" height="27" />\r
+        </bpmndi:BPMNLabel>\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_18bpwal_di" bpmnElement="SequenceFlow_18bpwal">\r
+        <di:waypoint x="2169" y="208" />\r
+        <di:waypoint x="2253" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_07rma3l_di" bpmnElement="SequenceFlow_07rma3l">\r
+        <di:waypoint x="1491" y="208" />\r
+        <di:waypoint x="1563" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_01cc25d_di" bpmnElement="SequenceFlow_01cc25d">\r
+        <di:waypoint x="2353" y="208" />\r
+        <di:waypoint x="2407" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_1u9jrl1_di" bpmnElement="SequenceFlow_1u9jrl1">\r
+        <di:waypoint x="1959" y="463" />\r
+        <di:waypoint x="2303" y="463" />\r
+        <di:waypoint x="2303" y="248" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_08hkwrc_di" bpmnElement="SequenceFlow_08hkwrc">\r
+        <di:waypoint x="1934" y="208" />\r
+        <di:waypoint x="2069" y="208" />\r
+        <bpmndi:BPMNLabel>\r
+          <dc:Bounds x="1964" y="190" width="75" height="14" />\r
+        </bpmndi:BPMNLabel>\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_18luk66_di" bpmnElement="SequenceFlow_18luk66">\r
+        <di:waypoint x="340" y="208" />\r
+        <di:waypoint x="381" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_1y69zdb_di" bpmnElement="SequenceFlow_1y69zdb">\r
+        <di:waypoint x="431" y="208" />\r
+        <di:waypoint x="508" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0g7zkcv_di" bpmnElement="SequenceFlow_0g7zkcv">\r
+        <di:waypoint x="406" y="233" />\r
+        <di:waypoint x="406" y="463" />\r
+        <di:waypoint x="1859" y="463" />\r
+        <bpmndi:BPMNLabel>\r
+          <dc:Bounds x="416" y="360" width="49" height="14" />\r
+        </bpmndi:BPMNLabel>\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_08v4jva_di" bpmnElement="SequenceFlow_08v4jva">\r
+        <di:waypoint x="1215" y="208" />\r
+        <di:waypoint x="1288" y="208" />\r
+        <bpmndi:BPMNLabel>\r
+          <dc:Bounds x="1218" y="190" width="67" height="14" />\r
+        </bpmndi:BPMNLabel>\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0dscvt7_di" bpmnElement="SequenceFlow_0dscvt7">\r
+        <di:waypoint x="1190" y="233" />\r
+        <di:waypoint x="1190" y="463" />\r
+        <di:waypoint x="1859" y="463" />\r
+        <bpmndi:BPMNLabel>\r
+          <dc:Bounds x="1205" y="357" width="86" height="14" />\r
+        </bpmndi:BPMNLabel>\r
+      </bpmndi:BPMNEdge>\r
+      <bpmndi:BPMNEdge id="SequenceFlow_0i3et2n_di" bpmnElement="SequenceFlow_0i3et2n">\r
+        <di:waypoint x="1140" y="208" />\r
+        <di:waypoint x="1165" y="208" />\r
+      </bpmndi:BPMNEdge>\r
+    </bpmndi:BPMNPlane>\r
+  </bpmndi:BPMNDiagram>\r
+</bpmn:definitions>\r
index c2d0b5c..622cdb1 100644 (file)
@@ -1,5 +1,20 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
 \r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [ \r
         [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
index 7f70bd4..308bebd 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 /target/\r
 tokens/\r
 out/\r
index 1548993..2d38ef2 100644 (file)
@@ -1,5 +1,19 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
 \r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
         [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
index d63564e..1cecbe3 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 FROM openjdk:8\r
 \r
 ENV ENV=development\r
@@ -25,10 +40,16 @@ ENV PRIVATE_KEY=opt/cert/cert.key
 ENV PRIVATE_KEY_USERNAME=username\r
 ENV PRIVATE_KEY_PASSPHRASE=password\r
 \r
-COPY otf-camunda.jar app.jar\r
-\r
+RUN apt update\r
+RUN apt install maven -y\r
+COPY settings.xml settings.xml\r
+COPY src src\r
+COPY pom.xml pom.xml\r
+RUN mvn clean install -s settings.xml -DskipTests\r
+RUN rm /usr/share/maven/lib/*\r
+RUN ls\r
 RUN mkdir -p /otf/logs\r
+RUN mv target/otf-camunda.jar app.jar\r
+RUN rm -r target\r
 \r
-ADD src src\r
-\r
-ENTRYPOINT ["java", "-jar", "app.jar"]
\ No newline at end of file
+ENTRYPOINT ["java", "-jar", "app.jar"]\r
index 9347939..541c39d 100644 (file)
@@ -1,4 +1,20 @@
 #/bin/bash\r
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
+\r
 podName=$1\r
 echo $podName\r
 podInfo=$(kubectl get pods -l app=$1 -o custom-columns=:metadata.name)\r
diff --git a/otf-camunda/settings.xml b/otf-camunda/settings.xml
new file mode 100644 (file)
index 0000000..5a4325d
--- /dev/null
@@ -0,0 +1,215 @@
+<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"\r
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">\r
+\r
+  <localRepository>/home/YOURUSERID/onap/.m2/repository</localRepository>\r
+\r
+  <profiles>\r
+    <profile>\r
+      <id>openecomp-staging</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-staging</id>\r
+          <name>openecomp-staging</name>\r
+          <url>https://nexus.onap.org/content/repositories/staging/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-staging</id>\r
+          <name>openecomp-staging</name>\r
+          <url>https://nexus.onap.org/content/repositories/staging/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+    <profile>\r
+      <id>openecomp-public</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-public</id>\r
+          <name>openecomp-public</name>\r
+          <url>https://nexus.onap.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-public</id>\r
+          <name>openecomp-public</name>\r
+          <url>https://nexus.onap.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+    <profile>\r
+      <id>openecomp-release</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-release</id>\r
+          <name>openecomp-release</name>\r
+          <url>https://nexus.onap.org/content/repositories/releases/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-release</id>\r
+          <name>openecomp-release</name>\r
+          <url>https://nexus.onap.org/content/repositories/releases/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+\r
+    <profile>\r
+      <id>openecomp-snapshots</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-snapshot</id>\r
+          <name>openecomp-snapshot</name>\r
+          <url>https://nexus.onap.org/content/repositories/snapshots/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-snapshot</id>\r
+          <name>openecomp-snapshot</name>\r
+          <url>https://nexus.onap.org/content/repositories/snapshots/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+    <profile>\r
+      <id>opendaylight-release</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>opendaylight-mirror</id>\r
+          <name>opendaylight-mirror</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>opendaylight-mirror</id>\r
+          <name>opendaylight-mirror</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+\r
+    <profile>\r
+      <id>opendaylight-snapshots</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>opendaylight-snapshot</id>\r
+          <name>opendaylight-snapshot</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>opendaylight-snapshot</id>\r
+          <name>opendaylight-snapshot</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+\r
+    <profile>\r
+      <id>default</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>default</id>\r
+          <name>default</name>\r
+          <url>https://repo.maven.org/maven2/</url>\r
+        </repository>\r
+      </repositories>\r
+    </profile>\r
+\r
+  </profiles>\r
+\r
+  <activeProfiles>\r
+    <activeProfile>default</activeProfile>\r
+    <activeProfile>openecomp-staging</activeProfile>\r
+    <activeProfile>openecomp-public</activeProfile>\r
+    <activeProfile>openecomp-release</activeProfile>\r
+    <activeProfile>openecomp-snapshots</activeProfile>\r
+    <activeProfile>opendaylight-release</activeProfile>\r
+    <activeProfile>opendaylight-snapshots</activeProfile>\r
+  </activeProfiles>\r
+</settings>\r
index e9f31ff..346164f 100644 (file)
@@ -1,5 +1,19 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
 \r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
         [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
index aef7f2b..f8cb990 100644 (file)
@@ -1,3 +1,17 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
 \r
 # Created by https://www.gitignore.io/api/node,angular\r
 \r
index 6caf80d..de31829 100644 (file)
@@ -1,3 +1,17 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
 FROM node:8.16-alpine\r
 \r
 ENV ENV=development\r
index 0cc1a01..ed47365 100644 (file)
@@ -1,5 +1,20 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
 [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
 [$class: 'hudson.model.StringParameterDefinition', name: 'ENV', defaultValue: "dev"],\r
index f94aed4..d52d0c9 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 # See http://help.github.com/ignore-files/ for more about ignoring files.\r
 \r
 # compiled output\r
index 3be39c4..74664d0 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 // Karma configuration file, see link for more information\r
 // https://karma-runner.github.io/1.0/config/configuration-file.html\r
 \r
index b1a56c1..148a41f 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 // Protractor configuration file, see link for more information\r
 // https://github.com/angular/protractor/blob/master/lib/config.ts\r
 \r
index 64bb730..26e9389 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 import { AppPage } from './app.po';\r
 \r
 describe('test-ng4 App', () => {\r
index 625420f..c922a9e 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 import { browser, by, element } from 'protractor';\r
 \r
 export class AppPage {\r
index 67338c3..378377a 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const rp = require('request-promise');\r
 const url = require('url');\r
index 71d02c6..d6e352f 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const feathers = require('@feathersjs/feathers');\r
 const groupFilter = require('../../src/hooks/group-filter');\r
index 23d1ff0..7ade3b5 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index fb00767..bebe886 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 6e46510..4a1af5a 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index c66c9c7..59d13ad 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 212f034..5c6963b 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 034e933..8fa04e1 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 556d710..9b004b3 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 44fa679..f3b845a 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 2db66b9..e59da74 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 51304e5..8b96702 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 35bf0d5..7917e28 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index 0d03d13..8594bdd 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index bed24e0..aec91c4 100644 (file)
@@ -1,3 +1,19 @@
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
+\r
 const assert = require('assert');\r
 const app = require('../../src/app');\r
 \r
index f40437b..0e4e87f 100644 (file)
@@ -32,21 +32,18 @@ otf-robot-test-head
 \r
 \r
 otf-frontend\r
-   \r
+   docker build -t otf-frontend:0.0.1-SNAPSHOT .\r
+   docker run -d --network="host" otf-frontend:0.0.1-SNAPSHOT\r
 \r
 otf-service-api\r
   Modify src/main/resources/application.properties according to needs (disable aaf/ssl, set ports)\r
-  Add settings.xml from onap website and add profile to use maven default repository and add settings.xml to ~/.m2/ if missing\r
-  mvn clean install (add flag -DskipTests if it causes the build to fail)\r
-  navigate to target folder and run "docker build -t otf-service-api:0.0.1-SNAPSHOT ."\r
+  navigate to otf-service-api folder and run "docker build -t otf-service-api:0.0.1-SNAPSHOT -f docker/Dockerfile ." (maven will run from inside the container, command is inside the Dockerfile) \r
   docker run -d --network="host" otf-service-api:0.0.1-SNAPSHOT\r
 \r
 \r
 otf-camunda\r
   Modify src/main/resources/application.yaml according to needs, and validate the yaml is correct format (disable aaf/ssl, set ports)\r
-  Add settings.xml from onap website and add profile to use maven default repository and add settings.xml to ~/.m2/ if missing\r
-  mvn clean install (add flag -DskipTests if it causes the build to fail)\r
-  navigate to target folder and run "docker build -t otf-camunda:0.0.1-SNAPSHOT ."\r
+  navigate to otf-camunda folder and run "docker build -t otf-camunda:0.0.1-SNAPSHOT -f docker/Dockerfile ." (maven will run from inside the container, command is inside the Dockerfile)\r
   docker run -d --network="host" otf-camunda:0.0.1-SNAPSHOT\r
 \r
 Database Notes\r
index 28ca722..173d2e8 100644 (file)
@@ -1,5 +1,20 @@
-otf.pem
-privateKey.pem
-*.log
-*.pem
-/otf
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
+otf.pem\r
+privateKey.pem\r
+*.log\r
+*.pem\r
+/otf\r
index 182eaa4..82bc83f 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 FROM python:2.7\r
 \r
 # ARG HTTP_PROXY="localhost:8080"\r
index 8143fcf..a103bb8 100644 (file)
@@ -1,5 +1,19 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
 \r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
         [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
index d5f7c3d..484fedb 100644 (file)
@@ -53,6 +53,21 @@ cmake-build-*/
 # File-based project format\r
 *.iws\r
 \r
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 # IntelliJ\r
 out/\r
 \r
index ce801b7..3c481e0 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 FROM python:2.7\r
 \r
 # ARG HTTP_PROXY="http://localhost:8080" \r
index 16fa274..57d0f03 100644 (file)
@@ -1,5 +1,19 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
 \r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
     [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
index c0c37dc..bbb27e9 100644 (file)
@@ -1,3 +1,19 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
+\r
 from app import create_app\r
 \r
 if __name__ == '__main__':\r
index 681073c..f4fc740 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 /target/\r
 tokens/\r
 out/\r
index 68e8d66..92511b5 100644 (file)
@@ -1,5 +1,20 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
+\r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
         [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r
         [$class: 'hudson.model.StringParameterDefinition', name: 'ENV', defaultValue: "dev"],\r
index d1ef755..82be010 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 FROM openjdk:8\r
 \r
 ENV NAMESPACE=namespace\r
@@ -14,8 +29,8 @@ ENV OTF_MONGO_USERNAME=username
 ENV OTF_MONGO_PASSWORD=password\r
 ENV OTF_MONGO_REPLICASET=rs0\r
 ENV OTF_MONGO_DATABASE=otf\r
-ENV otf.camunda.host=https://localhost\r
-ENV otf.camunda.port=31313\r
+ENV otf.camunda.host=http://localhost\r
+ENV otf.camunda.port=8080\r
 ENV otf.camunda.executionUri=otf/tcu/execute-test/v1\r
 ENV otf.camunda.pollingUri=otf/tcu/process-instance-completion-check/v1\r
 ENV otf.camunda.deploymentUri=otf/tcu/deploy-test-strategy-zip/v1\r
@@ -34,10 +49,16 @@ ENV otf.api.poll-attempts=50
 ENV OTF_CERT_PATH=opt/cert/cert.p12\r
 ENV OTF_CERT_PASS=password\r
 \r
-COPY otf-service-api.jar app.jar\r
-\r
+RUN apt update\r
+RUN apt install maven -y\r
+COPY settings.xml settings.xml\r
+COPY src src\r
+COPY pom.xml pom.xml\r
+RUN mvn clean install -s settings.xml -DskipTests\r
+RUN rm /usr/share/maven/lib/*\r
+RUN ls\r
 RUN mkdir -p /otf/logs\r
-\r
-ADD src src\r
+RUN mv target/otf-service-api.jar app.jar\r
+RUN rm -r target\r
 \r
 ENTRYPOINT ["java", "-jar", "app.jar"]\r
diff --git a/otf-service-api/settings.xml b/otf-service-api/settings.xml
new file mode 100644 (file)
index 0000000..5a4325d
--- /dev/null
@@ -0,0 +1,215 @@
+<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"\r
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">\r
+\r
+  <localRepository>/home/YOURUSERID/onap/.m2/repository</localRepository>\r
+\r
+  <profiles>\r
+    <profile>\r
+      <id>openecomp-staging</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-staging</id>\r
+          <name>openecomp-staging</name>\r
+          <url>https://nexus.onap.org/content/repositories/staging/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-staging</id>\r
+          <name>openecomp-staging</name>\r
+          <url>https://nexus.onap.org/content/repositories/staging/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+    <profile>\r
+      <id>openecomp-public</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-public</id>\r
+          <name>openecomp-public</name>\r
+          <url>https://nexus.onap.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-public</id>\r
+          <name>openecomp-public</name>\r
+          <url>https://nexus.onap.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+    <profile>\r
+      <id>openecomp-release</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-release</id>\r
+          <name>openecomp-release</name>\r
+          <url>https://nexus.onap.org/content/repositories/releases/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-release</id>\r
+          <name>openecomp-release</name>\r
+          <url>https://nexus.onap.org/content/repositories/releases/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+\r
+    <profile>\r
+      <id>openecomp-snapshots</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>openecomp-snapshot</id>\r
+          <name>openecomp-snapshot</name>\r
+          <url>https://nexus.onap.org/content/repositories/snapshots/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>openecomp-snapshot</id>\r
+          <name>openecomp-snapshot</name>\r
+          <url>https://nexus.onap.org/content/repositories/snapshots/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+    <profile>\r
+      <id>opendaylight-release</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>opendaylight-mirror</id>\r
+          <name>opendaylight-mirror</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>opendaylight-mirror</id>\r
+          <name>opendaylight-mirror</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/public/</url>\r
+          <releases>\r
+            <enabled>true</enabled>\r
+            <updatePolicy>never</updatePolicy>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>false</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+\r
+    <profile>\r
+      <id>opendaylight-snapshots</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>opendaylight-snapshot</id>\r
+          <name>opendaylight-snapshot</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </repository>\r
+      </repositories>\r
+      <pluginRepositories>\r
+        <pluginRepository>\r
+          <id>opendaylight-snapshot</id>\r
+          <name>opendaylight-snapshot</name>\r
+          <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>\r
+          <releases>\r
+            <enabled>false</enabled>\r
+          </releases>\r
+          <snapshots>\r
+            <enabled>true</enabled>\r
+          </snapshots>\r
+        </pluginRepository>\r
+      </pluginRepositories>\r
+    </profile>\r
+\r
+    <profile>\r
+      <id>default</id>\r
+      <repositories>\r
+        <repository>\r
+          <id>default</id>\r
+          <name>default</name>\r
+          <url>https://repo.maven.org/maven2/</url>\r
+        </repository>\r
+      </repositories>\r
+    </profile>\r
+\r
+  </profiles>\r
+\r
+  <activeProfiles>\r
+    <activeProfile>default</activeProfile>\r
+    <activeProfile>openecomp-staging</activeProfile>\r
+    <activeProfile>openecomp-public</activeProfile>\r
+    <activeProfile>openecomp-release</activeProfile>\r
+    <activeProfile>openecomp-snapshots</activeProfile>\r
+    <activeProfile>opendaylight-release</activeProfile>\r
+    <activeProfile>opendaylight-snapshots</activeProfile>\r
+  </activeProfiles>\r
+</settings>\r
index 815f98d..173d2e8 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 otf.pem\r
 privateKey.pem\r
 *.log\r
index d70565d..31a4fef 100644 (file)
@@ -1,3 +1,18 @@
+#   Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+################################################################################\r
+\r
 FROM python:2.7\r
 \r
 # ARG HTTP_PROXY="localhost:8080"\r
index c19179c..fb42d01 100644 (file)
@@ -1,5 +1,19 @@
 #!/usr/bin/env groovy\r
 \r
+/*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
+#                                                                              #\r
+#   Licensed under the Apache License, Version 2.0 (the "License");            #\r
+#   you may not use this file except in compliance with the License.           #\r
+#   You may obtain a copy of the License at                                    #\r
+#                                                                              #\r
+#       http://www.apache.org/licenses/LICENSE-2.0                             #\r
+#                                                                              #\r
+#   Unless required by applicable law or agreed to in writing, software        #\r
+#   distributed under the License is distributed on an "AS IS" BASIS,          #\r
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
+#   See the License for the specific language governing permissions and        #\r
+#   limitations under the License.                                             #\r
+##############################################################################*/\r
 \r
 properties([[$class: 'ParametersDefinitionProperty', parameterDefinitions: [\r
         [$class: 'hudson.model.StringParameterDefinition', name: 'PHASE', defaultValue: "BUILD"],\r