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='GENERIC-RESOURCE-API' version='${project.version}'>
\r
4 <method rpc='self-serve-aai-vnf-put' mode='sync'>
\r
5 <block atomic="true">
\r
6 <switch test='`$ss.capability-action`'>
\r
8 <return status="failure">
\r
9 <parameter name="ack-final" value="Y" />
\r
10 <parameter name="error-code" value="500"/>
\r
11 <parameter name="error-message" value="ss.capability-action is null" />
\r
14 <outcome value='assign'>
\r
15 <block atomic='true'>
\r
16 <for silentFailure='true' index="aidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`">
\r
17 <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$aidx].name`'>
\r
18 <outcome value='vnf_name'>
\r
20 <parameter name='ss.param.vnf-name' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$aidx].value`' />
\r
21 <parameter name='ss.param.vnf-name-index' value='`$aidx`' />
\r
24 <outcome value='vnf_id'>
\r
26 <parameter name='ss.param.vnf-id' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$aidx].value`' />
\r
27 <parameter name='ss.param.vnf-id-index' value='`$aidx`' />
\r
30 <outcome value='license-assignment-group-uuid'>
\r
32 <parameter name='ss.param.license-assignment-group-uuid' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$aidx].value`' />
\r
33 <parameter name='ss.param.license-assignment-group-uuid-index' value='`$aidx`' />
\r
36 <outcome value='entitlement-assignment-group-uuid'>
\r
38 <parameter name='ss.param.entitlement-assignment-group-uuid' value ='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$aidx].value`' />
\r
39 <parameter name='ss.param.entitlement-assignment-group-uuid-index' value='`$aidx`' />
\r
42 <outcome value='aai-vnf-put'>
\r
44 <parameter name='ss.param.aai-vnf-put-index' value='`$aidx`' />
\r
49 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
50 resource="generic-vnf"
\r
51 key="generic-vnf.vnf-id = $ss.param.vnf-id "
\r
53 <outcome value='failure'>
\r
54 <block atomic='true'>
\r
56 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.param.aai-vnf-put-index].resource-resolution-data.status'
\r
59 <return status='failure'>
\r
60 <parameter name='error-code' value='500' />
\r
61 <parameter name='error-message' value="`'Encountered error to get generic-vnf with vnf-id=' + $ss.param.vnf-id + ' from AnAI'`" />
\r
65 <outcome value='not-found'>
\r
66 <block atomic='true'>
\r
68 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.param.aai-vnf-put-index].resource-resolution-data.status'
\r
71 <return status='failure'>
\r
72 <parameter name='error-code' value='500' />
\r
73 <parameter name='error-message' value="`'generic-vnf.vnf-name with vnf-id=' + $ss.param.vnf-id + ' not found in AAI'`" />
\r
78 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
79 resource="generic-vnf"
\r
80 key="generic-vnf.vnf-id = $ss.param.vnf-id " >
\r
81 <parameter name="vnf-name" value='`$ss.param.vnf-name`' />
\r
82 <outcome value='failure'>
\r
83 <block atomic='true'>
\r
85 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.param.aai-vnf-put-index].resource-resolution-data.status'
\r
88 <return status='failure'>
\r
89 <parameter name='error-code' value='500' />
\r
90 <parameter name='error-message' value="`'Failed to update generic-vnf.vnf-name in AnAI with vnf-name=' + $ss.param.vnf-name`" />
\r
94 <outcome value='not-found'>
\r
95 <block atomic='true'>
\r
97 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.param.aai-vnf-put-index].resource-resolution-data.status'
\r
100 <return status='failure'>
\r
101 <parameter name='error-code' value='500' />
\r
102 <parameter name='error-message' value="`'generic-vnf with vnf-id =' + $ss.param.vnf-id + ' is not found in AAI'`" />
\r
107 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
109 key="license.group-uuid = $ss.param.license-assignment-group-uuid
\r
110 AND license.resource-uuid = $ss.param.license-key
\r
111 AND generic-vnf.vnf-id = $ss.param.vnf-id" >
\r
112 <parameter name="group-uuid" value='`$ss.param.license-assignment-group-uuid`' />
\r
113 <parameter name="resource-uuid" value='`$ss.param.license-key`' />
\r
114 <outcome value='failure'>
\r
115 <block atomic='true'>
\r
117 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
118 <parameter name="logger" value="message-log"/>
\r
119 <parameter name="field1" value="ROLLBACK generic-vnf update"/>
\r
122 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-put-index].resource-resolution-data.status'
\r
125 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
126 resource="generic-vnf"
\r
127 key="generic-vnf.vnf-id = $ss.param.vnf-id " >
\r
128 <parameter name="vnf-name" value='`$tmp.aai.vnf.vnf-anme`' />
\r
129 <outcome value='failure'>
\r
131 <parameter name='error-message' value="`' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
134 <outcome value='not-found'>
\r
136 <parameter name='error-message' value="`' Failed to rollback generic-vnf update because generic-vnf with vnf-id = ' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
139 <outcome value='success'>
\r
141 <parameter name='error-message' value=" Rollback of generic-vnf update completed. " />
\r
146 <return status='failure'>
\r
147 <parameter name='error-code' value='500' />
\r
148 <parameter name='error-message' value="`'Failed to save license with group-uuid = ' + $ss.param.license-assignment-group-uuid + ' AND license.resource-uuid = ' + $ss.param.license-key + ' in AAI'`" />
\r
152 <outcome value='not-found'>
\r
153 <block atomic='true'>
\r
155 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
156 <parameter name="logger" value="message-log"/>
\r
157 <parameter name="field1" value="ROLLBACK generic-vnf update"/>
\r
160 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-put-index].resource-resolution-data.status'
\r
163 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
164 resource="generic-vnf"
\r
165 key="generic-vnf.vnf-id = $ss.param.vnf-id " >
\r
166 <parameter name="vnf-name" value='`$tmp.aai.vnf.vnf-anme`' />
\r
167 <outcome value='failure'>
\r
169 <parameter name='error-message' value="`' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
172 <outcome value='not-found'>
\r
174 <parameter name='error-message' value="`' Failed to rollback generic-vnf update because generic-vnf with vnf-id = ' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
177 <outcome value='success'>
\r
179 <parameter name='error-message' value=" Rollback of generic-vnf update completed. " />
\r
184 <return status='failure'>
\r
185 <parameter name='error-code' value='500' />
\r
186 <parameter name='error-message' value="`'license with group-uuid = ' + $ss.param.license-assignment-group-uuid + ' AND license.resource-uuid = ' + $ss.param.license-key + ' is not found in AAI'`" />
\r
191 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
192 resource="entitlement"
\r
193 key="entitlement.group-uuid = $ss.param.entitlement-assignment-group-uuid
\r
194 AND entitlement.resource-uuid = $ss.param.entitlement-key
\r
195 AND generic-vnf.vnf-id = $ss.param.vnf-id" >
\r
196 <parameter name="group-uuid" value='`$ss.param.entitlement-assignment-group-uuid`' />
\r
197 <parameter name="resource-uuid" value='`$ss.param.entitlement-key`' />
\r
198 <outcome value='failure'>
\r
199 <block atomic='true'>
\r
202 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
203 <parameter name="logger" value="message-log"/>
\r
204 <parameter name="field1" value="ROLLBACK generic-vnf update"/>
\r
207 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-put-index].resource-resolution-data.status'
\r
210 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
211 resource="generic-vnf"
\r
212 key="generic-vnf.vnf-id = $ss.param.vnf-id " >
\r
213 <parameter name="vnf-name" value='`$tmp.aai.vnf.vnf-anme`' />
\r
214 <outcome value='failure'>
\r
216 <parameter name='error-message' value="`' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
219 <outcome value='not-found'>
\r
221 <parameter name='error-message' value="`' Failed to rollback generic-vnf update because generic-vnf with vnf-id = ' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
224 <outcome value='success'>
\r
226 <parameter name='error-message' value=" Rollback of generic-vnf update completed. " />
\r
232 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
233 <parameter name="logger" value="message-log"/>
\r
234 <parameter name="field1" value="ROLLBACK license"/>
\r
236 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
238 key="license.group-uuid = $ss.param.license-assignment-group-uuid
\r
239 AND license.resource-uuid = $ss.param.license-key" >
\r
240 <outcome value='failure'>
\r
242 <parameter name='error-message' value="`' Failed to rollback license with group-uuid = ' + $ss.param.license-assignment-group-uuid + ' AND license.resource-uuid = ' + $ss.param.license-key + ' in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />
\r
245 <outcome value='not-found'>
\r
247 <parameter name='error-message' value="`' Failed to rollback license because license with group-uuid = ' + $ss.param.license-assignment-group-uuid + ' AND license.resource-uuid = ' + $ss.param.license-key + ' NOT FOUND in AAI. SILENT SUCCESS! '`" />
\r
250 <outcome value='success'>
\r
252 <parameter name='error-message' value=" Rollback of license completed. " />
\r
258 <return status='failure'>
\r
259 <parameter name='error-code' value='500' />
\r
260 <parameter name='error-message' value="`'Failed to save entitlement with group-uuid = ' + $ss.param.entitlement-assignment-group-uuid + ' AND entitlement.resource-uuid = ' + $ss.param.entitlement-key + ' in AAI'`" />
\r
264 <outcome value='not-found'>
\r
265 <block atomic='true'>
\r
268 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
269 <parameter name="logger" value="message-log"/>
\r
270 <parameter name="field1" value="ROLLBACK generic-vnf update"/>
\r
273 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.param.aai-vf-put-index].resource-resolution-data.status'
\r
276 <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
277 resource="generic-vnf"
\r
278 key="generic-vnf.vnf-id = $ss.param.vnf-id " >
\r
279 <parameter name="vnf-name" value='`$tmp.aai.vnf.vnf-anme`' />
\r
280 <outcome value='failure'>
\r
282 <parameter name='error-message' value="`' Failed to rollback generic-vnf update in AnAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
285 <outcome value='not-found'>
\r
287 <parameter name='error-message' value="`' Failed to rollback generic-vnf update because generic-vnf with vnf-id = ' + $ss.param.vnf-id + ' is not found in AAI. MANUAL ROLLBACK IS REQUIRED! '`" />
\r
290 <outcome value='success'>
\r
292 <parameter name='error-message' value=" Rollback of generic-vnf update completed. " />
\r
298 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
\r
299 <parameter name="logger" value="message-log"/>
\r
300 <parameter name="field1" value="ROLLBACK license"/>
\r
302 <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r
304 key="license.group-uuid = $ss.param.license-assignment-group-uuid
\r
305 AND license.resource-uuid = $ss.param.license-key" >
\r
306 <outcome value='failure'>
\r
308 <parameter name='error-message' value="`' Failed to rollback license with group-uuid = ' + $ss.param.license-assignment-group-uuid + ' AND license.resource-uuid = ' + $ss.param.license-key + ' in AAI. MANUAL ROLLBACK IS REQUIRED!'`" />
\r
311 <outcome value='not-found'>
\r
313 <parameter name='error-message' value="`' Failed to rollback license because license with group-uuid = ' + $ss.param.license-assignment-group-uuid + ' AND license.resource-uuid = ' + $ss.param.license-key + ' NOT FOUND in AAI. SILENT SUCCESS! '`" />
\r
316 <outcome value='success'>
\r
318 <parameter name='error-message' value=" Rollback of license completed. " />
\r
324 <return status='failure'>
\r
325 <parameter name='error-code' value='500' />
\r
326 <parameter name='error-message' value="`'entitlement with group-uuid = ' + $ss.param.entitlement-assignment-group-uuid + ' AND entitlement.resource-uuid = ' + $ss.param.entitlement-key + ' is not found in AAI'`" />
\r
332 <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.param.aai-vnf-put-index].resource-resolution-data.status'
\r
338 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
\r
339 <parameter name='filename' value='/var/tmp/ss.aai.vfmoduleput.log' />
\r