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