...
Expand | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Expand | ||
---|---|---|
| ||
Work items required to add a new capability: If there is any database needed for the plugin, create them in sdnc/oam: sdnc/oam: - add a dump of the tables + static data if any in sdnc-oam/installation/sdnc/src/main/resources with the file name being ${SOMETHING}.data.dump. example: https://gerrit.onap.org/r/#/c/61137/ - add the DG flow for the operation you're implementing. The DG should be named 'self-serve-$CAPABILITY_NAME', e.g. self-serve-netbbox-ip-assign The code to interact with the external system has to be done in the ccsdk/sli/adaptors: ccsdk/sli/apdaptors: - create a new plugin composed of features/installer/provider. | ||
Expand | ||
| ||
Work items required to add a new capability: If there is any database needed for the plugin, create them in sdnc/oam: sdnc/oam: - add a dump of the tables + static data if any in sdnc-oam/installation/sdnc/src/main/resources with the file name being ${SOMETHING}.data.dump. example: https://gerrit.onap.org/r/#/c/61137/ - add the DG flow for the operation you're implementing. The DG should be named 'self-serve-$CAPABILITY_NAME', e.g. self-serve-netbbox-ip-assign The code to interact with the external system has to be done in the ccsdk/sli/adaptors: ccsdk/sli/apdaptors: - create a new plugin composed of features/installer/provider. example: https://github.com/onap/ccsdk-sli-adaptors/tree/master/netbox-client - add the module in the root pom.xml file. example: https://github.com/onap/ccsdk-sli-adaptors/blob/master/pom.xml#L114 - add the plugin feature into ccsdk/sli/apdaptors/features/ccsdk-sli-adaptors-all/pom.xml. example: https://github.com/onap/ccsdk-sli-adaptors/blob/master/features/ccsdk-sli-adaptors-all/pom.xml#L61-L67 - the interface you will create in the provider has to extend org.onap.ccsdk.sli.core.sli.SvcLogicJavaPlugin. example: https://github.com/onap/ccsdk-sli-adaptors/blobtree/master/netbox-client/provider/src/main/java/org/onap/ccsdk/sli/adaptors/netbox/api/NetboxClient.java#L27 - add the module in the root pom.xml file. example: https://github.com/onap/ccsdk-sli-adaptors/blob/master/pom.xml#L114 - add the plugin feature into ccsdk/sli/apdaptors/features/ccsdk-sli-adaptors-all/pom.xml. example: https://github.com/onap/ccsdk-sli-adaptors/blob/master/features/ccsdk-sli-adaptors-all/pom.xml#L61-L67 - the interface you will create in the provider has to extend org.onap.ccsdk.sli.core.sli.SvcLogicJavaPlugin. - the functions defined in your interfaces: example: https://github.com/onap/ccsdk-sli-adaptors/blob/master/netbox-client/provider/src/main/java/org/onap/ccsdk/sli/adaptors/netbox/api/NetboxClient.java#L32java#L27 - the functions defined in your interfaces: example: https://github.com/onap/ccsdk-sli-adaptors/blob/master/netbox-client/provider/src/main/java/org/onap/ccsdk/sli/adaptors/netbox/api/NetboxClient.java#L32-L42 - can have up to two parameters, a Map<String,String> passing all the input parameters, and the org.onap.ccsdk.sli.core.sli.SvcLogicContext being the DG context - have to return org.onap.ccsdk.sli.core.sli.SvcLogicResource.QueryStatus as this is the standard output for 'execute' block of DG In order to of the plugin has to be added to odlsli to it's landing in the SDNC image down the CI: ccsdk/distribution: - add the *.repo artifact in ccsdk/distribution/odlsli/pom.xml. example: https://github.com/onap/ccsdk-distribution/blob/master/odlsli/pom.xml#L122-L128 |
...
Expand | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||
OverviewThe generic-resource-api is used to unassign cloud parameters during the vf-module unassign flow. The vf-module unassign flow begins with the main DG, self-serve-vfmodule-unassign, when the svc-action = unassign in the rpc request. The main DG will call a series of sub-DGs according to the execution order of all the predefined capability components, such as generate-name, vlan-tag-assignment, eipam-ip-assignment, etc to unassign cloud parameters. Upon successful unassignment, the main DG will clear the service-data data in MD-SAL PrerequisitesThe following parameters must be set in context memory prior to the self-serve-eipam-ip-assignment sub-DG is called.
Logic1. Set EIPAM_IP_ASSIGNMENTS status
2. Call EIPAM Plugin unassignIp
3. Set Heat Parameters status
4. Netbox API call
5. Testing out the DGTo test the DG to release multiple IPs, that mock-up data can be used: Code Block | release multiple IPs, that mock-up data can be used:
|
Expand | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1. SDNC Blueprint
2. Artifact Templates
3. Data Dictionaries
|