<parameter name='status.code' value='200' />\r
<parameter name='status.message' value='unexpected return from DG' />\r
<parameter name='quote' value="'" />\r
+ <parameter name='outputPayloadField' value='.Output' />\r
</set>\r
<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
<parameter name='source' value='rollback-input.payload' />\r
</execute>\r
<switch test='`$payloadJson.pnf-flag`'>\r
<outcome value='true'>\r
- <set>\r
- <parameter name='nodelist' value="`'[' + $quote + $payloadJson.ipaddress-v4-oam + $quote + ']'`"/>\r
- <parameter name='playbookname' value='`$prop.lcm.pnf.rollback.playbookname`'/>\r
- </set>\r
+ <block>\r
+ <set>\r
+ <parameter name='nodelist' value="`'[' + $quote + $payloadJson.ipaddress-v4-oam + $quote + ']'`"/>\r
+ <parameter name='outputPayloadField' value="`'.' + $payloadJson.ipaddress-v4-oam + '.Output'`"/>\r
+ </set>\r
+ <switch test='`$payloadJson.playbook-name`'>\r
+ <outcome value=''>\r
+ <set>\r
+ <parameter name='playbookname' value='`$prop.lcm.pnf.rollback.playbookname`'/>\r
+ </set>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <set>\r
+ <parameter name='playbookname' value='`$payloadJson.playbook-name`'/>\r
+ </set>\r
+ </outcome>\r
+ </switch>\r
+ </block>\r
</outcome>\r
<outcome value='Other'>\r
<block>\r
- <return status='failure'>\r
- <parameter name='status.code' value='401' />\r
- <parameter name='status.message' value='Currently only support PNF.' />\r
- </return>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
+ <parameter name='outputPath' value='playbookname' />\r
+ <parameter name='source' value="`'prop.lcm.' + $payloadJson.nf-naming-code + '.rollback.playbookname'`" />\r
+ </execute>\r
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
+ resource="generic-vnf" \r
+ key="generic-vnf.vnf-id = $rollback-input.action-identifiers.vnf-id" \r
+ local-only="false" \r
+ pfx='aai.generic-vnf'>\r
+ <outcome value='success'>\r
+ <block>\r
+ <switch test='`$playbookname`'>\r
+ <outcome value=''>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
+ <parameter name='outputPath' value='playbookname' />\r
+ <parameter name='source' value="`'prop.lcm.' + $aai.generic-vnf.nf-naming-code + '.rollback.playbookname'`" />\r
+ </execute>\r
+ </outcome>\r
+ </switch>\r
+ <set>\r
+ <parameter name='nodelist' value="`'[' + $quote + $aai.generic-vnf.ipv4-oam-address + $quote + ']'`"/>\r
+ </set>\r
+ </block>\r
+ </outcome>\r
+ </get-resource>\r
</block>\r
</outcome>\r
</switch>\r
<switch test='`$playbookname`'>\r
<outcome value=''>\r
<set>\r
- <parameter name='nodelist' value="`$prop.ansible.nodelist`"/>\r
<parameter name='playbookname' value='`$prop.lcm.rollback.playbookname`'/>\r
</set>\r
</outcome>\r
<parameter name='PlaybookName' value='`$playbookname`'/>\r
<outcome value='failure'>\r
<block>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
+ <parameter name='source' value='org.onap.appc.adapter.ansible.results' />\r
+ <parameter name='outputPath' value='resultsJson' />\r
+ <parameter name='isEscaped' value='false' />\r
+ </execute>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
+ <parameter name='source' value="`'resultsJson' + $outputPayloadField`" />\r
+ <parameter name='outputPath' value='outputPayload' />\r
+ </execute>\r
<set>\r
<parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
<parameter name='lcm-dmaap.correlation-id' value="`$rollback-input.common-header.request-id + '-' + $rollback-input.common-header.sub-request-id`"/>\r
<parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
<parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
</set>\r
+ <switch test='`$outputPayload`'>\r
+ <outcome value='Other'>\r
+ <set>\r
+ <parameter name='lcm-dmaap.payload' value='`$outputPayload`'/>\r
+ </set>\r
+ </outcome>\r
+ </switch>\r
<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
<parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
<parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
</record>\r
</outcome>\r
</execute>\r
- <return status='failure'>\r
- <parameter name='status.code' value='401' />\r
- <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
- </return>\r
+ <switch test='`$outputPayload`'>\r
+ <outcome value=''>\r
+ <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
+ <outcome value='400'>\r
+ <return status='success'>\r
+ <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
+ </return>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <return status='failure'>\r
+ <parameter name='status.code' value='401' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
+ <outcome value='400'>\r
+ <return status='success'>\r
+ <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
+ <parameter name='payload' value='`$outputPayload`'/>\r
+ </return>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <return status='failure'>\r
+ <parameter name='status.code' value='401' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
+ <parameter name='payload' value='`$outputPayload`'/>\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ </outcome>\r
+ </switch>\r
</block>\r
</outcome>\r
<outcome value='success'>\r
<block>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
+ <parameter name='source' value='org.onap.appc.adapter.ansible.results' />\r
+ <parameter name='outputPath' value='resultsJson' />\r
+ <parameter name='isEscaped' value='false' />\r
+ </execute>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
+ <parameter name='source' value="`'resultsJson' + $outputPayloadField`" />\r
+ <parameter name='outputPath' value='outputPayload' />\r
+ </execute>\r
<set>\r
<parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
<parameter name='lcm-dmaap.correlation-id' value="`$rollback-input.common-header.request-id + '-' + $rollback-input.common-header.sub-request-id`"/>\r
<parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
<parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
</set>\r
+ <switch test='`$outputPayload`'>\r
+ <outcome value='Other'>\r
+ <set>\r
+ <parameter name='lcm-dmaap.payload' value='`$outputPayload`'/>\r
+ </set>\r
+ </outcome>\r
+ </switch>\r
<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
<parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
<parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
</record>\r
</outcome>\r
</execute>\r
- <return status='success'>\r
- <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
- <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
- </return>\r
+ <switch test='`$outputPayload`'>\r
+ <outcome value=''>\r
+ <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
+ <outcome value='400'>\r
+ <return status='success'>\r
+ <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
+ </return>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <return status='failure'>\r
+ <parameter name='status.code' value='401' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
+ <outcome value='400'>\r
+ <return status='success'>\r
+ <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
+ <parameter name='payload' value='`$outputPayload`'/>\r
+ </return>\r
+ </outcome>\r
+ <outcome value='Other'>\r
+ <return status='failure'>\r
+ <parameter name='status.code' value='401' />\r
+ <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
+ <parameter name='payload' value='`$outputPayload`'/>\r
+ </return>\r
+ </outcome>\r
+ </switch>\r
+ </outcome>\r
+ </switch>\r
</block>\r
</outcome>\r
</execute>\r