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