diff options
author | Smokowski, Steven <steve.smokowski@att.com> | 2020-04-01 10:41:17 -0400 |
---|---|---|
committer | Benjamin, Max (mb388a) <mb388a@att.com> | 2020-04-17 12:05:16 -0400 |
commit | fbb984e6a8823ca26eae20a65c6d261feac02b7b (patch) | |
tree | 00e6f3c385587a351ab644112ffca733f77465e7 /bpmn | |
parent | eceef88af7a5e13a7840059004116e8b6cbf35ac (diff) |
openstack inventory capture
Begin heatbridge refactor
initial check in of heatbridge
Additional commits of heatbridge
Update Heat bridge to write more AAI data
Update to utlize HeatBrdige to populate AAI
Adjust simulator endpoints to work again
Remove not needed BB Test case, fix tc
Refactor how AAI relationships are being built
Issue-ID: SO-2777
Signed-off-by: Benjamin, Max (mb388a) <mb388a@att.com>
Change-Id: Iffccc24e18b278188c3fe98bcb1ad9685229d0a2
Diffstat (limited to 'bpmn')
9 files changed, 491 insertions, 465 deletions
diff --git a/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/ActivateVfModuleBB.bpmn b/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/ActivateVfModuleBB.bpmn index ff37874978..f2c0ba7dee 100644 --- a/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/ActivateVfModuleBB.bpmn +++ b/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/ActivateVfModuleBB.bpmn @@ -1,5 +1,5 @@ <?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:di="http://www.omg.org/spec/DD/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" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.10.0"> +<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/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" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.1.2"> <bpmn:process id="ActivateVfModuleBB" name="ActivateVfModuleBB" isExecutable="true"> <bpmn:startEvent id="ActivateVfModuleBB_Start"> <bpmn:outgoing>SequenceFlow_0ieafii</bpmn:outgoing> @@ -36,29 +36,18 @@ </bpmn:serviceTask> <bpmn:serviceTask id="Audit_AAI_Inventory" name="Validate A&AI Inventory" camunda:type="external" camunda:topic="InventoryAddAudit"> <bpmn:incoming>SequenceFlow_0xndboi</bpmn:incoming> - <bpmn:outgoing>SequenceFlow_0ee42yq</bpmn:outgoing> + <bpmn:outgoing>SequenceFlow_0l8684g</bpmn:outgoing> </bpmn:serviceTask> <bpmn:sequenceFlow id="SequenceFlow_07ybdik" name="No" sourceRef="ExclusiveGateway_1v8bmbu" targetRef="ExclusiveGateway_0sqvzll" /> <bpmn:sequenceFlow id="SequenceFlow_0ghzwlo" name="Yes" sourceRef="ExclusiveGateway_1v8bmbu" targetRef="Setup_AAI_Inventory_Audit"> - <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${execution.getVariable("auditInventoryNeeded") == true}]]></bpmn:conditionExpression> + <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("auditInventoryNeeded") == true}</bpmn:conditionExpression> </bpmn:sequenceFlow> - <bpmn:sequenceFlow id="SequenceFlow_0ee42yq" sourceRef="Audit_AAI_Inventory" targetRef="ExclusiveGateway_1h8avxn" /> <bpmn:serviceTask id="CheckAuditVariable" name="Check Audit Variable" camunda:expression="${AuditTasks.isAuditNeeded(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}"> <bpmn:incoming>SequenceFlow_0ieafii</bpmn:incoming> <bpmn:outgoing>SequenceFlow_1xqyur9</bpmn:outgoing> </bpmn:serviceTask> <bpmn:sequenceFlow id="SequenceFlow_1xqyur9" sourceRef="CheckAuditVariable" targetRef="ExclusiveGateway_1v8bmbu" /> - <bpmn:sequenceFlow id="SequenceFlow_109oxx2" name="No" sourceRef="ExclusiveGateway_1h8avxn" targetRef="ExclusiveGateway_0y0ek7t"> - <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${execution.getVariable("auditIsSuccessful")== true }]]></bpmn:conditionExpression> - </bpmn:sequenceFlow> - <bpmn:sequenceFlow id="SequenceFlow_1bo83qk" name="Yes" sourceRef="ExclusiveGateway_1h8avxn" targetRef="Create_AAI_Inventory" /> - <bpmn:sequenceFlow id="SequenceFlow_0arwo1o" sourceRef="Create_AAI_Inventory" targetRef="ExclusiveGateway_0y0ek7t" /> - <bpmn:serviceTask id="Create_AAI_Inventory" name="Create A&AI Inventory" camunda:type="external" camunda:topic="InventoryCreate"> - <bpmn:incoming>SequenceFlow_1bo83qk</bpmn:incoming> - <bpmn:outgoing>SequenceFlow_0arwo1o</bpmn:outgoing> - </bpmn:serviceTask> <bpmn:sequenceFlow id="SequenceFlow_1b63lv4" sourceRef="ExclusiveGateway_0sqvzll" targetRef="ActivateVfModule" /> - <bpmn:sequenceFlow id="SequenceFlow_18faffa" sourceRef="ExclusiveGateway_0y0ek7t" targetRef="ExclusiveGateway_0sqvzll" /> <bpmn:subProcess id="SubProcess_0bpsptg" name="Audit Exception Sub Process" triggeredByEvent="true"> <bpmn:startEvent id="catchInventoryException"> <bpmn:outgoing>SequenceFlow_19gbhlj</bpmn:outgoing> @@ -81,19 +70,10 @@ </bpmn:inclusiveGateway> <bpmn:inclusiveGateway id="ExclusiveGateway_0sqvzll"> <bpmn:incoming>SequenceFlow_07ybdik</bpmn:incoming> - <bpmn:incoming>SequenceFlow_18faffa</bpmn:incoming> + <bpmn:incoming>SequenceFlow_0l8684g</bpmn:incoming> <bpmn:outgoing>SequenceFlow_1b63lv4</bpmn:outgoing> </bpmn:inclusiveGateway> - <bpmn:inclusiveGateway id="ExclusiveGateway_1h8avxn" name="Audit Failed?" default="SequenceFlow_1bo83qk"> - <bpmn:incoming>SequenceFlow_0ee42yq</bpmn:incoming> - <bpmn:outgoing>SequenceFlow_109oxx2</bpmn:outgoing> - <bpmn:outgoing>SequenceFlow_1bo83qk</bpmn:outgoing> - </bpmn:inclusiveGateway> - <bpmn:inclusiveGateway id="ExclusiveGateway_0y0ek7t"> - <bpmn:incoming>SequenceFlow_109oxx2</bpmn:incoming> - <bpmn:incoming>SequenceFlow_0arwo1o</bpmn:incoming> - <bpmn:outgoing>SequenceFlow_18faffa</bpmn:outgoing> - </bpmn:inclusiveGateway> + <bpmn:sequenceFlow id="SequenceFlow_0l8684g" sourceRef="Audit_AAI_Inventory" targetRef="ExclusiveGateway_0sqvzll" /> </bpmn:process> <bpmn:error id="Error_0q258vt" errorCode="7000" /> <bpmn:error id="Error_0zgccif" name="org.onap.so.adapters.inventory.create.InventoryException" errorCode="org.onap.so.adapters.inventory.create.InventoryException" /> @@ -101,200 +81,150 @@ <bpmndi:BPMNDiagram id="BPMNDiagram_1"> <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="ActivateVfModuleBB"> <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="ActivateVfModuleBB_Start"> - <dc:Bounds x="85" y="234" width="36" height="36" /> + <dc:Bounds x="156" y="180" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="58" y="270" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0ieafii_di" bpmnElement="SequenceFlow_0ieafii"> - <di:waypoint xsi:type="dc:Point" x="121" y="252" /> - <di:waypoint xsi:type="dc:Point" x="201" y="252" /> + <di:waypoint x="192" y="198" /> + <di:waypoint x="272" y="198" /> <bpmndi:BPMNLabel> <dc:Bounds x="116" y="231" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="EndEvent_1v967li_di" bpmnElement="ActivateVfModuleBB_End"> - <dc:Bounds x="1404" y="235" width="36" height="36" /> + <dc:Bounds x="1475" y="181" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="1235" y="275" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_0hawa84_di" bpmnElement="ActivateVfModule"> - <dc:Bounds x="958" y="212" width="100" height="80" /> + <dc:Bounds x="1029" y="158" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_175e9ul_di" bpmnElement="UpdateVfModuleActiveStatus"> - <dc:Bounds x="1214" y="212" width="100" height="80" /> + <dc:Bounds x="1285" y="158" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0xsp0pv_di" bpmnElement="SequenceFlow_0xsp0pv"> - <di:waypoint xsi:type="dc:Point" x="1314" y="252" /> - <di:waypoint xsi:type="dc:Point" x="1404" y="253" /> + <di:waypoint x="1385" y="198" /> + <di:waypoint x="1475" y="199" /> <bpmndi:BPMNLabel> <dc:Bounds x="1314" y="231.5" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="CallActivity_03jkesd_di" bpmnElement="CallActivity_sdncHandler"> - <dc:Bounds x="1086" y="212" width="100" height="80" /> + <dc:Bounds x="1157" y="158" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1a495wm_di" bpmnElement="SequenceFlow_1a495wm"> - <di:waypoint xsi:type="dc:Point" x="1058" y="252" /> - <di:waypoint xsi:type="dc:Point" x="1086" y="252" /> + <di:waypoint x="1129" y="198" /> + <di:waypoint x="1157" y="198" /> <bpmndi:BPMNLabel> <dc:Bounds x="1027" y="231" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1j4x1ej_di" bpmnElement="SequenceFlow_1j4x1ej"> - <di:waypoint xsi:type="dc:Point" x="1186" y="252" /> - <di:waypoint xsi:type="dc:Point" x="1214" y="252" /> + <di:waypoint x="1257" y="198" /> + <di:waypoint x="1285" y="198" /> <bpmndi:BPMNLabel> <dc:Bounds x="1155" y="231" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0xndboi_di" bpmnElement="SequenceFlow_0xndboi"> - <di:waypoint xsi:type="dc:Point" x="491" y="175" /> - <di:waypoint xsi:type="dc:Point" x="513" y="175" /> + <di:waypoint x="589" y="121" /> + <di:waypoint x="680" y="121" /> <bpmndi:BPMNLabel> <dc:Bounds x="457" y="153.5" width="90" height="13" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_0krf1ur_di" bpmnElement="Setup_AAI_Inventory_Audit"> - <dc:Bounds x="391" y="135" width="100" height="80" /> + <dc:Bounds x="489" y="81" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_08rxjeb_di" bpmnElement="Audit_AAI_Inventory"> - <dc:Bounds x="513" y="135" width="100" height="80" /> + <dc:Bounds x="680" y="81" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_07ybdik_di" bpmnElement="SequenceFlow_07ybdik"> - <di:waypoint xsi:type="dc:Point" x="355" y="277" /> - <di:waypoint xsi:type="dc:Point" x="355" y="315" /> - <di:waypoint xsi:type="dc:Point" x="881" y="315" /> - <di:waypoint xsi:type="dc:Point" x="881" y="277" /> + <di:waypoint x="426" y="223" /> + <di:waypoint x="426" y="261" /> + <di:waypoint x="952" y="261" /> + <di:waypoint x="952" y="223" /> <bpmndi:BPMNLabel> - <dc:Bounds x="364" y="294" width="14" height="12" /> + <dc:Bounds x="435" y="240" width="15" height="14" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0ghzwlo_di" bpmnElement="SequenceFlow_0ghzwlo"> - <di:waypoint xsi:type="dc:Point" x="355" y="227" /> - <di:waypoint xsi:type="dc:Point" x="355" y="175" /> - <di:waypoint xsi:type="dc:Point" x="391" y="175" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="362" y="185" width="19" height="12" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge id="SequenceFlow_0ee42yq_di" bpmnElement="SequenceFlow_0ee42yq"> - <di:waypoint xsi:type="dc:Point" x="613" y="175" /> - <di:waypoint xsi:type="dc:Point" x="638" y="175" /> + <di:waypoint x="426" y="173" /> + <di:waypoint x="426" y="121" /> + <di:waypoint x="489" y="121" /> <bpmndi:BPMNLabel> - <dc:Bounds x="580.5" y="153.5" width="90" height="13" /> + <dc:Bounds x="434" y="131" width="18" height="14" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_1eg5ryx_di" bpmnElement="CheckAuditVariable"> - <dc:Bounds x="201" y="212" width="100" height="80" /> + <dc:Bounds x="272" y="158" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1xqyur9_di" bpmnElement="SequenceFlow_1xqyur9"> - <di:waypoint xsi:type="dc:Point" x="301" y="252" /> - <di:waypoint xsi:type="dc:Point" x="330" y="252" /> + <di:waypoint x="372" y="198" /> + <di:waypoint x="401" y="198" /> <bpmndi:BPMNLabel> <dc:Bounds x="270.5" y="230.5" width="90" height="13" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge id="SequenceFlow_109oxx2_di" bpmnElement="SequenceFlow_109oxx2"> - <di:waypoint xsi:type="dc:Point" x="663" y="200" /> - <di:waypoint xsi:type="dc:Point" x="663" y="230" /> - <di:waypoint xsi:type="dc:Point" x="834" y="230" /> - <di:waypoint xsi:type="dc:Point" x="834" y="200" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="670" y="207" width="14" height="12" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge id="SequenceFlow_1bo83qk_di" bpmnElement="SequenceFlow_1bo83qk"> - <di:waypoint xsi:type="dc:Point" x="663" y="150" /> - <di:waypoint xsi:type="dc:Point" x="663" y="101" /> - <di:waypoint xsi:type="dc:Point" x="691" y="101" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="667" y="111" width="19" height="12" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge id="SequenceFlow_0arwo1o_di" bpmnElement="SequenceFlow_0arwo1o"> - <di:waypoint xsi:type="dc:Point" x="791" y="101" /> - <di:waypoint xsi:type="dc:Point" x="834" y="101" /> - <di:waypoint xsi:type="dc:Point" x="834" y="150" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="767.5" y="79.5" width="90" height="13" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> - <bpmndi:BPMNShape id="ServiceTask_1eb09gr_di" bpmnElement="Create_AAI_Inventory"> - <dc:Bounds x="691" y="61" width="100" height="80" /> - </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1b63lv4_di" bpmnElement="SequenceFlow_1b63lv4"> - <di:waypoint xsi:type="dc:Point" x="906" y="252" /> - <di:waypoint xsi:type="dc:Point" x="958" y="252" /> + <di:waypoint x="977" y="198" /> + <di:waypoint x="1029" y="198" /> <bpmndi:BPMNLabel> <dc:Bounds x="887" y="231" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge id="SequenceFlow_18faffa_di" bpmnElement="SequenceFlow_18faffa"> - <di:waypoint xsi:type="dc:Point" x="859" y="175" /> - <di:waypoint xsi:type="dc:Point" x="881" y="175" /> - <di:waypoint xsi:type="dc:Point" x="881" y="227" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="825" y="154" width="90" height="12" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="SubProcess_0mbkb7v_di" bpmnElement="SubProcess_0bpsptg" isExpanded="true"> - <dc:Bounds x="293" y="449" width="350" height="200" /> + <dc:Bounds x="364" y="395" width="350" height="200" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="StartEvent_12r96di_di" bpmnElement="catchInventoryException"> - <dc:Bounds x="324" y="532" width="36" height="36" /> + <dc:Bounds x="395" y="478" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="341.15269461077844" y="571.6127744510978" width="0" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="EndEvent_067jv1n_di" bpmnElement="EndEvent_067jv1n"> - <dc:Bounds x="572.1526946107784" y="532" width="36" height="36" /> + <dc:Bounds x="643" y="478" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="590.1526946107784" y="572" width="0" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_19gbhlj_di" bpmnElement="SequenceFlow_19gbhlj"> - <di:waypoint xsi:type="dc:Point" x="360" y="550" /> - <di:waypoint xsi:type="dc:Point" x="415" y="550" /> + <di:waypoint x="431" y="496" /> + <di:waypoint x="486" y="496" /> <bpmndi:BPMNLabel> <dc:Bounds x="387.5" y="529" width="0" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0l4jzc5_di" bpmnElement="SequenceFlow_0l4jzc5"> - <di:waypoint xsi:type="dc:Point" x="515" y="550" /> - <di:waypoint xsi:type="dc:Point" x="572" y="550" /> + <di:waypoint x="586" y="496" /> + <di:waypoint x="643" y="496" /> <bpmndi:BPMNLabel> <dc:Bounds x="543.5" y="529" width="0" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_08xffml_di" bpmnElement="processAuditException"> - <dc:Bounds x="415" y="510" width="100" height="80" /> + <dc:Bounds x="486" y="456" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="InclusiveGateway_03pi9y4_di" bpmnElement="ExclusiveGateway_1v8bmbu"> - <dc:Bounds x="330" y="227" width="50" height="50" /> + <dc:Bounds x="401" y="173" width="50" height="50" /> <bpmndi:BPMNLabel> - <dc:Bounds x="383" y="246" width="73" height="12" /> + <dc:Bounds x="453" y="192" width="75" height="14" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="InclusiveGateway_16ap4e3_di" bpmnElement="ExclusiveGateway_0sqvzll"> - <dc:Bounds x="856" y="227" width="50" height="50" /> + <dc:Bounds x="927" y="173" width="50" height="50" /> <bpmndi:BPMNLabel> <dc:Bounds x="836" y="281" width="0" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> - <bpmndi:BPMNShape id="InclusiveGateway_00n600s_di" bpmnElement="ExclusiveGateway_1h8avxn"> - <dc:Bounds x="638" y="150" width="50" height="50" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="693" y="169" width="63" height="12" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNShape> - <bpmndi:BPMNShape id="InclusiveGateway_0xx6c29_di" bpmnElement="ExclusiveGateway_0y0ek7t"> - <dc:Bounds x="809" y="150" width="50" height="50" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="789" y="204" width="0" height="12" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNShape> + <bpmndi:BPMNEdge id="SequenceFlow_0l8684g_di" bpmnElement="SequenceFlow_0l8684g"> + <di:waypoint x="780" y="121" /> + <di:waypoint x="952" y="121" /> + <di:waypoint x="952" y="173" /> + </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </bpmn:definitions> diff --git a/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/CreateVfModuleBB.bpmn b/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/CreateVfModuleBB.bpmn index d77e141364..61c870b956 100644 --- a/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/CreateVfModuleBB.bpmn +++ b/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/CreateVfModuleBB.bpmn @@ -1,5 +1,5 @@ <?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:di="http://www.omg.org/spec/DD/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" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.7.0"> +<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/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" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.1.2"> <bpmn:process id="CreateVfModuleBB" name="CreateVfModuleBB" isExecutable="true"> <bpmn:startEvent id="CreateVfModuleBB_Start"> <bpmn:outgoing>SequenceFlow_1xr6chl</bpmn:outgoing> @@ -23,7 +23,7 @@ <bpmn:outgoing>SequenceFlow_1s4rpyp</bpmn:outgoing> </bpmn:serviceTask> <bpmn:sequenceFlow id="SequenceFlow_16g4dz0" sourceRef="CreateVfModule" targetRef="VnfAdapter" /> - <bpmn:sequenceFlow id="SequenceFlow_0ecr393" sourceRef="VnfAdapter" targetRef="CreateNetworkPolicies" /> + <bpmn:sequenceFlow id="SequenceFlow_0ecr393" sourceRef="VnfAdapter" targetRef="ServiceTask_01zrt6x" /> <bpmn:callActivity id="VnfAdapter" name="Vnf Adapter" calledElement="VnfAdapter"> <bpmn:extensionElements> <camunda:in source="gBuildingBlockExecution" target="gBuildingBlockExecution" /> @@ -60,7 +60,7 @@ <bpmn:sequenceFlow id="SequenceFlow_0rds4rj" sourceRef="UpdateVfModuleHeatStackId" targetRef="UpdateVfModuleStatus" /> <bpmn:sequenceFlow id="SequenceFlow_1vbwdaw" sourceRef="UpdateVfModuleStatus" targetRef="CreateVfModuleBB_End" /> <bpmn:serviceTask id="CreateNetworkPolicies" name="AAI Create (network policies)" camunda:expression="${AAICreateTasks.createNetworkPolicies(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}"> - <bpmn:incoming>SequenceFlow_0ecr393</bpmn:incoming> + <bpmn:incoming>SequenceFlow_1yn8o6d</bpmn:incoming> <bpmn:outgoing>SequenceFlow_0xqhep5</bpmn:outgoing> </bpmn:serviceTask> <bpmn:sequenceFlow id="SequenceFlow_0xqhep5" sourceRef="CreateNetworkPolicies" targetRef="UpdateVnfIpv4OamAddress" /> @@ -79,156 +79,180 @@ <bpmn:outgoing>SequenceFlow_15do1tu</bpmn:outgoing> </bpmn:serviceTask> <bpmn:sequenceFlow id="SequenceFlow_15do1tu" sourceRef="UpdateVfModuleContrailServiceInstanceFqdn" targetRef="UpdateVfModuleHeatStackId" /> + <bpmn:serviceTask id="ServiceTask_01zrt6x" name=" Create Cloud Variable " camunda:expression="${CreateVFModule.createInventoryVariable(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}"> + <bpmn:incoming>SequenceFlow_0ecr393</bpmn:incoming> + <bpmn:outgoing>SequenceFlow_1io8r33</bpmn:outgoing> + </bpmn:serviceTask> + <bpmn:sequenceFlow id="SequenceFlow_1io8r33" sourceRef="ServiceTask_01zrt6x" targetRef="ServiceTask_00d84m7" /> + <bpmn:serviceTask id="ServiceTask_00d84m7" name=" AAI Create (inventory) " camunda:type="external" camunda:topic="InventoryCreate"> + <bpmn:incoming>SequenceFlow_1io8r33</bpmn:incoming> + <bpmn:outgoing>SequenceFlow_1yn8o6d</bpmn:outgoing> + </bpmn:serviceTask> + <bpmn:sequenceFlow id="SequenceFlow_1yn8o6d" sourceRef="ServiceTask_00d84m7" targetRef="CreateNetworkPolicies" /> </bpmn:process> <bpmndi:BPMNDiagram id="BPMNDiagram_1"> <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVfModuleBB"> <bpmndi:BPMNShape id="StartEvent_0kxwniy_di" bpmnElement="CreateVfModuleBB_Start"> - <dc:Bounds x="159" y="88" width="36" height="36" /> + <dc:Bounds x="156" y="88" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="77" y="124" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_13t22km_di" bpmnElement="QueryVfModule"> - <dc:Bounds x="516" y="66" width="100" height="80" /> + <dc:Bounds x="513" y="66" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1xr6chl_di" bpmnElement="SequenceFlow_1xr6chl"> - <di:waypoint x="195" y="106" /> - <di:waypoint x="316" y="106" /> + <di:waypoint x="192" y="106" /> + <di:waypoint x="313" y="106" /> <bpmndi:BPMNLabel> <dc:Bounds x="156" y="91" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="EndEvent_0qdq7wj_di" bpmnElement="CreateVfModuleBB_End"> - <dc:Bounds x="1218" y="293" width="36" height="36" /> + <dc:Bounds x="1215" y="293" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="1136" y="333" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_1dgenhy_di" bpmnElement="CreateVfModule"> - <dc:Bounds x="712" y="66" width="100" height="80" /> + <dc:Bounds x="709" y="66" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_15hn8si_di" bpmnElement="SequenceFlow_15hn8si"> - <di:waypoint x="616" y="106" /> - <di:waypoint x="712" y="106" /> + <di:waypoint x="613" y="106" /> + <di:waypoint x="709" y="106" /> <bpmndi:BPMNLabel> <dc:Bounds x="519" y="91" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1s4rpyp_di" bpmnElement="SequenceFlow_1s4rpyp"> - <di:waypoint x="416" y="106" /> - <di:waypoint x="516" y="106" /> + <di:waypoint x="413" y="106" /> + <di:waypoint x="513" y="106" /> <bpmndi:BPMNLabel> <dc:Bounds x="321" y="91" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_1frb5h2_di" bpmnElement="QueryVnf"> - <dc:Bounds x="316" y="66" width="100" height="80" /> + <dc:Bounds x="313" y="66" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_16g4dz0_di" bpmnElement="SequenceFlow_16g4dz0"> - <di:waypoint x="812" y="106" /> - <di:waypoint x="890" y="106" /> + <di:waypoint x="809" y="106" /> + <di:waypoint x="887" y="106" /> <bpmndi:BPMNLabel> <dc:Bounds x="751" y="91" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0ecr393_di" bpmnElement="SequenceFlow_0ecr393"> - <di:waypoint x="990" y="107" /> - <di:waypoint x="1094" y="107" /> - <di:waypoint x="1094" y="209" /> - <di:waypoint x="173" y="209" /> - <di:waypoint x="173" y="306" /> - <di:waypoint x="242" y="306" /> + <di:waypoint x="987" y="107" /> + <di:waypoint x="1091" y="107" /> + <di:waypoint x="1091" y="209" /> + <di:waypoint x="680" y="209" /> <bpmndi:BPMNLabel> <dc:Bounds x="534" y="194" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="CallActivity_1i1pfzb_di" bpmnElement="VnfAdapter"> - <dc:Bounds x="890" y="66" width="100" height="80" /> + <dc:Bounds x="887" y="66" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_0fpfn71_di" bpmnElement="UpdateVfModuleStatus"> - <dc:Bounds x="1042" y="271" width="100" height="80" /> + <dc:Bounds x="1039" y="271" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_04k1b85_di" bpmnElement="UpdateVfModuleHeatStackId"> - <dc:Bounds x="877" y="271" width="100" height="80" /> + <dc:Bounds x="874" y="271" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="SubProcess_1getwnf_di" bpmnElement="SubProcess_1getwnf" isExpanded="true"> - <dc:Bounds x="236" y="439" width="231" height="135" /> + <dc:Bounds x="233" y="439" width="231" height="135" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="StartEvent_1c8o652_di" bpmnElement="StartEvent_1c8o652"> - <dc:Bounds x="275" y="497" width="36" height="36" /> + <dc:Bounds x="272" y="497" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="148" y="533" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="EndEvent_1emam1w_di" bpmnElement="EndEvent_1emam1w"> - <dc:Bounds x="412" y="497" width="36" height="36" /> + <dc:Bounds x="409" y="497" width="36" height="36" /> <bpmndi:BPMNLabel> <dc:Bounds x="285" y="533" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0gcots6_di" bpmnElement="SequenceFlow_0gcots6"> - <di:waypoint x="311" y="515" /> - <di:waypoint x="412" y="515" /> + <di:waypoint x="308" y="515" /> + <di:waypoint x="409" y="515" /> <bpmndi:BPMNLabel> <dc:Bounds x="262" y="494" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0rds4rj_di" bpmnElement="SequenceFlow_0rds4rj"> - <di:waypoint x="977" y="311" /> - <di:waypoint x="1042" y="311" /> + <di:waypoint x="974" y="311" /> + <di:waypoint x="1039" y="311" /> <bpmndi:BPMNLabel> <dc:Bounds x="910" y="296" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1vbwdaw_di" bpmnElement="SequenceFlow_1vbwdaw"> - <di:waypoint x="1142" y="311" /> - <di:waypoint x="1183" y="311" /> - <di:waypoint x="1183" y="311" /> - <di:waypoint x="1218" y="311" /> + <di:waypoint x="1139" y="311" /> + <di:waypoint x="1180" y="311" /> + <di:waypoint x="1180" y="311" /> + <di:waypoint x="1215" y="311" /> <bpmndi:BPMNLabel> <dc:Bounds x="1098" y="311" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_1v8zx4s_di" bpmnElement="CreateNetworkPolicies"> - <dc:Bounds x="242" y="271" width="100" height="80" /> + <dc:Bounds x="239" y="271" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0xqhep5_di" bpmnElement="SequenceFlow_0xqhep5"> - <di:waypoint x="342" y="311" /> - <di:waypoint x="395" y="311" /> + <di:waypoint x="339" y="311" /> + <di:waypoint x="392" y="311" /> <bpmndi:BPMNLabel> <dc:Bounds x="269" y="296" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_015ayw5_di" bpmnElement="UpdateVnfIpv4OamAddress"> - <dc:Bounds x="395" y="271" width="100" height="80" /> + <dc:Bounds x="392" y="271" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1yo6mvv_di" bpmnElement="SequenceFlow_1yo6mvv"> - <di:waypoint x="495" y="311" /> - <di:waypoint x="564" y="311" /> + <di:waypoint x="492" y="311" /> + <di:waypoint x="561" y="311" /> <bpmndi:BPMNLabel> <dc:Bounds x="430" y="296" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_0mlfsc9_di" bpmnElement="UpdateVnfManagementV6Address"> - <dc:Bounds x="564" y="271" width="100" height="80" /> + <dc:Bounds x="561" y="271" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1i03uy2_di" bpmnElement="SequenceFlow_1i03uy2"> - <di:waypoint x="664" y="311" /> - <di:waypoint x="712" y="311" /> + <di:waypoint x="661" y="311" /> + <di:waypoint x="709" y="311" /> <bpmndi:BPMNLabel> <dc:Bounds x="588" y="296" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_0wctnhw_di" bpmnElement="UpdateVfModuleContrailServiceInstanceFqdn"> - <dc:Bounds x="712" y="271" width="100" height="80" /> + <dc:Bounds x="709" y="271" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_15do1tu_di" bpmnElement="SequenceFlow_15do1tu"> - <di:waypoint x="812" y="311" /> - <di:waypoint x="877" y="311" /> + <di:waypoint x="809" y="311" /> + <di:waypoint x="874" y="311" /> <bpmndi:BPMNLabel> <dc:Bounds x="745" y="286" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> + <bpmndi:BPMNShape id="ServiceTask_01zrt6x_di" bpmnElement="ServiceTask_01zrt6x"> + <dc:Bounds x="580" y="169" width="100" height="80" /> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge id="SequenceFlow_1io8r33_di" bpmnElement="SequenceFlow_1io8r33"> + <di:waypoint x="580" y="209" /> + <di:waypoint x="478" y="209" /> + </bpmndi:BPMNEdge> + <bpmndi:BPMNShape id="ServiceTask_00d84m7_di" bpmnElement="ServiceTask_00d84m7"> + <dc:Bounds x="378" y="169" width="100" height="80" /> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge id="SequenceFlow_1yn8o6d_di" bpmnElement="SequenceFlow_1yn8o6d"> + <di:waypoint x="378" y="209" /> + <di:waypoint x="170" y="209" /> + <di:waypoint x="170" y="306" /> + <di:waypoint x="239" y="306" /> + </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </bpmn:definitions> diff --git a/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/DeleteVfModuleBB.bpmn b/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/DeleteVfModuleBB.bpmn index ca0f8452cf..87e0b883a9 100644 --- a/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/DeleteVfModuleBB.bpmn +++ b/bpmn/so-bpmn-building-blocks/src/main/resources/subprocess/BuildingBlock/DeleteVfModuleBB.bpmn @@ -1,5 +1,5 @@ <?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:di="http://www.omg.org/spec/DD/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" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.10.0"> +<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/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" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.1.2"> <bpmn:process id="DeleteVfModuleBB" name="DeleteVfModuleBB" isExecutable="true"> <bpmn:startEvent id="DeleteVfModuleBB_Start"> <bpmn:outgoing>SequenceFlow_1oeootm</bpmn:outgoing> @@ -51,7 +51,7 @@ <bpmn:sequenceFlow id="SequenceFlow_09l7pcg" sourceRef="UpdateVfModuleDeleteStatus" targetRef="DeleteVfModuleBB_End" /> <bpmn:sequenceFlow id="SequenceFlow_0xyu3pk" sourceRef="DeleteNetworkPolicies" targetRef="UpdateVnfIpv4OamAddress" /> <bpmn:serviceTask id="DeleteNetworkPolicies" name=" AAI Delete (net policies) " camunda:expression="${AAIDeleteTasks.deleteNetworkPolicies(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}"> - <bpmn:incoming>SequenceFlow_179btn2</bpmn:incoming> + <bpmn:incoming>SequenceFlow_0sy2nky</bpmn:incoming> <bpmn:outgoing>SequenceFlow_0xyu3pk</bpmn:outgoing> </bpmn:serviceTask> <bpmn:serviceTask id="UpdateVnfManagementV6Address" name=" AAI Update (vnf) " camunda:expression="${AAIUpdateTasks.updateManagementV6AddressVnf(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}"> @@ -70,9 +70,9 @@ <bpmn:outgoing>SequenceFlow_0yuz21z</bpmn:outgoing> </bpmn:serviceTask> <bpmn:sequenceFlow id="SequenceFlow_032jv5j" name="Yes " sourceRef="auditEnabledCheck" targetRef="Setup_Audit_Variable"> - <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${execution.getVariable("auditInventoryNeeded") == true}]]></bpmn:conditionExpression> + <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("auditInventoryNeeded") == true}</bpmn:conditionExpression> </bpmn:sequenceFlow> - <bpmn:sequenceFlow id="SequenceFlow_14bu4ys" sourceRef="ExclusiveGateway_1yvh16a" targetRef="aaiThrow" /> + <bpmn:sequenceFlow id="SequenceFlow_14bu4ys" sourceRef="ExclusiveGateway_1yvh16a" targetRef="ServiceTask_08ulmzc" /> <bpmn:serviceTask id="Check_Audit" name="Check Audit Variable" camunda:expression="${AuditTasks.isDeleteAuditNeeded(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}"> <bpmn:incoming>SequenceFlow_1oeootm</bpmn:incoming> <bpmn:outgoing>SequenceFlow_10af0fk</bpmn:outgoing> @@ -100,9 +100,9 @@ <bpmn:escalationEventDefinition escalationRef="Escalation_130je8j" camunda:escalationCodeVariable="auditCode" /> </bpmn:startEvent> </bpmn:subProcess> - <bpmn:sequenceFlow id="SequenceFlow_179btn2" sourceRef="aaiCatch" targetRef="DeleteNetworkPolicies" /> + <bpmn:sequenceFlow id="SequenceFlow_179btn2" sourceRef="aaiCatch" targetRef="ServiceTask_0itw3by" /> <bpmn:intermediateThrowEvent id="aaiThrow" name="Update AAI"> - <bpmn:incoming>SequenceFlow_14bu4ys</bpmn:incoming> + <bpmn:incoming>SequenceFlow_1i9ft2r</bpmn:incoming> <bpmn:linkEventDefinition name="AAI" /> </bpmn:intermediateThrowEvent> <bpmn:intermediateCatchEvent id="aaiCatch" name="Update AAI"> @@ -110,10 +110,10 @@ <bpmn:linkEventDefinition name="AAI" /> </bpmn:intermediateCatchEvent> <bpmn:sequenceFlow id="SequenceFlow_17cd9e2" name="Yes/No" sourceRef="auditSuccessfulCheck" targetRef="ExclusiveGateway_01wvywu"> - <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${execution.getVariable("auditIsSuccessful") == false || execution.getVariable("auditIsSuccessful") == true}]]></bpmn:conditionExpression> + <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("auditIsSuccessful") == false || execution.getVariable("auditIsSuccessful") == true}</bpmn:conditionExpression> </bpmn:sequenceFlow> <bpmn:sequenceFlow id="SequenceFlow_1gdyk9j" name="No" sourceRef="auditSuccessfulCheck" targetRef="EndEvent_0b0ocu0"> - <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${execution.getVariable("auditIsSuccessful") == false}]]></bpmn:conditionExpression> + <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("auditIsSuccessful") == false}</bpmn:conditionExpression> </bpmn:sequenceFlow> <bpmn:inclusiveGateway id="auditSuccessfulCheck" name="Audit Successful?"> <bpmn:incoming>SequenceFlow_0hpj2mm</bpmn:incoming> @@ -163,7 +163,7 @@ <bpmn:outgoing>SequenceFlow_1gjwivp</bpmn:outgoing> </bpmn:exclusiveGateway> <bpmn:sequenceFlow id="SequenceFlow_0f5ljoh" name="Yes" sourceRef="ExclusiveGateway_13fhmpf" targetRef="Audit_Inventory"> - <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[${execution.getVariable("auditInventoryNeeded") == true}]]></bpmn:conditionExpression> + <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("auditInventoryNeeded") == true}</bpmn:conditionExpression> </bpmn:sequenceFlow> <bpmn:exclusiveGateway id="ExclusiveGateway_01wvywu"> <bpmn:incoming>SequenceFlow_17cd9e2</bpmn:incoming> @@ -172,6 +172,16 @@ </bpmn:exclusiveGateway> <bpmn:sequenceFlow id="SequenceFlow_1gjwivp" name="No" sourceRef="ExclusiveGateway_13fhmpf" targetRef="ExclusiveGateway_01wvywu" /> <bpmn:sequenceFlow id="SequenceFlow_13mlz57" sourceRef="ExclusiveGateway_01wvywu" targetRef="ExclusiveGateway_1yvh16a" /> + <bpmn:serviceTask id="ServiceTask_0itw3by" name=" AAI Delete (inventory) " camunda:type="external" camunda:topic="InventoryDelete"> + <bpmn:incoming>SequenceFlow_179btn2</bpmn:incoming> + <bpmn:outgoing>SequenceFlow_0sy2nky</bpmn:outgoing> + </bpmn:serviceTask> + <bpmn:sequenceFlow id="SequenceFlow_0sy2nky" sourceRef="ServiceTask_0itw3by" targetRef="DeleteNetworkPolicies" /> + <bpmn:serviceTask id="ServiceTask_08ulmzc" name=" Create Cloud Variable " camunda:expression="${DeleteVFModule.createInventoryVariable(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}"> + <bpmn:incoming>SequenceFlow_14bu4ys</bpmn:incoming> + <bpmn:outgoing>SequenceFlow_1i9ft2r</bpmn:outgoing> + </bpmn:serviceTask> + <bpmn:sequenceFlow id="SequenceFlow_1i9ft2r" sourceRef="ServiceTask_08ulmzc" targetRef="aaiThrow" /> </bpmn:process> <bpmn:error id="Error_0jjnve8" name="Error_3k24na6" errorCode="AAIInventoryFailure" /> <bpmn:escalation id="Escalation_130je8j" name="audit" escalationCode="audit1" /> @@ -187,11 +197,11 @@ <dc:Bounds x="888" y="312" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_0pbhsub_di" bpmnElement="UpdateVfModuleDeleteStatus"> - <dc:Bounds x="907" y="468" width="100" height="80" /> + <dc:Bounds x="1136" y="468" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_08tvhtf_di" bpmnElement="SequenceFlow_08tvhtf"> - <di:waypoint xsi:type="dc:Point" x="988" y="352" /> - <di:waypoint xsi:type="dc:Point" x="1020" y="352" /> + <di:waypoint x="988" y="352" /> + <di:waypoint x="1020" y="352" /> <bpmndi:BPMNLabel> <dc:Bounds x="959" y="331" width="90" height="12" /> </bpmndi:BPMNLabel> @@ -206,9 +216,9 @@ <dc:Bounds x="1020" y="312" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_02lpx87_di" bpmnElement="SequenceFlow_02lpx87"> - <di:waypoint xsi:type="dc:Point" x="1120" y="352" /> - <di:waypoint xsi:type="dc:Point" x="1203" y="352" /> - <di:waypoint xsi:type="dc:Point" x="1203" y="309" /> + <di:waypoint x="1120" y="352" /> + <di:waypoint x="1203" y="352" /> + <di:waypoint x="1203" y="309" /> <bpmndi:BPMNLabel> <dc:Bounds x="1116.5" y="337" width="90" height="0" /> </bpmndi:BPMNLabel> @@ -229,80 +239,86 @@ </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0h607z0_di" bpmnElement="SequenceFlow_0h607z0"> - <di:waypoint xsi:type="dc:Point" x="369" y="958" /> - <di:waypoint xsi:type="dc:Point" x="462" y="958" /> + <di:waypoint x="369" y="958" /> + <di:waypoint x="462" y="958" /> <bpmndi:BPMNLabel> <dc:Bounds x="371" y="937" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_0vlgqod_di" bpmnElement="UpdateVfModuleHeatStackId"> - <dc:Bounds x="779" y="468" width="100" height="80" /> + <dc:Bounds x="969" y="468" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_01vfwtp_di" bpmnElement="SequenceFlow_01vfwtp"> - <di:waypoint xsi:type="dc:Point" x="879" y="508" /> - <di:waypoint xsi:type="dc:Point" x="907" y="508" /> + <di:waypoint x="1069" y="508" /> + <di:waypoint x="1136" y="508" /> <bpmndi:BPMNLabel> <dc:Bounds x="848" y="493" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_09l7pcg_di" bpmnElement="SequenceFlow_09l7pcg"> - <di:waypoint xsi:type="dc:Point" x="1007" y="508" /> - <di:waypoint xsi:type="dc:Point" x="1268" y="508" /> + <di:waypoint x="1236" y="508" /> + <di:waypoint x="1268" y="508" /> <bpmndi:BPMNLabel> <dc:Bounds x="1092.5" y="493" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0xyu3pk_di" bpmnElement="SequenceFlow_0xyu3pk"> - <di:waypoint xsi:type="dc:Point" x="376" y="508" /> - <di:waypoint xsi:type="dc:Point" x="404" y="508" /> + <di:waypoint x="420" y="468" /> + <di:waypoint x="420" y="448" /> + <di:waypoint x="443" y="409" /> + <di:waypoint x="497" y="468" /> <bpmndi:BPMNLabel> <dc:Bounds x="345" y="493" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_0tty0ac_di" bpmnElement="DeleteNetworkPolicies"> - <dc:Bounds x="276" y="468" width="100" height="80" /> + <dc:Bounds x="370" y="468" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="ServiceTask_0lrrd16_di" bpmnElement="UpdateVnfManagementV6Address"> - <dc:Bounds x="531" y="468" width="100" height="80" /> + <dc:Bounds x="642" y="468" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0jtem3b_di" bpmnElement="SequenceFlow_0jtem3b"> - <di:waypoint xsi:type="dc:Point" x="504" y="508" /> - <di:waypoint xsi:type="dc:Point" x="531" y="508" /> + <di:waypoint x="533" y="468" /> + <di:waypoint x="533" y="448" /> + <di:waypoint x="619" y="387" /> + <di:waypoint x="692" y="448" /> + <di:waypoint x="692" y="468" /> <bpmndi:BPMNLabel> <dc:Bounds x="473" y="493" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_0w9805b_di" bpmnElement="UpdateVnfIpv4OamAddress"> - <dc:Bounds x="404" y="468" width="100" height="80" /> + <dc:Bounds x="483" y="468" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0khqfnc_di" bpmnElement="SequenceFlow_0khqfnc"> - <di:waypoint xsi:type="dc:Point" x="631" y="508" /> - <di:waypoint xsi:type="dc:Point" x="654" y="508" /> + <di:waypoint x="742" y="493" /> + <di:waypoint x="891" y="448" /> + <di:waypoint x="891" y="468" /> <bpmndi:BPMNLabel> <dc:Bounds x="598" y="493" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0yuz21z_di" bpmnElement="SequenceFlow_0yuz21z"> - <di:waypoint xsi:type="dc:Point" x="754" y="508" /> - <di:waypoint xsi:type="dc:Point" x="779" y="508" /> + <di:waypoint x="941" y="508" /> + <di:waypoint x="969" y="508" /> <bpmndi:BPMNLabel> <dc:Bounds x="722" y="493" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="ServiceTask_0v8naz9_di" bpmnElement="UpdateVfModuleContrailServiceInstanceFqdn"> - <dc:Bounds x="654" y="468" width="100" height="80" /> + <dc:Bounds x="841" y="468" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_032jv5j_di" bpmnElement="SequenceFlow_032jv5j"> - <di:waypoint xsi:type="dc:Point" x="397" y="259" /> - <di:waypoint xsi:type="dc:Point" x="397" y="214" /> - <di:waypoint xsi:type="dc:Point" x="444" y="214" /> + <di:waypoint x="397" y="259" /> + <di:waypoint x="397" y="214" /> + <di:waypoint x="444" y="214" /> <bpmndi:BPMNLabel> <dc:Bounds x="405.5348837209302" y="217.95121951219514" width="19" height="24" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_14bu4ys_di" bpmnElement="SequenceFlow_14bu4ys"> - <di:waypoint xsi:type="dc:Point" x="1228" y="284" /> - <di:waypoint xsi:type="dc:Point" x="1323" y="284" /> + <di:waypoint x="1228" y="284" /> + <di:waypoint x="1284" y="284" /> <bpmndi:BPMNLabel> <dc:Bounds x="1230.5" y="262.5" width="90" height="13" /> </bpmndi:BPMNLabel> @@ -329,30 +345,30 @@ <dc:Bounds x="353" y="703" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0xuodpy_di" bpmnElement="SequenceFlow_0xuodpy"> - <di:waypoint xsi:type="dc:Point" x="298" y="743" /> - <di:waypoint xsi:type="dc:Point" x="353" y="743" /> + <di:waypoint x="298" y="743" /> + <di:waypoint x="353" y="743" /> <bpmndi:BPMNLabel> <dc:Bounds x="280.5" y="722" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1fhst92_di" bpmnElement="SequenceFlow_1fhst92"> - <di:waypoint xsi:type="dc:Point" x="453" y="743" /> - <di:waypoint xsi:type="dc:Point" x="510" y="743" /> + <di:waypoint x="453" y="743" /> + <di:waypoint x="510" y="743" /> <bpmndi:BPMNLabel> <dc:Bounds x="393" y="722" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_179btn2_di" bpmnElement="SequenceFlow_179btn2"> - <di:waypoint xsi:type="dc:Point" x="195" y="508" /> - <di:waypoint xsi:type="dc:Point" x="276" y="508" /> + <di:waypoint x="195" y="508" /> + <di:waypoint x="225" y="508" /> <bpmndi:BPMNLabel> <dc:Bounds x="191" y="487" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="IntermediateThrowEvent_1sftyjz_di" bpmnElement="aaiThrow"> - <dc:Bounds x="1323" y="266" width="36" height="36" /> + <dc:Bounds x="1481" y="266" width="36" height="36" /> <bpmndi:BPMNLabel> - <dc:Bounds x="1315" y="305" width="55" height="12" /> + <dc:Bounds x="1472" y="305" width="57" height="14" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="IntermediateCatchEvent_13y483m_di" bpmnElement="aaiCatch"> @@ -362,18 +378,18 @@ </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_17cd9e2_di" bpmnElement="SequenceFlow_17cd9e2"> - <di:waypoint xsi:type="dc:Point" x="1108" y="157" /> - <di:waypoint xsi:type="dc:Point" x="1156" y="157" /> - <di:waypoint xsi:type="dc:Point" x="1156" y="189" /> + <di:waypoint x="1108" y="157" /> + <di:waypoint x="1156" y="157" /> + <di:waypoint x="1156" y="189" /> <bpmndi:BPMNLabel> <dc:Bounds x="1111.0434782608695" y="137" width="36" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1gdyk9j_di" bpmnElement="SequenceFlow_1gdyk9j"> - <di:waypoint xsi:type="dc:Point" x="1083" y="132" /> - <di:waypoint xsi:type="dc:Point" x="1083" y="109" /> - <di:waypoint xsi:type="dc:Point" x="1083" y="109" /> - <di:waypoint xsi:type="dc:Point" x="1083" y="84" /> + <di:waypoint x="1083" y="132" /> + <di:waypoint x="1083" y="109" /> + <di:waypoint x="1083" y="109" /> + <di:waypoint x="1083" y="84" /> <bpmndi:BPMNLabel> <dc:Bounds x="1083" y="110.74468085106383" width="14" height="12" /> </bpmndi:BPMNLabel> @@ -409,24 +425,24 @@ </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1bt1p2u_di" bpmnElement="SequenceFlow_1bt1p2u"> - <di:waypoint xsi:type="dc:Point" x="397" y="309" /> - <di:waypoint xsi:type="dc:Point" x="397" y="352" /> - <di:waypoint xsi:type="dc:Point" x="722" y="352" /> - <di:waypoint xsi:type="dc:Point" x="722" y="309" /> + <di:waypoint x="397" y="309" /> + <di:waypoint x="397" y="352" /> + <di:waypoint x="722" y="352" /> + <di:waypoint x="722" y="309" /> <bpmndi:BPMNLabel> <dc:Bounds x="407" y="326" width="14" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1oeootm_di" bpmnElement="SequenceFlow_1oeootm"> - <di:waypoint xsi:type="dc:Point" x="195" y="284" /> - <di:waypoint xsi:type="dc:Point" x="244" y="284" /> + <di:waypoint x="195" y="284" /> + <di:waypoint x="244" y="284" /> <bpmndi:BPMNLabel> <dc:Bounds x="219.5" y="263" width="0" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_10af0fk_di" bpmnElement="SequenceFlow_10af0fk"> - <di:waypoint xsi:type="dc:Point" x="344" y="284" /> - <di:waypoint xsi:type="dc:Point" x="372" y="284" /> + <di:waypoint x="344" y="284" /> + <di:waypoint x="372" y="284" /> <bpmndi:BPMNLabel> <dc:Bounds x="358" y="263" width="0" height="12" /> </bpmndi:BPMNLabel> @@ -435,39 +451,39 @@ <dc:Bounds x="571" y="174" width="100" height="80" /> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1iulltd_di" bpmnElement="SequenceFlow_1iulltd"> - <di:waypoint xsi:type="dc:Point" x="544" y="214" /> - <di:waypoint xsi:type="dc:Point" x="571" y="214" /> + <di:waypoint x="544" y="214" /> + <di:waypoint x="571" y="214" /> <bpmndi:BPMNLabel> <dc:Bounds x="557.5" y="193" width="0" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0dzf7hz_di" bpmnElement="SequenceFlow_0dzf7hz"> - <di:waypoint xsi:type="dc:Point" x="671" y="214" /> - <di:waypoint xsi:type="dc:Point" x="722" y="214" /> - <di:waypoint xsi:type="dc:Point" x="722" y="259" /> + <di:waypoint x="671" y="214" /> + <di:waypoint x="722" y="214" /> + <di:waypoint x="722" y="259" /> <bpmndi:BPMNLabel> <dc:Bounds x="651.5" y="193" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1bq9g02_di" bpmnElement="SequenceFlow_1bq9g02"> - <di:waypoint xsi:type="dc:Point" x="747" y="284" /> - <di:waypoint xsi:type="dc:Point" x="796" y="284" /> + <di:waypoint x="747" y="284" /> + <di:waypoint x="796" y="284" /> <bpmndi:BPMNLabel> <dc:Bounds x="726.5" y="263" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_0mtzl4z_di" bpmnElement="SequenceFlow_0mtzl4z"> - <di:waypoint xsi:type="dc:Point" x="821" y="259" /> - <di:waypoint xsi:type="dc:Point" x="821" y="214" /> - <di:waypoint xsi:type="dc:Point" x="846" y="214" /> + <di:waypoint x="821" y="259" /> + <di:waypoint x="821" y="214" /> + <di:waypoint x="846" y="214" /> <bpmndi:BPMNLabel> <dc:Bounds x="791" y="231" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_028rmiu_di" bpmnElement="SequenceFlow_028rmiu"> - <di:waypoint xsi:type="dc:Point" x="821" y="309" /> - <di:waypoint xsi:type="dc:Point" x="821" y="352" /> - <di:waypoint xsi:type="dc:Point" x="888" y="352" /> + <di:waypoint x="821" y="309" /> + <di:waypoint x="821" y="352" /> + <di:waypoint x="888" y="352" /> <bpmndi:BPMNLabel> <dc:Bounds x="791" y="324.5" width="90" height="12" /> </bpmndi:BPMNLabel> @@ -485,8 +501,8 @@ </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0hpj2mm_di" bpmnElement="SequenceFlow_0hpj2mm"> - <di:waypoint xsi:type="dc:Point" x="1030" y="157" /> - <di:waypoint xsi:type="dc:Point" x="1058" y="157" /> + <di:waypoint x="1030" y="157" /> + <di:waypoint x="1058" y="157" /> <bpmndi:BPMNLabel> <dc:Bounds x="999" y="136" width="90" height="12" /> </bpmndi:BPMNLabel> @@ -498,9 +514,9 @@ </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0f5ljoh_di" bpmnElement="SequenceFlow_0f5ljoh"> - <di:waypoint xsi:type="dc:Point" x="871" y="189" /> - <di:waypoint xsi:type="dc:Point" x="871" y="157" /> - <di:waypoint xsi:type="dc:Point" x="930" y="157" /> + <di:waypoint x="871" y="189" /> + <di:waypoint x="871" y="157" /> + <di:waypoint x="930" y="157" /> <bpmndi:BPMNLabel> <dc:Bounds x="877.601615925754" y="162.89580806038546" width="19" height="12" /> </bpmndi:BPMNLabel> @@ -512,22 +528,38 @@ </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_1gjwivp_di" bpmnElement="SequenceFlow_1gjwivp"> - <di:waypoint xsi:type="dc:Point" x="871" y="239" /> - <di:waypoint xsi:type="dc:Point" x="871" y="266" /> - <di:waypoint xsi:type="dc:Point" x="1156" y="266" /> - <di:waypoint xsi:type="dc:Point" x="1156" y="239" /> + <di:waypoint x="871" y="239" /> + <di:waypoint x="871" y="266" /> + <di:waypoint x="1156" y="266" /> + <di:waypoint x="1156" y="239" /> <bpmndi:BPMNLabel> <dc:Bounds x="879" y="244" width="14" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_13mlz57_di" bpmnElement="SequenceFlow_13mlz57"> - <di:waypoint xsi:type="dc:Point" x="1181" y="214" /> - <di:waypoint xsi:type="dc:Point" x="1203" y="214" /> - <di:waypoint xsi:type="dc:Point" x="1203" y="259" /> + <di:waypoint x="1181" y="214" /> + <di:waypoint x="1203" y="214" /> + <di:waypoint x="1203" y="259" /> <bpmndi:BPMNLabel> <dc:Bounds x="1147" y="193" width="90" height="12" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> + <bpmndi:BPMNShape id="ServiceTask_0itw3by_di" bpmnElement="ServiceTask_0itw3by"> + <dc:Bounds x="225" y="468" width="100" height="80" /> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge id="SequenceFlow_0sy2nky_di" bpmnElement="SequenceFlow_0sy2nky"> + <di:waypoint x="325" y="508" /> + <di:waypoint x="370" y="508" /> + </bpmndi:BPMNEdge> + <bpmndi:BPMNShape id="ServiceTask_08ulmzc_di" bpmnElement="ServiceTask_08ulmzc"> + <dc:Bounds x="1284" y="244" width="100" height="80" /> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge id="SequenceFlow_1i9ft2r_di" bpmnElement="SequenceFlow_1i9ft2r"> + <di:waypoint x="1384" y="276" /> + <di:waypoint x="1433" y="276" /> + <di:waypoint x="1433" y="284" /> + <di:waypoint x="1481" y="284" /> + </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </bpmn:definitions> diff --git a/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/infrastructure/bpmn/subprocess/CreateVfModuleBBTest.java b/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/infrastructure/bpmn/subprocess/CreateVfModuleBBTest.java deleted file mode 100644 index 4c5edade6e..0000000000 --- a/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/infrastructure/bpmn/subprocess/CreateVfModuleBBTest.java +++ /dev/null @@ -1,117 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP - SO - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.so.bpmn.infrastructure.bpmn.subprocess; - -import static org.camunda.bpm.engine.test.assertions.ProcessEngineTests.assertThat; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.Mockito.doThrow; -import org.camunda.bpm.engine.delegate.BpmnError; -import org.camunda.bpm.engine.runtime.ProcessInstance; -import org.junit.Test; -import org.onap.so.bpmn.BaseBPMNTest; -import org.onap.so.bpmn.common.BuildingBlockExecution; - -public class CreateVfModuleBBTest extends BaseBPMNTest { - @Test - public void sunnyDayCreateVfModule_Test() throws InterruptedException { - mockSubprocess("VnfAdapter", "Mocked VnfAdapter", "GenericStub"); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("CreateVfModuleBB", variables); - assertThat(pi).isNotNull(); - assertThat(pi).isStarted().hasPassedInOrder("CreateVfModuleBB_Start", "QueryVnf", "QueryVfModule", - "CreateVfModule", "VnfAdapter", "CreateNetworkPolicies", "UpdateVnfIpv4OamAddress", - "UpdateVnfManagementV6Address", "UpdateVfModuleContrailServiceInstanceFqdn", - "UpdateVfModuleHeatStackId", "UpdateVfModuleStatus", "CreateVfModuleBB_End"); - assertThat(pi).isEnded(); - } - - @Test - public void rainyDayCreateVfModuleSDNCQueryVnfError_Test() throws Exception { - doThrow(new BpmnError("7000", "TESTING ERRORS")).when(sdncQueryTasks) - .queryVnf(any(BuildingBlockExecution.class)); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("CreateVfModuleBB", variables); - assertThat(pi).isNotNull(); - assertThat(pi).isStarted().hasPassedInOrder("CreateVfModuleBB_Start", "QueryVnf").hasNotPassed("QueryVfModule", - "CreateVfModule", "VnfAdapter", "CreateNetworkPolicies", "UpdateVnfIpv4OamAddress", - "UpdateVnfManagementV6Address", "UpdateVfModuleContrailServiceInstanceFqdn", - "UpdateVfModuleHeatStackId", "UpdateVfModuleStatus", "CreateVfModuleBB_End"); - assertThat(pi).isEnded(); - } - - @Test - public void rainyDayCreateVfModuleSDNCQueryVnfModuleError_Test() throws Exception { - doThrow(new BpmnError("7000", "TESTING ERRORS")).when(sdncQueryTasks) - .queryVfModule(any(BuildingBlockExecution.class)); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("CreateVfModuleBB", variables); - assertThat(pi).isNotNull(); - assertThat(pi).isStarted().hasPassedInOrder("CreateVfModuleBB_Start", "QueryVnf", "QueryVfModule").hasNotPassed( - "CreateVfModule", "VnfAdapter", "CreateNetworkPolicies", "UpdateVnfIpv4OamAddress", - "UpdateVnfManagementV6Address", "UpdateVfModuleContrailServiceInstanceFqdn", - "UpdateVfModuleHeatStackId", "UpdateVfModuleStatus", "CreateVfModuleBB_End"); - assertThat(pi).isEnded(); - } - - @Test - public void rainyDayCreateVfModuleVnfAdapterCreateError_Test() throws Exception { - doThrow(new BpmnError("7000", "TESTING ERRORS")).when(vnfAdapterCreateTasks) - .createVfModule(any(BuildingBlockExecution.class)); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("CreateVfModuleBB", variables); - assertThat(pi).isNotNull(); - assertThat(pi).isStarted() - .hasPassedInOrder("CreateVfModuleBB_Start", "QueryVnf", "QueryVfModule", "CreateVfModule") - .hasNotPassed("VnfAdapter", "CreateNetworkPolicies", "UpdateVnfIpv4OamAddress", - "UpdateVnfManagementV6Address", "UpdateVfModuleContrailServiceInstanceFqdn", - "UpdateVfModuleHeatStackId", "UpdateVfModuleStatus", "CreateVfModuleBB_End"); - assertThat(pi).isEnded(); - } - - @Test - public void rainyDayCreateVfModuleUpdateVfModuleHeatStackIdError_Test() throws Exception { - mockSubprocess("VnfAdapter", "Mocked VnfAdapter", "GenericStub"); - - doThrow(new BpmnError("7000", "TESTING ERRORS")).when(aaiUpdateTasks) - .updateHeatStackIdVfModule(any(BuildingBlockExecution.class)); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("CreateVfModuleBB", variables); - assertThat(pi).isNotNull(); - assertThat(pi).isStarted() - .hasPassedInOrder("CreateVfModuleBB_Start", "QueryVnf", "QueryVfModule", "CreateVfModule", "VnfAdapter", - "CreateNetworkPolicies", "UpdateVnfIpv4OamAddress", "UpdateVnfManagementV6Address", - "UpdateVfModuleContrailServiceInstanceFqdn", "UpdateVfModuleHeatStackId") - .hasNotPassed("UpdateVfModuleStatus", "CreateVfModuleBB_End"); - assertThat(pi).isEnded(); - - } - - @Test - public void rainyDayCreateVfModuleUpdateVfModuleStatusError_Test() throws Exception { - mockSubprocess("VnfAdapter", "Mocked VnfAdapter", "GenericStub"); - doThrow(new BpmnError("7000", "TESTING ERRORS")).when(aaiUpdateTasks) - .updateOrchestrationStatusCreatedVfModule(any(BuildingBlockExecution.class)); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("CreateVfModuleBB", variables); - assertThat(pi).isNotNull(); - assertThat(pi).isStarted() - .hasPassedInOrder("CreateVfModuleBB_Start", "QueryVnf", "QueryVfModule", "CreateVfModule", "VnfAdapter", - "CreateNetworkPolicies", "UpdateVnfIpv4OamAddress", "UpdateVnfManagementV6Address", - "UpdateVfModuleContrailServiceInstanceFqdn", "UpdateVfModuleHeatStackId", - "UpdateVfModuleStatus") - .hasNotPassed("CreateVfModuleBB_End"); - assertThat(pi).isEnded(); - } -} diff --git a/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/infrastructure/bpmn/subprocess/DeleteVfModuleBBTest.java b/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/infrastructure/bpmn/subprocess/DeleteVfModuleBBTest.java deleted file mode 100644 index 47d0ad9b7f..0000000000 --- a/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/infrastructure/bpmn/subprocess/DeleteVfModuleBBTest.java +++ /dev/null @@ -1,91 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP - SO - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ -package org.onap.so.bpmn.infrastructure.bpmn.subprocess; - -import static org.camunda.bpm.engine.test.assertions.ProcessEngineTests.assertThat; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.Mockito.doThrow; -import java.io.IOException; -import java.util.List; -import org.camunda.bpm.engine.delegate.BpmnError; -import org.camunda.bpm.engine.externaltask.LockedExternalTask; -import org.camunda.bpm.engine.runtime.ProcessInstance; -import org.junit.Before; -import org.junit.Test; -import org.onap.so.bpmn.BaseBPMNTest; -import org.onap.so.bpmn.common.BuildingBlockExecution; - -public class DeleteVfModuleBBTest extends BaseBPMNTest { - - @Before - public void before() { - variables.put("auditInventoryNeeded", true); - variables.put("auditIsSuccessful", true); - } - - @Test - public void sunnyDay() throws InterruptedException, IOException { - mockSubprocess("SDNCHandler", "My Mock Process Name", "GenericStub"); - mockSubprocess("VnfAdapter", "Mocked VnfAdapter", "GenericStub"); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("DeleteVfModuleBB", variables); - List<LockedExternalTask> tasks = externalTaskService.fetchAndLock(100, "externalWorkerId") - .topic("InventoryDeleteAudit", 60L * 1000L).topic("InventoryQueryAudit", 60L * 1000L).execute(); - while (!tasks.isEmpty()) { - for (LockedExternalTask task : tasks) { - externalTaskService.complete(task.getId(), "externalWorkerId"); - } - tasks = externalTaskService.fetchAndLock(100, "externalWorkerId").topic("InventoryDeleteAudit", 60L * 1000L) - .topic("InventoryQueryAudit", 60L * 1000L).execute(); - } - assertThat(pi).isNotNull(); - assertThat(pi).isStarted().hasPassed("DeleteVfModuleBB_Start", "Check_Audit", "auditEnabledCheck", - "Setup_Audit_Variable", "Setup_Audit_Variable", "aicQueryStack", "ExclusiveGateway_1t9q2jl", - "ExclusiveGateway_1naduhl", "ExclusiveGateway_13fhmpf", "DeleteVfModuleVnfAdapter", "VnfAdapter", - "Audit_Inventory", "ExclusiveGateway_1yvh16a", "auditSuccessfulCheck", "ExclusiveGateway_01wvywu", - "ExclusiveGateway_1yvh16a", "DeleteNetworkPolicies", "UpdateVnfIpv4OamAddress", - "UpdateVnfManagementV6Address", "UpdateVfModuleContrailServiceInstanceFqdn", - "UpdateVfModuleHeatStackId", "UpdateVfModuleDeleteStatus", "DeleteVfModuleBB_End"); - assertThat(pi).isEnded(); - } - - @Test - public void rainyDay() throws Exception { - doThrow(BpmnError.class).when(vnfAdapterDeleteTasks).deleteVfModule(any(BuildingBlockExecution.class)); - ProcessInstance pi = runtimeService.startProcessInstanceByKey("DeleteVfModuleBB", variables); - List<LockedExternalTask> tasks = externalTaskService.fetchAndLock(100, "externalWorkerId") - .topic("InventoryDeleteAudit", 60L * 1000L).topic("InventoryQueryAudit", 60L * 1000L).execute(); - while (!tasks.isEmpty()) { - for (LockedExternalTask task : tasks) { - externalTaskService.complete(task.getId(), "externalWorkerId"); - } - tasks = externalTaskService.fetchAndLock(100, "externalWorkerId").topic("InventoryDeleteAudit", 60L * 1000L) - .topic("InventoryQueryAudit", 60L * 1000L).execute(); - } - assertThat(pi).isNotNull(); - assertThat(pi).isStarted() - .hasPassed("DeleteVfModuleBB_Start", "Check_Audit", "auditEnabledCheck", "Setup_Audit_Variable", - "Setup_Audit_Variable", "aicQueryStack", "ExclusiveGateway_1t9q2jl", "ExclusiveGateway_1naduhl", - "ExclusiveGateway_13fhmpf") - .hasNotPassed("VnfAdapter", "DeleteNetworkPolicies", "UpdateVnfIpv4OamAddress", - "UpdateVnfManagementV6Address", "UpdateVfModuleContrailServiceInstanceFqdn", - "UpdateVfModuleHeatStackId", "UpdateVfModuleDeleteStatus", "DeleteVfModuleBB_End"); - assertThat(pi).isEnded(); - } -} diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModule.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModule.java new file mode 100644 index 0000000000..4b1e40917a --- /dev/null +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModule.java @@ -0,0 +1,86 @@ +package org.onap.so.bpmn.infrastructure.vfmodule; + +import java.util.Optional; +import org.onap.so.bpmn.common.BuildingBlockExecution; +import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion; +import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf; +import org.onap.so.bpmn.servicedecomposition.bbobjects.VfModule; +import org.onap.so.bpmn.servicedecomposition.entities.GeneralBuildingBlock; +import org.onap.so.bpmn.servicedecomposition.entities.ResourceKey; +import org.onap.so.bpmn.servicedecomposition.tasks.ExtractPojosForBB; +import org.onap.so.client.aai.AAIObjectPlurals; +import org.onap.so.client.aai.AAIObjectType; +import org.onap.so.client.aai.AAIResourcesClient; +import org.onap.so.client.aai.entities.AAIResultWrapper; +import org.onap.so.client.aai.entities.Relationships; +import org.onap.so.client.aai.entities.uri.AAIPluralResourceUri; +import org.onap.so.client.aai.entities.uri.AAIResourceUri; +import org.onap.so.client.aai.entities.uri.AAIUriFactory; +import org.onap.so.client.exception.ExceptionBuilder; +import org.onap.so.cloud.resource.beans.CloudInformation; +import org.onap.so.cloud.resource.beans.NodeType; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + + +@Component +public class CreateVFModule { + + private static final Logger logger = LoggerFactory.getLogger(CreateVFModule.class); + + @Autowired + protected ExceptionBuilder exceptionUtil; + + @Autowired + protected ExtractPojosForBB extractPojosForBB; + + public void createInventoryVariable(BuildingBlockExecution execution) { + try { + GeneralBuildingBlock gBBInput = execution.getGeneralBuildingBlock(); + VfModule vfModule = extractPojosForBB.extractByKey(execution, ResourceKey.VF_MODULE_ID); + GenericVnf vnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID); + CloudInformation cloudInformation = new CloudInformation(); + cloudInformation.setOwner(gBBInput.getCloudRegion().getCloudOwner()); + cloudInformation.setRegionId(gBBInput.getCloudRegion().getLcpCloudRegionId()); + cloudInformation.setTenantId(gBBInput.getTenant().getTenantId()); + cloudInformation.setTenantName(gBBInput.getTenant().getTenantName()); + cloudInformation.setTenantContext(gBBInput.getTenant().getTenantContext()); + cloudInformation.setTemplateInstanceId(execution.getVariable("heatStackId")); + cloudInformation.setNodeType(getNodeType(gBBInput.getCloudRegion())); + cloudInformation.setVnfName(vnf.getVnfName()); + cloudInformation.setVnfId(vnf.getVnfId()); + cloudInformation.setVfModuleId(vfModule.getVfModuleId()); + execution.setVariable("cloudInformation", cloudInformation); + } catch (Exception e) { + logger.error("Error building CloudInformation Object for NC Inventory", e); + exceptionUtil.buildAndThrowWorkflowException(execution, 7000, e); + } + } + + protected NodeType getNodeType(CloudRegion cloudRegion) { + AAIResourceUri cloudRegionUri = AAIUriFactory.createResourceUri(AAIObjectType.CLOUD_REGION, + cloudRegion.getCloudOwner(), cloudRegion.getLcpCloudRegionId()); + AAIResourcesClient client = getAAIClient(); + Optional<Relationships> relationships = client.get(cloudRegionUri).getRelationships(); + if (relationships.isPresent()) { + AAIPluralResourceUri networkTechsGreenfieldUri = AAIUriFactory + .createResourceUri(AAIObjectType.CLOUD_REGION, cloudRegion.getCloudOwner(), + cloudRegion.getLcpCloudRegionId()) + .relatedTo(AAIObjectPlurals.NETWORK_TECHNOLOGY) + .queryParam("network-technology-name", NodeType.GREENFIELD.getNetworkTechnologyName()); + + AAIResultWrapper networkTechsGreenfield = client.get(networkTechsGreenfieldUri); + if (networkTechsGreenfield != null && !networkTechsGreenfield.isEmpty()) { + return NodeType.GREENFIELD; + } + } + return NodeType.BROWNFIELD; + } + + protected AAIResourcesClient getAAIClient() { + return new AAIResourcesClient(); + } + +} diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/DeleteVFModule.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/DeleteVFModule.java new file mode 100644 index 0000000000..ef9b06fe8c --- /dev/null +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/DeleteVFModule.java @@ -0,0 +1,51 @@ +package org.onap.so.bpmn.infrastructure.vfmodule; + +import org.onap.so.bpmn.common.BuildingBlockExecution; +import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf; +import org.onap.so.bpmn.servicedecomposition.bbobjects.VfModule; +import org.onap.so.bpmn.servicedecomposition.entities.GeneralBuildingBlock; +import org.onap.so.bpmn.servicedecomposition.entities.ResourceKey; +import org.onap.so.bpmn.servicedecomposition.tasks.ExtractPojosForBB; +import org.onap.so.client.exception.ExceptionBuilder; +import org.onap.so.cloud.resource.beans.CloudInformation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class DeleteVFModule { + + private static final Logger logger = LoggerFactory.getLogger(DeleteVFModule.class); + + @Autowired + private ExceptionBuilder exceptionUtil; + + @Autowired + private ExtractPojosForBB extractPojosForBB; + + public void createInventoryVariable(BuildingBlockExecution execution) { + try { + VfModule vfModule = extractPojosForBB.extractByKey(execution, ResourceKey.VF_MODULE_ID); + GenericVnf vnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID); + GeneralBuildingBlock gBBInput = execution.getGeneralBuildingBlock(); + CloudInformation cloudInformation = new CloudInformation(); + cloudInformation.setOwner(gBBInput.getCloudRegion().getCloudOwner()); + cloudInformation.setRegionId(gBBInput.getCloudRegion().getLcpCloudRegionId()); + cloudInformation.setTenantId(gBBInput.getTenant().getTenantId()); + cloudInformation.setTenantName(gBBInput.getTenant().getTenantName()); + cloudInformation.setTenantContext(gBBInput.getTenant().getTenantContext()); + cloudInformation.setTemplateInstanceId(vfModule.getHeatStackId()); + cloudInformation.setVnfName(vnf.getVnfName()); + cloudInformation.setVnfId(vnf.getVnfId()); + cloudInformation.setVfModuleId(vfModule.getVfModuleId()); + + execution.setVariable("cloudInformation", cloudInformation); + } catch (Exception e) { + logger.error("Error building CloudInformation Object for NC Inventory", e); + exceptionUtil.buildAndThrowWorkflowException(execution, 7000, e); + } + } + + +} diff --git a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/BaseTaskTest.java b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/BaseTaskTest.java index 03ffd9c4c1..29177f8275 100644 --- a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/BaseTaskTest.java +++ b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/BaseTaskTest.java @@ -24,6 +24,7 @@ package org.onap.so.bpmn; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.junit.MockitoJUnitRunner; +import org.onap.so.bpmn.common.BuildingBlockExecution; import org.onap.so.bpmn.common.InjectionHelper; import org.onap.so.bpmn.common.data.TestDataSetup; import org.onap.so.bpmn.infrastructure.flowspecific.tasks.AssignNetworkBBUtils; @@ -32,6 +33,8 @@ import org.onap.so.bpmn.servicedecomposition.tasks.BBInputSetup; import org.onap.so.bpmn.servicedecomposition.tasks.BBInputSetupUtils; import org.onap.so.bpmn.servicedecomposition.tasks.ExtractPojosForBB; import org.onap.so.client.aai.AAIResourcesClient; +import org.onap.so.client.aai.entities.AAIResultWrapper; +import org.onap.so.client.aai.entities.Relationships; import org.onap.so.client.aai.mapper.AAIObjectMapper; import org.onap.so.client.adapter.network.mapper.NetworkAdapterObjectMapper; import org.onap.so.client.appc.ApplicationControllerAction; diff --git a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModuleTest.java b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModuleTest.java new file mode 100644 index 0000000000..63f7d6cbfc --- /dev/null +++ b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModuleTest.java @@ -0,0 +1,108 @@ +package org.onap.so.bpmn.infrastructure.vfmodule; + +import static org.junit.Assert.assertEquals; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.verify; +import java.util.Optional; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.Spy; +import org.mockito.junit.MockitoJUnitRunner; +import org.onap.so.bpmn.BaseTaskTest; +import org.onap.so.bpmn.common.BuildingBlockExecution; +import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion; +import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf; +import org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance; +import org.onap.so.bpmn.servicedecomposition.bbobjects.VfModule; +import org.onap.so.bpmn.servicedecomposition.bbobjects.Tenant; +import org.onap.so.bpmn.servicedecomposition.entities.GeneralBuildingBlock; +import org.onap.so.bpmn.servicedecomposition.entities.ResourceKey; +import org.onap.so.bpmn.servicedecomposition.tasks.ExtractPojosForBB; +import org.onap.so.client.aai.AAIResourcesClient; +import org.onap.so.client.aai.entities.AAIResultWrapper; +import org.onap.so.client.aai.entities.Relationships; +import org.onap.so.client.aai.entities.uri.AAIPluralResourceUri; +import org.onap.so.client.aai.entities.uri.AAIResourceUri; +import org.onap.so.client.exception.BBObjectNotFoundException; +import org.onap.so.cloud.resource.beans.CloudInformation; +import org.onap.so.cloud.resource.beans.NodeType; + + + +public class CreateVFModuleTest extends BaseTaskTest { + + @Spy + @InjectMocks + public CreateVFModule createVFModule; + + @Mock + protected AAIResourcesClient aaiResourcesClient; + + @Mock + protected AAIResultWrapper aaiIResultWrapper; + + @Mock + protected Relationships relationships; + + @Mock + protected BuildingBlockExecution execution; + + + public GeneralBuildingBlock gbb; + public CloudRegion cloudRegion; + private GenericVnf genericVnf; + private VfModule vfModule; + private ServiceInstance service; + + @Before + public void before() { + cloudRegion = new CloudRegion(); + cloudRegion.setCloudOwner("CloudOwner"); + cloudRegion.setLcpCloudRegionId("testRegion"); + Tenant tenant = new Tenant(); + tenant.setTenantId("tenant-001"); + tenant.setTenantName("test-tenant"); + tenant.setTenantContext("testContext"); + service = setServiceInstance(); + genericVnf = setGenericVnf(); + vfModule = setVfModule(); + gbb = new GeneralBuildingBlock(); + gbb.setCloudRegion(cloudRegion); + gbb.setTenant(tenant); + } + + @Test + public void createInventoryVariableTest() throws BBObjectNotFoundException { + doReturn(gbb).when(execution).getGeneralBuildingBlock(); + doReturn(genericVnf).when(extractPojosForBB).extractByKey(execution, ResourceKey.GENERIC_VNF_ID); + doReturn(vfModule).when(extractPojosForBB).extractByKey(execution, ResourceKey.VF_MODULE_ID); + doReturn("heat-stack-id").when(execution).getVariable("heatStackId"); + doReturn(NodeType.GREENFIELD).when(createVFModule).getNodeType(any(CloudRegion.class)); + createVFModule.createInventoryVariable(execution); + verify(execution).setVariable(eq("cloudInformation"), any(CloudInformation.class)); + } + + @Test + public void getNodeTypeBrownfieldTest() { + doReturn(aaiResourcesClient).when(createVFModule).getAAIClient(); + doReturn(aaiIResultWrapper).when(aaiResourcesClient).get(any(AAIResourceUri.class)); + doReturn(Optional.empty()).when(aaiIResultWrapper).getRelationships(); + + assertEquals(NodeType.BROWNFIELD, createVFModule.getNodeType(cloudRegion)); + } + + @Test + public void getNodeTypeGreenfieldTest() { + doReturn(aaiResourcesClient).when(createVFModule).getAAIClient(); + doReturn(aaiIResultWrapper).when(aaiResourcesClient).get(any(AAIResourceUri.class)); + doReturn(aaiIResultWrapper).when(aaiResourcesClient).get(any(AAIPluralResourceUri.class)); + doReturn(Optional.of(relationships)).when(aaiIResultWrapper).getRelationships(); + + assertEquals(NodeType.GREENFIELD, createVFModule.getNodeType(cloudRegion)); + } +} |