diff options
Diffstat (limited to 'docs/datadictionary')
-rw-r--r-- | docs/datadictionary/complexResponse.rst | 20 | ||||
-rw-r--r-- | docs/datadictionary/create_netbox_ip_address.rst | 36 | ||||
-rw-r--r-- | docs/datadictionary/dt-netbox-ip.rst | 22 | ||||
-rw-r--r-- | docs/datadictionary/index.rst | 46 | ||||
-rw-r--r-- | docs/datadictionary/resourceDefinitionCode.rst | 48 | ||||
-rw-r--r-- | docs/datadictionary/resourcesource.rst | 40 |
6 files changed, 174 insertions, 38 deletions
diff --git a/docs/datadictionary/complexResponse.rst b/docs/datadictionary/complexResponse.rst new file mode 100644 index 000000000..aa39ff235 --- /dev/null +++ b/docs/datadictionary/complexResponse.rst @@ -0,0 +1,20 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2019 IBM. + +complex Response code +===================== + +{ + "id": 4, + "address": "192.168.10.2/32", + "vrf": null, + "tenant": null, + "status": 1, + "role": null, + "interface": null, + "description": "", + "nat_inside": null, + "created": "2018-08-30", + "last_updated": "2018-08-30T14:59:05.277820Z" +} diff --git a/docs/datadictionary/create_netbox_ip_address.rst b/docs/datadictionary/create_netbox_ip_address.rst new file mode 100644 index 000000000..5d9a9be87 --- /dev/null +++ b/docs/datadictionary/create_netbox_ip_address.rst @@ -0,0 +1,36 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2019 IBM. + +create_netbox_ip_address code +============================= + +{ + "tags" : "oam-local-ipv4-address", + "name" : "create_netbox_ip", + "property" : { + "description" : "netbox ip", + "type" : "dt-netbox-ip" + }, + "updated-by" : "adetalhouet", + "sources" : { + "primary-config-data" : { + "type" : "source-rest", + "properties" : { + "type" : "JSON", + "verb" : "POST", + "endpoint-selector" : "ipam-1", + "url-path" : "/api/ipam/prefixes/$prefixId/available-ips/", + "path" : "", + "input-key-mapping" : { + "prefixId" : "prefix-id" + }, + "output-key-mapping" : { + "address" : "address", + "id" : "id" + }, + "key-dependencies" : [ "prefix-id" ] + } + } + } + }
\ No newline at end of file diff --git a/docs/datadictionary/dt-netbox-ip.rst b/docs/datadictionary/dt-netbox-ip.rst new file mode 100644 index 000000000..9410580fb --- /dev/null +++ b/docs/datadictionary/dt-netbox-ip.rst @@ -0,0 +1,22 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2019 IBM. + +dt-netbox-ip code +================= + +{ + "version": "1.0.0", + "description": "This is Netbox IP Data Type", + "properties": { + "address": { + "required": true, + "type": "string" + }, + "id": { + "required": true, + "type": "integer" + } + }, + "derived_from": "tosca.datatypes.Root" +} diff --git a/docs/datadictionary/index.rst b/docs/datadictionary/index.rst index 24050000e..64abdece0 100644 --- a/docs/datadictionary/index.rst +++ b/docs/datadictionary/index.rst @@ -13,12 +13,9 @@ A Resource definition models the how a specific resource can be resolved. A resource is a variable/parameter in the context of the service. It can be anything, but it should not be confused with SDC or Openstack resources. -A Resource definition can have multiple sources to handle resolution in different ways. - -The main goal of Resource definition is to define re-usable entity that could be shared. - -Creation of data dictionaries is a standalone activity, separated from the blueprint design. +A Resource definition can have multiple sources to handle resolution in different ways. The main goal of Resource definition is to define re-usable entity that could be shared. +Creation of Resource definition is a standalone activity, separated from the blueprint design. As part of modelling a Resource definition entry, the following generic information should be provided: @@ -28,7 +25,7 @@ As part of modelling a Resource definition entry, the following generic informat :width: 7.88889in :height: 4.43750in -Bellow are properties that all the resource source have will have +Below are properties that all the resource source have will have The modeling does allow for data translation between external capability and CDS for both input and output key mapping. @@ -45,33 +42,12 @@ vf-module-model-customization-uuid and vf-module-label are two data dictionaries Here is how input-key-mapping, output-key-mapping and key-dependencies can be used: -vf-module-label Resource definition - -{ - "name" : "vf-module-label", - "tags" : "vf-module-label", - "updated-by" : "adetalhouet", - "property" : { - "description" : "vf-module-label", - "type" : "string" - }, - "sources" : { - "primary-db" : { - "type" : "source-primary-db", - "properties" : { - "type" : "SQL", - "query" : "select sdnctl.VF_MODULE_MODEL.vf_module_label as vf_module_label from sdnctl.VF_MODULE_MODEL where sdnctl.VF_MODULE_MODEL.customization_uuid=:customizationid", - "input-key-mapping" : { - "customizationid" : "vf-module-model-customization-uuid" - }, - "output-key-mapping" : { - "vf-module-label" : "vf_module_label" - }, - "key-dependencies" : [ "vf-module-model-customization-uuid" ] - } - } - } -} +.. toctree:: + :maxdepth: 1 + +resourceDefintionCode + + Resource source: @@ -81,7 +57,7 @@ Defines the contract to resolve a resource. A resource source is modeled, following TOSCA_ node type definition and derives from the Resource_ source. -Also please click below for detailed resource source details +Also please click below for resource source available details .. toctree:: :maxdepth: 1 @@ -89,4 +65,4 @@ Also please click below for detailed resource source details resourcesource .. _TOSCA: http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/csprd01/TOSCA-Simple-Profile-YAML-v1.0-csprd01.html#DEFN_ENTITY_NODE_TYPE -.. _Resource_: https://wiki.onap.org/display/DW/Modeling+Concepts#ModelingConcepts-NodeResourceSource
\ No newline at end of file +.. _Resource: https://wiki.onap.org/display/DW/Modeling+Concepts#ModelingConcepts-NodeResourceSource
\ No newline at end of file diff --git a/docs/datadictionary/resourceDefinitionCode.rst b/docs/datadictionary/resourceDefinitionCode.rst new file mode 100644 index 000000000..a91767678 --- /dev/null +++ b/docs/datadictionary/resourceDefinitionCode.rst @@ -0,0 +1,48 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2019 IBM. + +Source Capability Code +====================== + +{ + "description": "This is Component Resource Source Node Type", + "version": "1.0.0", + "properties": { + "script-type": { + "required": true, + "type": "string", + "default": "kotlin", + "constraints": [ + { + "valid_values": [ + "kotlin", + "jython" + ] + } + ] + }, + "script-class-reference": { + "description": "Capability reference name for internal and kotlin, for jython script file path", + "required": true, + "type": "string" + }, + "instance-dependencies": { + "required": false, + "description": "Instance dependency Names to Inject to Kotlin / Jython Script.", + "type": "list", + "entry_schema": { + "type": "string" + } + }, + "key-dependencies": { + "description": "Resource Resolution dependency dictionary names.", + "required": true, + "type": "list", + "entry_schema": { + "type": "string" + } + } + }, + "derived_from": "tosca.nodes.ResourceSource" +} diff --git a/docs/datadictionary/resourcesource.rst b/docs/datadictionary/resourcesource.rst index 2b60990ec..1bc0de4f1 100644 --- a/docs/datadictionary/resourcesource.rst +++ b/docs/datadictionary/resourcesource.rst @@ -49,14 +49,14 @@ CDS is currently deployed along the side of SDNC, hence the primary database con .. toctree:: :maxdepth: 1 - sourceprimarydbcode - +sourceprimarydbcode + Connection to a specific database can be expressed through the endpoint-selector property, which refers to a macro defining the information about the database the connect to. Understand TOSCA Macro in the context of CDS. .. toctree:: :maxdepth: 1 - dbsystemcode +dbsystemcode REST: @@ -108,3 +108,37 @@ Expects a script to be provided. :maxdepth: 1 sourcecapabilitycode + +Complex Type: +============= + +Value will be resolved through REST., and output will be a complex type. + +Modeling reference: Modeling Concepts#rest + +In this example, we're making a POST request to an IPAM system with no payload. + +Some ingredients are required to perform the query, in this case, $prefixId. Hence It is provided as an input-key-mapping and defined as a key-dependencies. Please refer to the modeling guideline for more in depth understanding. + +As part of this request, the expected response will be as below. + +.. toctree:: + :maxdepth: 1 + + complexResponse + +What is of interest is the address and id fields. For the process to return these two values, we need to create a custom data-type, as bellow + +.. toctree:: + :maxdepth: 1 + + dt-netbox-ip + +The type of the data dictionary will be dt-netbox-ip. + +To tell the resolution framework what is of interest in the response, the output-key-mapping section is used. The process will map the output-key-mapping to the defined data-type. + +.. toctree:: + :maxdepth: 1 + +create_netbox_ip_address
\ No newline at end of file |