Fix LCM Configs
[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             </set>\r
14             <execute plugin='org.onap.ccsdk.sli.adaptors.ansible.AnsibleAdapter' method='reqExec' >\r
15                 <parameter name='AgentUrl' value='`$prop.ansible.agenturl`'/>\r
16                 <parameter name='User' value='`$prop.ansible.user`'/>\r
17                 <parameter name='Password' value='`prop.ansible.password`'/>\r
18                 <parameter name='LocalParameters' value='`$prop.ansible.lcm.localparameters`'/>\r
19                 <parameter name='EnvParameters' value='`$upgrade-software-input.payload`'/>\r
20                 <parameter name='NodeList' value='`$prop.ansible.nodelist`'/>\r
21                 <parameter name='Timeout' value='`$prop.ansible.timeout`'/>\r
22                 <parameter name='Version' value='`$prop.ansible.version`'/>\r
23                 <parameter name='Id' value='`$upgrade-software-input.common-header.request-id`'/>\r
24                 <parameter name='PlaybookName' value='`$prop.lcm.upgrade-software.playbookname`'/>\r
25                 <outcome value='not-found'>\r
26                     <block>\r
27                         <set>\r
28                             <parameter name='$org.onap.appc.adapter.ansible.result.code' value='401'/>\r
29                             <parameter name='org.onap.appc.adapter.ansible.message' value='Ansible Adapter was not found'/>\r
30                         </set>\r
31                         <block>\r
32                             <set>\r
33                                 <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
34                                 <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-software-input.common-header.request-id + '-' + $upgrade-software-input.common-header.sub-request-id`"/>\r
35                                 <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
36                                 <parameter name='lcm-dmaap.rpc-name' value='upgrade-software'/>\r
37                                 <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
38                                 <parameter name='lcm-dmaap.timestamp' value='`$upgrade-software-input.common-header.timestamp`'/>\r
39                                 <parameter name='lcm-dmaap.api-ver' value='`$upgrade-software-input.common-header.api-ver`'/>\r
40                                 <parameter name='lcm-dmaap.originator-id' value='`$upgrade-software-input.common-header.originator-id`'/>\r
41                                 <parameter name='lcm-dmaap.request-id' value='`$upgrade-software-input.common-header.request-id`'/>\r
42                                 <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-software-input.common-header.sub-request-id`'/>\r
43                                 <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-software-input.common-header.flags.mode`'/>\r
44                                 <parameter name='lcm-dmaap.flags.force' value='`$upgrade-software-input.common-header.flags.force`'/>\r
45                                 <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-software-input.common-header.flags.ttl`'/>\r
46                                 <parameter name='lcm-dmaap.payload' value='`$org.onap.appc.adapter.ansible.results`'/>\r
47                                 <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
48                                 <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
49                             </set>\r
50                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
51                                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
52                                 <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
53                                 <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
54                                 <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
55                                 <parameter name='format' value='json' />\r
56                                 <parameter name='httpMethod' value='POST' />\r
57                                 <parameter name='contentType' value='application/json' />\r
58                                 <parameter name="responsePrefix" value="lcm" />\r
59                                 <outcome value='failure'>\r
60                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
61                                         <parameter name="logger" value="message-log"/>\r
62                                         <parameter name="field1" value='Failed to Publish to DMaap'/>\r
63                                     </record>\r
64                                 </outcome>\r
65                             </execute>\r
66                             <return status='failure'>\r
67                                 <parameter name='status.code' value='401' />\r
68                                 <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
69                             </return>\r
70                         </block>\r
71                     </block>\r
72                 </outcome>\r
73                 <outcome value='failure'>\r
74                     <block>\r
75                         <set>\r
76                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
77                             <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-software-input.common-header.request-id + '-' + $upgrade-software-input.common-header.sub-request-id`"/>\r
78                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
79                             <parameter name='lcm-dmaap.rpc-name' value='upgrade-software'/>\r
80                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
81                             <parameter name='lcm-dmaap.timestamp' value='`$upgrade-software-input.common-header.timestamp`'/>\r
82                             <parameter name='lcm-dmaap.api-ver' value='`$upgrade-software-input.common-header.api-ver`'/>\r
83                             <parameter name='lcm-dmaap.originator-id' value='`$upgrade-software-input.common-header.originator-id`'/>\r
84                             <parameter name='lcm-dmaap.request-id' value='`$upgrade-software-input.common-header.request-id`'/>\r
85                             <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-software-input.common-header.sub-request-id`'/>\r
86                             <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-software-input.common-header.flags.mode`'/>\r
87                             <parameter name='lcm-dmaap.flags.force' value='`$upgrade-software-input.common-header.flags.force`'/>\r
88                             <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-software-input.common-header.flags.ttl`'/>\r
89                             <parameter name='lcm-dmaap.payload' value='`$org.onap.appc.adapter.ansible.results`'/>\r
90                             <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
91                             <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
92                         </set>\r
93                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
94                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
95                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
96                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
97                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
98                             <parameter name='format' value='json' />\r
99                             <parameter name='httpMethod' value='POST' />\r
100                             <parameter name='contentType' value='application/json' />\r
101                             <parameter name="responsePrefix" value="lcm" />\r
102                             <outcome value='failure'>\r
103                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
104                                     <parameter name="logger" value="message-log"/>\r
105                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
106                                 </record>\r
107                             </outcome>\r
108                         </execute>\r
109                         <return status='failure'>\r
110                             <parameter name='status.code' value='401' />\r
111                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
112                         </return>\r
113                     </block>\r
114                 </outcome>\r
115                 <outcome value='Other'>\r
116                     <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
117                         <outcome value='101'>\r
118                             <block>\r
119                                 <set>\r
120                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
121                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-software-input.common-header.request-id + '-' + $upgrade-software-input.common-header.sub-request-id`"/>\r
122                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
123                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-software'/>\r
124                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
125                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-software-input.common-header.timestamp`'/>\r
126                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-software-input.common-header.api-ver`'/>\r
127                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-software-input.common-header.originator-id`'/>\r
128                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-software-input.common-header.request-id`'/>\r
129                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-software-input.common-header.sub-request-id`'/>\r
130                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-software-input.common-header.flags.mode`'/>\r
131                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-software-input.common-header.flags.force`'/>\r
132                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-software-input.common-header.flags.ttl`'/>\r
133                                     <parameter name='lcm-dmaap.payload' value='`$org.onap.appc.adapter.ansible.results`'/>\r
134                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
135                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
136                                 </set>\r
137                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
138                                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
139                                     <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
140                                     <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
141                                     <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
142                                     <parameter name='format' value='json' />\r
143                                     <parameter name='httpMethod' value='POST' />\r
144                                     <parameter name='contentType' value='application/json' />\r
145                                     <parameter name="responsePrefix" value="lcm" />\r
146                                     <outcome value='failure'>\r
147                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
148                                             <parameter name="logger" value="message-log"/>\r
149                                             <parameter name="field1" value='Failed to Publish to DMaap'/>\r
150                                         </record>\r
151                                     </outcome>\r
152                                 </execute>\r
153                                 <return status='failure'>\r
154                                     <parameter name='status.code' value='401' />\r
155                                     <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
156                                 </return>\r
157                             </block>\r
158                         </outcome>\r
159                         <outcome value='500'>\r
160                             <block>\r
161                                 <set>\r
162                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
163                                     <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-software-input.common-header.request-id + '-' + $upgrade-software-input.common-header.sub-request-id`"/>\r
164                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
165                                     <parameter name='lcm-dmaap.rpc-name' value='upgrade-software'/>\r
166                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
167                                     <parameter name='lcm-dmaap.timestamp' value='`$upgrade-software-input.common-header.timestamp`'/>\r
168                                     <parameter name='lcm-dmaap.api-ver' value='`$upgrade-software-input.common-header.api-ver`'/>\r
169                                     <parameter name='lcm-dmaap.originator-id' value='`$upgrade-software-input.common-header.originator-id`'/>\r
170                                     <parameter name='lcm-dmaap.request-id' value='`$upgrade-software-input.common-header.request-id`'/>\r
171                                     <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-software-input.common-header.sub-request-id`'/>\r
172                                     <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-software-input.common-header.flags.mode`'/>\r
173                                     <parameter name='lcm-dmaap.flags.force' value='`$upgrade-software-input.common-header.flags.force`'/>\r
174                                     <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-software-input.common-header.flags.ttl`'/>\r
175                                     <parameter name='lcm-dmaap.payload' value='`$org.onap.appc.adapter.ansible.results`'/>\r
176                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
177                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
178                                 </set>\r
179                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
180                                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
181                                     <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
182                                     <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
183                                     <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
184                                     <parameter name='format' value='json' />\r
185                                     <parameter name='httpMethod' value='POST' />\r
186                                     <parameter name='contentType' value='application/json' />\r
187                                     <parameter name="responsePrefix" value="lcm" />\r
188                                     <outcome value='failure'>\r
189                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
190                                             <parameter name="logger" value="message-log"/>\r
191                                             <parameter name="field1" value='Failed to Publish to DMaap'/>\r
192                                         </record>\r
193                                     </outcome>\r
194                                 </execute>\r
195                                 <return status='failure'>\r
196                                     <parameter name='status.code' value='401' />\r
197                                     <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
198                                 </return>\r
199                             </block>\r
200                         </outcome>\r
201                         <outcome value='100'>\r
202                             <execute plugin='org.onap.ccsdk.sli.adaptors.ansible.AnsibleAdapter' method='reqExecResult' >\r
203                                 <parameter name='AgentUrl' value='`$prop.ansible.agenturl`'/>\r
204                                 <parameter name='User' value='`$prop.ansible.user`'/>\r
205                                 <parameter name='Password' value='`$prop.ansible.password`'/>\r
206                                 <parameter name='Id' value='`$org.onap.appc.adapter.ansible.Id`'/>\r
207                                 <parameter name='PlaybookName' value='`$prop.lcm.upgrade-software.playbookname`'/>\r
208                                 <outcome value='failure'>\r
209                                     <block>\r
210                                         <set>\r
211                                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
212                                             <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-software-input.common-header.request-id + '-' + $upgrade-software-input.common-header.sub-request-id`"/>\r
213                                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
214                                             <parameter name='lcm-dmaap.rpc-name' value='upgrade-software'/>\r
215                                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
216                                             <parameter name='lcm-dmaap.timestamp' value='`$upgrade-software-input.common-header.timestamp`'/>\r
217                                             <parameter name='lcm-dmaap.api-ver' value='`$upgrade-software-input.common-header.api-ver`'/>\r
218                                             <parameter name='lcm-dmaap.originator-id' value='`$upgrade-software-input.common-header.originator-id`'/>\r
219                                             <parameter name='lcm-dmaap.request-id' value='`$upgrade-software-input.common-header.request-id`'/>\r
220                                             <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-software-input.common-header.sub-request-id`'/>\r
221                                             <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-software-input.common-header.flags.mode`'/>\r
222                                             <parameter name='lcm-dmaap.flags.force' value='`$upgrade-software-input.common-header.flags.force`'/>\r
223                                             <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-software-input.common-header.flags.ttl`'/>\r
224                                             <parameter name='lcm-dmaap.payload' value='`$org.onap.appc.adapter.ansible.results`'/>\r
225                                             <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
226                                             <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
227                                         </set>\r
228                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
229                                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
230                                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
231                                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
232                                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
233                                             <parameter name='format' value='json' />\r
234                                             <parameter name='httpMethod' value='POST' />\r
235                                             <parameter name='contentType' value='application/json' />\r
236                                             <parameter name="responsePrefix" value="lcm" />\r
237                                             <outcome value='failure'>\r
238                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
239                                                     <parameter name="logger" value="message-log"/>\r
240                                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
241                                                 </record>\r
242                                             </outcome>\r
243                                         </execute>\r
244                                         <return status='failure'>\r
245                                             <parameter name='status.code' value='401' />\r
246                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
247                                         </return>\r
248                                     </block>\r
249                                 </outcome>\r
250                                 <outcome value='success'>\r
251                                     <block>\r
252                                         <set>\r
253                                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
254                                             <parameter name='lcm-dmaap.correlation-id' value="`$upgrade-software-input.common-header.request-id + '-' + $upgrade-software-input.common-header.sub-request-id`"/>\r
255                                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
256                                             <parameter name='lcm-dmaap.rpc-name' value='upgrade-software'/>\r
257                                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
258                                             <parameter name='lcm-dmaap.timestamp' value='`$upgrade-software-input.common-header.timestamp`'/>\r
259                                             <parameter name='lcm-dmaap.api-ver' value='`$upgrade-software-input.common-header.api-ver`'/>\r
260                                             <parameter name='lcm-dmaap.originator-id' value='`$upgrade-software-input.common-header.originator-id`'/>\r
261                                             <parameter name='lcm-dmaap.request-id' value='`$upgrade-software-input.common-header.request-id`'/>\r
262                                             <parameter name='lcm-dmaap.sub-request-id' value='`$upgrade-software-input.common-header.sub-request-id`'/>\r
263                                             <parameter name='lcm-dmaap.flags.mode' value='`$upgrade-software-input.common-header.flags.mode`'/>\r
264                                             <parameter name='lcm-dmaap.flags.force' value='`$upgrade-software-input.common-header.flags.force`'/>\r
265                                             <parameter name='lcm-dmaap.flags.ttl' value='`$upgrade-software-input.common-header.flags.ttl`'/>\r
266                                             <parameter name='lcm-dmaap.payload' value='`$org.onap.appc.adapter.ansible.results`'/>\r
267                                             <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
268                                             <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
269                                         </set>\r
270                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
271                                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
272                                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
273                                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
274                                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
275                                             <parameter name='format' value='json' />\r
276                                             <parameter name='httpMethod' value='POST' />\r
277                                             <parameter name='contentType' value='application/json' />\r
278                                             <parameter name="responsePrefix" value="lcm" />\r
279                                             <outcome value='failure'>\r
280                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
281                                                     <parameter name="logger" value="message-log"/>\r
282                                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
283                                                 </record>\r
284                                             </outcome>\r
285                                         </execute>\r
286                                         <return status='success'>\r
287                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
288                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
289                                         </return>\r
290                                     </block>\r
291                                 </outcome>\r
292                             </execute>\r
293                         </outcome>\r
294                     </switch>\r
295                 </outcome>\r
296             </execute>\r
297         </block>\r
298     </method>\r
299 </service-logic>