28f7048ed0195b59897e77ebd35f52bb5f573942
[sdnc/oam.git] / platform-logic / lcm / src / main / xml / LCM_upgrade-pre-check.xml
1 <service-logic\r
2     xmlns='http://www.onap.org/sdnc/svclogic'\r
3     xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='LCM' version='${project.version}'>\r
4     <method rpc='upgrade-pre-check' mode='sync'>\r
5         <block>\r
6             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
7                 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/lcm-dg.properties' />\r
8                 <parameter name='contextPrefix' value='prop' />\r
9             </execute>\r
10             <set>\r
11                 <parameter name='status.code' value='200' />\r
12                 <parameter name='status.message' value='unexpected return from DG' />\r
13                 <parameter name='quote' value="'" />\r
14             </set>\r
15             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
16                 <parameter name='source' value='upgrade-pre-check-input.payload' />\r
17                 <parameter name='outputPath' value='payloadJson' />\r
18                 <parameter name='isEscaped' value='true' />\r
19             </execute>\r
20             <switch test='`$payloadJson.pnf-flag`'>\r
21                 <outcome value='true'>\r
22                     <set>\r
23                         <parameter name='nodelist' value="`'[' + $quote + $payloadJson.ipaddress-v4-oam +  $quote + ']'`"/>\r
24                         <parameter name='playbookname' value='`$prop.lcm.pnf.upgrade-pre-check.playbookname`'/>\r
25                     </set>\r
26                 </outcome>\r
27                 <outcome value='Other'>\r
28                     <block>\r
29                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
30                             <parameter name='outputPath' value='playbookname' />\r
31                             <parameter name='source' value="`'prop.lcm.' + $payloadJson.nf-naming-code + '.upgrade-pre-check.playbookname'`" />\r
32                         </execute>\r
33                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
34         resource="generic-vnf" \r
35                 key="generic-vnf.vnf-id = $upgrade-pre-check-input.action-identifiers.vnf-id" \r
36                 local-only="false" \r
37                 pfx='aai.generic-vnf'>\r
38                             <outcome value='success'>\r
39                                 <block>\r
40                                     <switch test='`$playbookname`'>\r
41                                         <outcome value=''>\r
42                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
43                                                 <parameter name='outputPath' value='playbookname' />\r
44                                                 <parameter name='source' value="`'prop.lcm.' + $aai.generic-vnf.nf-naming-code + '.upgrade-pre-check.playbookname'`" />\r
45                                             </execute>\r
46                                         </outcome>\r
47                                     </switch>\r
48                                     <set>\r
49                                         <parameter name='nodelist' value="`'[' + $quote + $aai.generic-vnf.ipv4-oam-address +  $quote + ']'`"/>\r
50                                     </set>\r
51                                 </block>\r
52                             </outcome>\r
53                         </get-resource>\r
54                     </block>\r
55                 </outcome>\r
56             </switch>\r
57             <switch test='`$playbookname`'>\r
58                 <outcome value=''>\r
59                     <set>\r
60                         <parameter name='nodelist' value="`$prop.ansible.nodelist`"/>\r
61                         <parameter name='playbookname' value='`$prop.lcm.upgrade-pre-check.playbookname`'/>\r
62                     </set>\r
63                 </outcome>\r
64             </switch>\r
65             <switch test='`$nodelist`'>\r
66                 <outcome value=''>\r
67                     <set>\r
68                         <parameter name='nodelist' value="`$prop.ansible.nodelist`"/>\r
69                     </set>\r
70                 </outcome>\r
71                 <outcome value="['']">\r
72                     <set>\r
73                         <parameter name='nodelist' value="`$prop.ansible.nodelist`"/>\r
74                     </set>\r
75                 </outcome>\r
76             </switch>\r
77             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
78                 <parameter name="logger" value="message-log"/>\r
79                 <parameter name="field1" value='`$playbookname`'/>\r
80                 <parameter name="field2" value='`$nodelist`'/>\r
81             </record>\r
82             <execute plugin='org.onap.ccsdk.sli.adaptors.ansible.AnsibleAdapter' method='reqExec' >\r
83                 <parameter name='AgentUrl' value='`$prop.ansible.agenturl`'/>\r
84                 <parameter name='User' value='`$prop.ansible.user`'/>\r
85                 <parameter name='Password' value='`$prop.ansible.password`'/>\r
86                 <parameter name='LocalParameters' value='`$prop.ansible.lcm.localparameters`'/>\r
87                 <parameter name='EnvParameters' value='`$upgrade-pre-check-input.payload`'/>\r
88                 <parameter name='NodeList' value="`$nodelist`"/>\r
89                 <parameter name='Timeout' value='`$prop.ansible.timeout`'/>\r
90                 <parameter name='Version' value='`$prop.ansible.version`'/>\r
91                 <parameter name='Id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
92                 <parameter name='PlaybookName' value='`$playbookname`'/>\r
93                 <outcome value='not-found'>\r
94                     <block>\r
95                         <set>\r
96                             <parameter name='org.onap.appc.adapter.ansible.result.code' value='401'/>\r
97                             <parameter name='org.onap.appc.adapter.ansible.message' value='Ansible Adapter was not found'/>\r
98                         </set>\r
99                         <block>\r
100                             <set>\r
101                                 <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
102                                 <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
103                                 <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
104                                 <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
105                                 <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
106                                 <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
107                                 <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
108                                 <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
109                                 <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
110                                 <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
111                                 <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
112                                 <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
113                                 <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
114                                 <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
115                                 <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
116                             </set>\r
117                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
118                                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
119                                 <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
120                                 <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
121                                 <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
122                                 <parameter name='format' value='json' />\r
123                                 <parameter name='httpMethod' value='POST' />\r
124                                 <parameter name='contentType' value='application/json' />\r
125                                 <parameter name="responsePrefix" value="lcm" />\r
126                                 <outcome value='failure'>\r
127                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
128                                         <parameter name="logger" value="message-log"/>\r
129                                         <parameter name="field1" value='Failed to Publish to DMaap'/>\r
130                                     </record>\r
131                                 </outcome>\r
132                             </execute>\r
133                             <return status='failure'>\r
134                                 <parameter name='status.code' value='401' />\r
135                                 <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
136                             </return>\r
137                         </block>\r
138                     </block>\r
139                 </outcome>\r
140                 <outcome value='failure'>\r
141                     <block>\r
142                         <set>\r
143                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
144                             <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
145                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
146                             <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
147                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
148                             <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
149                             <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
150                             <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
151                             <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
152                             <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
153                             <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
154                             <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
155                             <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
156                             <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
157                             <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
158                         </set>\r
159                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
160                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
161                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
162                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
163                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
164                             <parameter name='format' value='json' />\r
165                             <parameter name='httpMethod' value='POST' />\r
166                             <parameter name='contentType' value='application/json' />\r
167                             <parameter name="responsePrefix" value="lcm" />\r
168                             <outcome value='failure'>\r
169                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
170                                     <parameter name="logger" value="message-log"/>\r
171                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
172                                 </record>\r
173                             </outcome>\r
174                         </execute>\r
175                         <return status='failure'>\r
176                             <parameter name='status.code' value='401' />\r
177                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
178                         </return>\r
179                     </block>\r
180                 </outcome>\r
181                 <outcome value='Other'>\r
182                     <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
183                         <outcome value='101'>\r
184                             <block>\r
185                                 <set>\r
186                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
187                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
188                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
189                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
190                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
191                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
192                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
193                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
194                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
195                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
196                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
197                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
198                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
199                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
200                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
201                                 </set>\r
202                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
203                                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
204                                     <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
205                                     <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
206                                     <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
207                                     <parameter name='format' value='json' />\r
208                                     <parameter name='httpMethod' value='POST' />\r
209                                     <parameter name='contentType' value='application/json' />\r
210                                     <parameter name="responsePrefix" value="lcm" />\r
211                                     <outcome value='failure'>\r
212                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
213                                             <parameter name="logger" value="message-log"/>\r
214                                             <parameter name="field1" value='Failed to Publish to DMaap'/>\r
215                                         </record>\r
216                                     </outcome>\r
217                                 </execute>\r
218                                 <return status='failure'>\r
219                                     <parameter name='status.code' value='401' />\r
220                                     <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
221                                 </return>\r
222                             </block>\r
223                         </outcome>\r
224                         <outcome value='500'>\r
225                             <block>\r
226                                 <set>\r
227                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
228                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
229                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
230                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
231                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
232                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
233                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
234                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
235                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
236                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
237                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
238                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
239                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
240                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
241                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
242                                 </set>\r
243                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
244                                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
245                                     <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
246                                     <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
247                                     <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
248                                     <parameter name='format' value='json' />\r
249                                     <parameter name='httpMethod' value='POST' />\r
250                                     <parameter name='contentType' value='application/json' />\r
251                                     <parameter name="responsePrefix" value="lcm" />\r
252                                     <outcome value='failure'>\r
253                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
254                                             <parameter name="logger" value="message-log"/>\r
255                                             <parameter name="field1" value='Failed to Publish to DMaap'/>\r
256                                         </record>\r
257                                     </outcome>\r
258                                 </execute>\r
259                                 <return status='failure'>\r
260                                     <parameter name='status.code' value='401' />\r
261                                     <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
262                                 </return>\r
263                             </block>\r
264                         </outcome>\r
265                         <outcome value='100'>\r
266                             <execute plugin='org.onap.ccsdk.sli.adaptors.ansible.AnsibleAdapter' method='reqExecResult' >\r
267                                 <parameter name='AgentUrl' value='`$prop.ansible.agenturl`'/>\r
268                                 <parameter name='User' value='`$prop.ansible.user`'/>\r
269                                 <parameter name='Password' value='`$prop.ansible.password`'/>\r
270                                 <parameter name='Id' value='`$org.onap.appc.adapter.ansible.Id`'/>\r
271                                 <parameter name='PlaybookName' value='`$playbookname`'/>\r
272                                 <outcome value='failure'>\r
273                                     <block>\r
274                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
275                                             <parameter name='source' value='org.onap.appc.adapter.ansible.results' />\r
276                                             <parameter name='outputPath' value='resultsJson' />\r
277                                             <parameter name='isEscaped' value='false' />\r
278                                         </execute>\r
279                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
280                                             <parameter name='source' value="`'resultsJson.' + $payloadJson.ipaddress-v4-oam + '.Output'`" />\r
281                                             <parameter name='outputPath' value='outputPayload' />\r
282                                         </execute>\r
283                                         <switch test='`$outputPayload`'>\r
284                                             <outcome value=''>\r
285                                                 <set>\r
286                                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
287                                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
288                                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
289                                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
290                                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
291                                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
292                                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
293                                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
294                                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
295                                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
296                                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
297                                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
298                                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
299                                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
300                                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
301                                                 </set>\r
302                                             </outcome>\r
303                                             <outcome value='Other'>\r
304                                                 <set>\r
305                                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
306                                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
307                                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
308                                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
309                                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
310                                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
311                                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
312                                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
313                                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
314                                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
315                                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
316                                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
317                                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
318                                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
319                                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
320                                                     <parameter name='lcm-dmaap.payload' value='`$outputPayload`'/>\r
321                                                 </set>\r
322                                             </outcome>\r
323                                         </switch>\r
324                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
325                                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
326                                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
327                                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
328                                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
329                                             <parameter name='format' value='json' />\r
330                                             <parameter name='httpMethod' value='POST' />\r
331                                             <parameter name='contentType' value='application/json' />\r
332                                             <parameter name="responsePrefix" value="lcm" />\r
333                                             <outcome value='failure'>\r
334                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
335                                                     <parameter name="logger" value="message-log"/>\r
336                                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
337                                                 </record>\r
338                                             </outcome>\r
339                                         </execute>\r
340                                         <switch test='`$outputPayload`'>\r
341                                             <outcome value=''>\r
342                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
343                                                     <outcome value='400'>\r
344                                                         <return status='success'>\r
345                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
346                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
347                                                         </return>\r
348                                                     </outcome>\r
349                                                     <outcome value='Other'>\r
350                                                         <return status='failure'>\r
351                                                             <parameter name='status.code' value='401' />\r
352                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
353                                                         </return>\r
354                                                     </outcome>\r
355                                                 </switch>\r
356                                             </outcome>\r
357                                             <outcome value='Other'>\r
358                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
359                                                     <outcome value='400'>\r
360                                                         <return status='success'>\r
361                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
362                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
363                                                             <parameter name='payload' value='`$outputPayload`'/>\r
364                                                         </return>\r
365                                                     </outcome>\r
366                                                     <outcome value='Other'>\r
367                                                         <return status='failure'>\r
368                                                             <parameter name='status.code' value='401' />\r
369                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
370                                                             <parameter name='payload' value='`$outputPayload`'/>\r
371                                                         </return>\r
372                                                     </outcome>\r
373                                                 </switch>\r
374                                             </outcome>\r
375                                         </switch>\r
376                                     </block>\r
377                                 </outcome>\r
378                                 <outcome value='success'>\r
379                                     <block>\r
380                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
381                                             <parameter name='source' value='org.onap.appc.adapter.ansible.results' />\r
382                                             <parameter name='outputPath' value='resultsJson' />\r
383                                             <parameter name='isEscaped' value='false' />\r
384                                         </execute>\r
385                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
386                                             <parameter name='source' value="`'resultsJson.' + $payloadJson.ipaddress-v4-oam + '.Output'`" />\r
387                                             <parameter name='outputPath' value='outputPayload' />\r
388                                         </execute>\r
389                                         <switch test='`$outputPayload`'>\r
390                                             <outcome value=''>\r
391                                                 <set>\r
392                                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
393                                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
394                                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
395                                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
396                                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
397                                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
398                                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
399                                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
400                                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
401                                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
402                                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
403                                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
404                                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
405                                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
406                                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
407                                                 </set>\r
408                                             </outcome>\r
409                                             <outcome value='Other'>\r
410                                                 <set>\r
411                                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
412                                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-pre-check-input.common-header.request-id + '-' + $upgrade-pre-check-input.common-header.sub-request-id`"/>\r
413                                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
414                                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-pre-check'/>\r
415                                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
416                                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-pre-check-input.common-header.timestamp`'/>\r
417                                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-pre-check-input.common-header.api-ver`'/>\r
418                                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-pre-check-input.common-header.originator-id`'/>\r
419                                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-pre-check-input.common-header.request-id`'/>\r
420                                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-pre-check-input.common-header.sub-request-id`'/>\r
421                                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-pre-check-input.common-header.flags.mode`'/>\r
422                                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-pre-check-input.common-header.flags.force`'/>\r
423                                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-pre-check-input.common-header.flags.ttl`'/>\r
424                                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
425                                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
426                                                     <parameter name='lcm-dmaap.payload' value='`$outputPayload`'/>\r
427                                                 </set>\r
428                                             </outcome>\r
429                                         </switch>\r
430                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
431                                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
432                                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
433                                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
434                                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
435                                             <parameter name='format' value='json' />\r
436                                             <parameter name='httpMethod' value='POST' />\r
437                                             <parameter name='contentType' value='application/json' />\r
438                                             <parameter name="responsePrefix" value="lcm" />\r
439                                             <outcome value='failure'>\r
440                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
441                                                     <parameter name="logger" value="message-log"/>\r
442                                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
443                                                 </record>\r
444                                             </outcome>\r
445                                         </execute>\r
446                                         <switch test='`$outputPayload`'>\r
447                                             <outcome value=''>\r
448                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
449                                                     <outcome value='400'>\r
450                                                         <return status='success'>\r
451                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
452                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
453                                                         </return>\r
454                                                     </outcome>\r
455                                                     <outcome value='Other'>\r
456                                                         <return status='failure'>\r
457                                                             <parameter name='status.code' value='401' />\r
458                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
459                                                         </return>\r
460                                                     </outcome>\r
461                                                 </switch>\r
462                                             </outcome>\r
463                                             <outcome value='Other'>\r
464                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
465                                                     <outcome value='400'>\r
466                                                         <return status='success'>\r
467                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
468                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
469                                                             <parameter name='payload' value='`$outputPayload`'/>\r
470                                                         </return>\r
471                                                     </outcome>\r
472                                                     <outcome value='Other'>\r
473                                                         <return status='failure'>\r
474                                                             <parameter name='status.code' value='401' />\r
475                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
476                                                             <parameter name='payload' value='`$outputPayload`'/>\r
477                                                         </return>\r
478                                                     </outcome>\r
479                                                 </switch>\r
480                                             </outcome>\r
481                                         </switch>\r
482                                     </block>\r
483                                 </outcome>\r
484                             </execute>\r
485                         </outcome>\r
486                     </switch>\r
487                 </outcome>\r
488             </execute>\r
489         </block>\r
490     </method>\r
491 </service-logic>