1 <?xml version="1.0" encoding="UTF-8"?>
2 <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="4.0.0">
3 <bpmn:process id="CreateVfModuleBB" name="CreateVfModuleBB" isExecutable="true">
4 <bpmn:startEvent id="CreateVfModuleBB_Start">
5 <bpmn:outgoing>SequenceFlow_1xr6chl</bpmn:outgoing>
7 <bpmn:serviceTask id="QueryVfModule" name=" SDNC Get (vf module) " camunda:expression="${SDNCQueryTasks.queryVfModule(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
8 <bpmn:incoming>SequenceFlow_1s4rpyp</bpmn:incoming>
9 <bpmn:outgoing>SequenceFlow_1ig2ix4</bpmn:outgoing>
11 <bpmn:sequenceFlow id="SequenceFlow_1xr6chl" sourceRef="CreateVfModuleBB_Start" targetRef="QueryVnf" />
12 <bpmn:endEvent id="CreateVfModuleBB_End">
13 <bpmn:incoming>SequenceFlow_1vbwdaw</bpmn:incoming>
15 <bpmn:serviceTask id="CreateVfModule" name="Prepare Request" camunda:expression="${VnfAdapterCreateTasks.createVfModule(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
16 <bpmn:incoming>NoHelm</bpmn:incoming>
17 <bpmn:outgoing>SequenceFlow_0dehck5</bpmn:outgoing>
19 <bpmn:sequenceFlow id="SequenceFlow_1s4rpyp" sourceRef="QueryVnf" targetRef="QueryVfModule" />
20 <bpmn:serviceTask id="QueryVnf" name=" SDNC Get (vnf) " camunda:expression="${SDNCQueryTasks.queryVnf(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
21 <bpmn:incoming>SequenceFlow_1xr6chl</bpmn:incoming>
22 <bpmn:outgoing>SequenceFlow_1s4rpyp</bpmn:outgoing>
24 <bpmn:callActivity id="VnfAdapter" name="Vnf Adapter" calledElement="VnfAdapter">
25 <bpmn:extensionElements>
26 <camunda:in source="gBuildingBlockExecution" target="gBuildingBlockExecution" />
27 <camunda:out source="WorkflowException" target="WorkflowException" />
28 <camunda:in source="VNFREST_Request" target="VNFREST_Request" />
29 <camunda:out source="heatStackId" target="heatStackId" />
30 <camunda:out source="contrailServiceInstanceFqdn" target="contrailServiceInstanceFqdn" />
31 <camunda:out source="oamManagementV4Address" target="oamManagementV4Address" />
32 <camunda:out source="oamManagementV6Address" target="oamManagementV6Address" />
33 <camunda:out source="contrailNetworkPolicyFqdnList" target="contrailNetworkPolicyFqdnList" />
34 </bpmn:extensionElements>
35 <bpmn:incoming>SequenceFlow_0dehck5</bpmn:incoming>
36 <bpmn:outgoing>SequenceFlow_0uetprw</bpmn:outgoing>
38 <bpmn:serviceTask id="UpdateVfModuleStatus" name=" AAI Update (vf module) " camunda:expression="${AAIUpdateTasks.updateOrchestrationStatusCreatedVfModule(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
39 <bpmn:incoming>SequenceFlow_0rds4rj</bpmn:incoming>
40 <bpmn:outgoing>SequenceFlow_1vbwdaw</bpmn:outgoing>
42 <bpmn:serviceTask id="UpdateVfModuleHeatStackId" name=" AAI Update (vf module) " camunda:expression="${AAIUpdateTasks.updateHeatStackIdVfModule(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
43 <bpmn:incoming>SequenceFlow_15do1tu</bpmn:incoming>
44 <bpmn:outgoing>SequenceFlow_0rds4rj</bpmn:outgoing>
46 <bpmn:sequenceFlow id="SequenceFlow_0rds4rj" sourceRef="UpdateVfModuleHeatStackId" targetRef="UpdateVfModuleStatus" />
47 <bpmn:sequenceFlow id="SequenceFlow_1vbwdaw" sourceRef="UpdateVfModuleStatus" targetRef="CreateVfModuleBB_End" />
48 <bpmn:serviceTask id="CreateNetworkPolicies" name="AAI Create (network policies)" camunda:expression="${AAICreateTasks.createNetworkPolicies(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
49 <bpmn:incoming>Flow_10aq7a8</bpmn:incoming>
50 <bpmn:incoming>Flow_1xlm2ij</bpmn:incoming>
51 <bpmn:outgoing>SequenceFlow_0xqhep5</bpmn:outgoing>
53 <bpmn:sequenceFlow id="SequenceFlow_0xqhep5" sourceRef="CreateNetworkPolicies" targetRef="UpdateVnfIpv4OamAddress" />
54 <bpmn:serviceTask id="UpdateVnfIpv4OamAddress" name="AAI Update (VNF) " camunda:expression="${AAIUpdateTasks.updateIpv4OamAddressVnf(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
55 <bpmn:incoming>SequenceFlow_0xqhep5</bpmn:incoming>
56 <bpmn:outgoing>SequenceFlow_1yo6mvv</bpmn:outgoing>
58 <bpmn:sequenceFlow id="SequenceFlow_1yo6mvv" sourceRef="UpdateVnfIpv4OamAddress" targetRef="UpdateVnfManagementV6Address" />
59 <bpmn:serviceTask id="UpdateVnfManagementV6Address" name="AAI Update (VNF)" camunda:expression="${AAIUpdateTasks.updateManagementV6AddressVnf(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
60 <bpmn:incoming>SequenceFlow_1yo6mvv</bpmn:incoming>
61 <bpmn:outgoing>SequenceFlow_1i03uy2</bpmn:outgoing>
63 <bpmn:sequenceFlow id="SequenceFlow_1i03uy2" sourceRef="UpdateVnfManagementV6Address" targetRef="UpdateVfModuleContrailServiceInstanceFqdn" />
64 <bpmn:serviceTask id="UpdateVfModuleContrailServiceInstanceFqdn" name="AAI Update (vf module) " camunda:expression="${AAIUpdateTasks.updateContrailServiceInstanceFqdnVfModule(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
65 <bpmn:incoming>SequenceFlow_1i03uy2</bpmn:incoming>
66 <bpmn:outgoing>SequenceFlow_15do1tu</bpmn:outgoing>
68 <bpmn:sequenceFlow id="SequenceFlow_15do1tu" sourceRef="UpdateVfModuleContrailServiceInstanceFqdn" targetRef="UpdateVfModuleHeatStackId" />
69 <bpmn:serviceTask id="ServiceTask_01zrt6x" name=" Create Cloud Variable " camunda:expression="${CreateVFModule.createInventoryVariable(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
70 <bpmn:incoming>SequenceFlow_0uetprw</bpmn:incoming>
71 <bpmn:outgoing>SequenceFlow_1io8r33</bpmn:outgoing>
73 <bpmn:sequenceFlow id="SequenceFlow_1io8r33" sourceRef="ServiceTask_01zrt6x" targetRef="ServiceTask_00d84m7" />
74 <bpmn:serviceTask id="ServiceTask_00d84m7" name=" AAI Create (inventory) " camunda:type="external" camunda:topic="InventoryCreate">
75 <bpmn:incoming>SequenceFlow_1io8r33</bpmn:incoming>
76 <bpmn:outgoing>Flow_10aq7a8</bpmn:outgoing>
78 <bpmn:exclusiveGateway id="CheckIfIsHelm" name="Check If Is Helm">
79 <bpmn:incoming>SequenceFlow_1ig2ix4</bpmn:incoming>
80 <bpmn:outgoing>YesHelm</bpmn:outgoing>
81 <bpmn:outgoing>NoHelm</bpmn:outgoing>
82 </bpmn:exclusiveGateway>
83 <bpmn:serviceTask id="CnfAdapter" name="Cnf Adapter" camunda:expression="${CnfAdapterCreateTasks.createInstance(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
84 <bpmn:incoming>YesHelm</bpmn:incoming>
85 <bpmn:outgoing>Flow_1il4743</bpmn:outgoing>
87 <bpmn:sequenceFlow id="YesHelm" name="Yes Helm" sourceRef="CheckIfIsHelm" targetRef="CnfAdapter">
88 <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("isHelm")}</bpmn:conditionExpression>
90 <bpmn:sequenceFlow id="SequenceFlow_1ig2ix4" sourceRef="QueryVfModule" targetRef="CheckIfIsHelm" />
91 <bpmn:sequenceFlow id="NoHelm" name="No Helm" sourceRef="CheckIfIsHelm" targetRef="CreateVfModule" />
92 <bpmn:sequenceFlow id="SequenceFlow_0dehck5" sourceRef="CreateVfModule" targetRef="VnfAdapter" />
93 <bpmn:sequenceFlow id="SequenceFlow_0uetprw" sourceRef="VnfAdapter" targetRef="ServiceTask_01zrt6x" />
94 <bpmn:subProcess id="Activity_10eqhmz" name="Inventory Error Handling" triggeredByEvent="true">
95 <bpmn:endEvent id="Event_108oetk">
96 <bpmn:incoming>Flow_03q6ty9</bpmn:incoming>
98 <bpmn:startEvent id="Event_1pengt4">
99 <bpmn:outgoing>Flow_1sqy91r</bpmn:outgoing>
100 <bpmn:errorEventDefinition id="ErrorEventDefinition_1idpz1m" errorRef="Error_0t7oivz" />
102 <bpmn:serviceTask id="Activity_1p8hxyt" name="Process Error" camunda:expression="${ExceptionBuilder.processInventoryException(execution)}">
103 <bpmn:incoming>Flow_1sqy91r</bpmn:incoming>
104 <bpmn:outgoing>Flow_03q6ty9</bpmn:outgoing>
106 <bpmn:sequenceFlow id="Flow_1sqy91r" sourceRef="Event_1pengt4" targetRef="Activity_1p8hxyt" />
107 <bpmn:sequenceFlow id="Flow_03q6ty9" sourceRef="Activity_1p8hxyt" targetRef="Event_108oetk" />
109 <bpmn:sequenceFlow id="Flow_10aq7a8" sourceRef="ServiceTask_00d84m7" targetRef="CreateNetworkPolicies" />
110 <bpmn:sequenceFlow id="Flow_1il4743" sourceRef="CnfAdapter" targetRef="UpdateCnfAai" />
111 <bpmn:sequenceFlow id="Flow_1xlm2ij" sourceRef="UpdateCnfAai" targetRef="CreateNetworkPolicies" />
112 <bpmn:callActivity id="UpdateCnfAai" name="Update Cnf Data in AAI" calledElement="UpdateCnfAai">
113 <bpmn:extensionElements>
114 <camunda:in source="gBuildingBlockExecution" target="gBuildingBlockExecution" />
115 <camunda:out source="WorkflowException" target="WorkflowException" />
116 <camunda:in source="heatStackId" target="heatStackId" />
117 <camunda:out source="heatStackId" target="heatStackId" />
118 </bpmn:extensionElements>
119 <bpmn:incoming>Flow_1il4743</bpmn:incoming>
120 <bpmn:outgoing>Flow_1xlm2ij</bpmn:outgoing>
123 <bpmn:error id="Error_0t7oivz" name="AAIInventoryFailure" errorCode="AAIInventoryFailure" />
124 <bpmndi:BPMNDiagram id="BPMNDiagram_1">
125 <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVfModuleBB">
126 <bpmndi:BPMNEdge id="Flow_1il4743_di" bpmnElement="Flow_1il4743">
127 <di:waypoint x="646" y="250" />
128 <di:waypoint x="424" y="250" />
130 <bpmndi:BPMNEdge id="Flow_10aq7a8_di" bpmnElement="Flow_10aq7a8">
131 <di:waypoint x="646" y="366" />
132 <di:waypoint x="374" y="366" />
133 <di:waypoint x="374" y="428" />
135 <bpmndi:BPMNEdge id="SequenceFlow_0uetprw_di" bpmnElement="SequenceFlow_0uetprw">
136 <di:waypoint x="1009" y="146" />
137 <di:waypoint x="1009" y="326" />
139 <dc:Bounds x="1024" y="228" width="0" height="12" />
142 <bpmndi:BPMNEdge id="SequenceFlow_0dehck5_di" bpmnElement="SequenceFlow_0dehck5">
143 <di:waypoint x="894" y="106" />
144 <di:waypoint x="959" y="106" />
146 <dc:Bounds x="926.5" y="85" width="0" height="12" />
149 <bpmndi:BPMNEdge id="SequenceFlow_1g7zahc_di" bpmnElement="NoHelm">
150 <di:waypoint x="721" y="106" />
151 <di:waypoint x="794" y="106" />
153 <dc:Bounds x="736" y="85" width="44" height="14" />
156 <bpmndi:BPMNEdge id="SequenceFlow_1ig2ix4_di" bpmnElement="SequenceFlow_1ig2ix4">
157 <di:waypoint x="613" y="106" />
158 <di:waypoint x="671" y="106" />
160 <dc:Bounds x="652" y="85" width="0" height="12" />
163 <bpmndi:BPMNEdge id="SequenceFlow_0q1janp_di" bpmnElement="YesHelm">
164 <di:waypoint x="696" y="131" />
165 <di:waypoint x="696" y="210" />
167 <dc:Bounds x="688" y="177" width="47" height="14" />
170 <bpmndi:BPMNEdge id="SequenceFlow_1io8r33_di" bpmnElement="SequenceFlow_1io8r33">
171 <di:waypoint x="959" y="366" />
172 <di:waypoint x="746" y="366" />
174 <dc:Bounds x="569" y="297" width="90" height="20" />
177 <bpmndi:BPMNEdge id="SequenceFlow_15do1tu_di" bpmnElement="SequenceFlow_15do1tu">
178 <di:waypoint x="894" y="468" />
179 <di:waypoint x="959" y="468" />
181 <dc:Bounds x="785" y="399" width="90" height="0" />
184 <bpmndi:BPMNEdge id="SequenceFlow_1i03uy2_di" bpmnElement="SequenceFlow_1i03uy2">
185 <di:waypoint x="746" y="468" />
186 <di:waypoint x="794" y="468" />
188 <dc:Bounds x="628" y="409" width="90" height="0" />
191 <bpmndi:BPMNEdge id="SequenceFlow_1yo6mvv_di" bpmnElement="SequenceFlow_1yo6mvv">
192 <di:waypoint x="577" y="468" />
193 <di:waypoint x="646" y="468" />
195 <dc:Bounds x="470" y="409" width="90" height="0" />
198 <bpmndi:BPMNEdge id="SequenceFlow_0xqhep5_di" bpmnElement="SequenceFlow_0xqhep5">
199 <di:waypoint x="424" y="468" />
200 <di:waypoint x="477" y="468" />
202 <dc:Bounds x="309" y="409" width="90" height="0" />
205 <bpmndi:BPMNEdge id="SequenceFlow_1vbwdaw_di" bpmnElement="SequenceFlow_1vbwdaw">
206 <di:waypoint x="1224" y="468" />
207 <di:waypoint x="1265" y="468" />
208 <di:waypoint x="1265" y="468" />
209 <di:waypoint x="1300" y="468" />
211 <dc:Bounds x="1138" y="424" width="90" height="0" />
214 <bpmndi:BPMNEdge id="SequenceFlow_0rds4rj_di" bpmnElement="SequenceFlow_0rds4rj">
215 <di:waypoint x="1059" y="468" />
216 <di:waypoint x="1124" y="468" />
218 <dc:Bounds x="950" y="409" width="90" height="0" />
221 <bpmndi:BPMNEdge id="SequenceFlow_1s4rpyp_di" bpmnElement="SequenceFlow_1s4rpyp">
222 <di:waypoint x="413" y="106" />
223 <di:waypoint x="513" y="106" />
225 <dc:Bounds x="321" y="91" width="90" height="0" />
228 <bpmndi:BPMNEdge id="SequenceFlow_1xr6chl_di" bpmnElement="SequenceFlow_1xr6chl">
229 <di:waypoint x="192" y="106" />
230 <di:waypoint x="313" y="106" />
232 <dc:Bounds x="156" y="91" width="0" height="0" />
235 <bpmndi:BPMNEdge id="Flow_1xlm2ij_di" bpmnElement="Flow_1xlm2ij">
236 <di:waypoint x="324" y="250" />
237 <di:waypoint x="190" y="250" />
238 <di:waypoint x="190" y="468" />
239 <di:waypoint x="324" y="468" />
241 <bpmndi:BPMNShape id="StartEvent_0kxwniy_di" bpmnElement="CreateVfModuleBB_Start">
242 <dc:Bounds x="156" y="88" width="36" height="36" />
244 <dc:Bounds x="77" y="124" width="0" height="0" />
247 <bpmndi:BPMNShape id="ServiceTask_13t22km_di" bpmnElement="QueryVfModule">
248 <dc:Bounds x="513" y="66" width="100" height="80" />
250 <bpmndi:BPMNShape id="EndEvent_0qdq7wj_di" bpmnElement="CreateVfModuleBB_End">
251 <dc:Bounds x="1300" y="450" width="36" height="36" />
253 <dc:Bounds x="1176" y="446" width="90" height="0" />
256 <bpmndi:BPMNShape id="ServiceTask_1dgenhy_di" bpmnElement="CreateVfModule">
257 <dc:Bounds x="794" y="66" width="100" height="80" />
259 <bpmndi:BPMNShape id="ServiceTask_1frb5h2_di" bpmnElement="QueryVnf">
260 <dc:Bounds x="313" y="66" width="100" height="80" />
262 <bpmndi:BPMNShape id="CallActivity_1i1pfzb_di" bpmnElement="VnfAdapter">
263 <dc:Bounds x="959" y="66" width="100" height="80" />
265 <bpmndi:BPMNShape id="ServiceTask_0fpfn71_di" bpmnElement="UpdateVfModuleStatus">
266 <dc:Bounds x="1124" y="428" width="100" height="80" />
268 <bpmndi:BPMNShape id="ServiceTask_04k1b85_di" bpmnElement="UpdateVfModuleHeatStackId">
269 <dc:Bounds x="959" y="428" width="100" height="80" />
271 <bpmndi:BPMNShape id="ServiceTask_1v8zx4s_di" bpmnElement="CreateNetworkPolicies">
272 <dc:Bounds x="324" y="428" width="100" height="80" />
274 <bpmndi:BPMNShape id="ServiceTask_015ayw5_di" bpmnElement="UpdateVnfIpv4OamAddress">
275 <dc:Bounds x="477" y="428" width="100" height="80" />
277 <bpmndi:BPMNShape id="ServiceTask_0mlfsc9_di" bpmnElement="UpdateVnfManagementV6Address">
278 <dc:Bounds x="646" y="428" width="100" height="80" />
280 <bpmndi:BPMNShape id="ServiceTask_0wctnhw_di" bpmnElement="UpdateVfModuleContrailServiceInstanceFqdn">
281 <dc:Bounds x="794" y="428" width="100" height="80" />
283 <bpmndi:BPMNShape id="ServiceTask_01zrt6x_di" bpmnElement="ServiceTask_01zrt6x">
284 <dc:Bounds x="959" y="326" width="100" height="80" />
286 <bpmndi:BPMNShape id="ServiceTask_00d84m7_di" bpmnElement="ServiceTask_00d84m7">
287 <dc:Bounds x="646" y="326" width="100" height="80" />
289 <bpmndi:BPMNShape id="ExclusiveGateway_1g3vemz_di" bpmnElement="CheckIfIsHelm" isMarkerVisible="true">
290 <dc:Bounds x="671" y="81" width="50" height="50" />
292 <dc:Bounds x="655" y="48" width="82" height="14" />
295 <bpmndi:BPMNShape id="ServiceTask_0tag50w_di" bpmnElement="CnfAdapter">
296 <dc:Bounds x="646" y="210" width="100" height="80" />
298 <bpmndi:BPMNShape id="Activity_08npiny_di" bpmnElement="UpdateCnfAai">
299 <dc:Bounds x="324" y="210" width="100" height="80" />
301 <bpmndi:BPMNShape id="Activity_10eqhmz_di" bpmnElement="Activity_10eqhmz" isExpanded="true">
302 <dc:Bounds x="240" y="590" width="340" height="180" />
304 <bpmndi:BPMNEdge id="Flow_03q6ty9_di" bpmnElement="Flow_03q6ty9">
305 <di:waypoint x="460" y="680" />
306 <di:waypoint x="512" y="680" />
308 <bpmndi:BPMNEdge id="Flow_1sqy91r_di" bpmnElement="Flow_1sqy91r">
309 <di:waypoint x="316" y="680" />
310 <di:waypoint x="360" y="680" />
312 <bpmndi:BPMNShape id="Event_108oetk_di" bpmnElement="Event_108oetk">
313 <dc:Bounds x="512" y="662" width="36" height="36" />
315 <bpmndi:BPMNShape id="Event_1pengt4_di" bpmnElement="Event_1pengt4">
316 <dc:Bounds x="280" y="662" width="36" height="36" />
318 <bpmndi:BPMNShape id="Activity_1p8hxyt_di" bpmnElement="Activity_1p8hxyt">
319 <dc:Bounds x="360" y="640" width="100" height="80" />
322 </bpmndi:BPMNDiagram>