Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titlenetbox mS Capability [ccsdk]
Expand
titlenetbox mS Capability [HELM Chart]

The work bellow is based on the following git repository, providing netbox docker images: https://github.com/ninech/netbox-docker

The Netbox helm chart has been submitted in OOM, the code can be found here: https://github.com/onap/oom/tree/master/kubernetes/contrib/charts/netbox

This helm chart is comprised of three subcharts, being:

  • netbox-app: provides the IPAM capability we're seeking for current selected use cases (vFW).
  • netbox-nginx: reverse proxy exposing IPAM system in a secure fashion (using NodePort).
  • netbox-postgress: backend database persisting the Netbox data. Currently a deployment, should be converted to statefull set using StorageClass.


Regarding the netbox-app, this charts come with possibility for customization. The folder tree structure is the following:

Code Block
.
??? config
    ??? configuration				Those are configuration scripts coming from Netbox itself, they remained un-touched.
    ?   ??? configuration.py
    ?   ??? gunicorn_config.py
    ?   ??? ldap_config.py
    ??? initializers				Those YAML files are where we can added so pre-provisioning data, such as user or custom fields.
    ?   ??? custom_fields.yml
    ?   ??? groups.yml
    ?   ??? users.yml
    ??? provisioning				This defines the entrypoint of netbox-app deployment, that will provision prefix to support vFW use case.
    ?   ??? provision.sh
    ??? startup_scripts				Those scripts are provided by Netbox itself, they remained un-touched.
        ??? 00_users.py
        ??? 10_groups.py
        ??? 20_custom_fields.py


In order to test Netbox locally using this helm chart, here are the steps to follow:

Code Block
git clone https://gerrit.onap.org/r/oom
cd oom/kubernetes
helm serve &
make contrib
helm install local/contrib --name netbox --namespace $NAMESPACE

This will result in installing the 3 charts, and run the job that will provisioned Netbox for us.

Ouput of the helm install should look like the following:

Code Block
$ helm install local/contrib --name netbox --namespace onap-adetalhouet
NAME:   netbox

LAST DEPLOYED: Tue Aug 28 14:30:57 2018
NAMESPACE: onap-adetalhouet
STATUS: DEPLOYED

RESOURCES:
==> v1/ConfigMap
NAME                                        DATA  AGE
netbox-netbox-app-configuration-configmap   3     1s
netbox-netbox-app-initializers-configmap    3     1s
netbox-netbox-app-startupscripts-configmap  3     1s
netbox-netbox-app-provisioning-configmap    1     1s
netbox-netbox-nginx-config-configmap        1     1s
netbox-netbox-postgres-docker-entry-initd   0     1s

==> v1/PersistentVolumeClaim
NAME                    STATUS   VOLUME                                    CAPACITY  ACCESS MODES  STORAGECLASS  AGE
netbox-netbox-static    Pending  nfs-dev-sc                                1s
netbox-netbox-postgres  Bound    pvc-8193e062-aaf0-11e8-beaa-f40343575464  1Gi  RWX  nfs-dev-sc  1s

==> v1/Service
NAME             TYPE       CLUSTER-IP     EXTERNAL-IP  PORT(S)         AGE
netbox-app       ClusterIP  10.43.179.246  <none>       8001/TCP        1s
netbox-nginx     NodePort   10.43.136.76   <none>       8080:30269/TCP  1s
netbox-postgres  ClusterIP  10.43.64.155   <none>       5432/TCP        1s

==> v1beta1/Deployment
NAME                    DESIRED  CURRENT  UP-TO-DATE  AVAILABLE  AGE
netbox-netbox-app       1        1        1           0          1s
netbox-netbox-nginx     1        1        1           0          1s
netbox-netbox-postgres  1        1        1           0          1s

==> v1/Job
NAME                            DESIRED  SUCCESSFUL  AGE
netbox-netbox-app-provisioning  1        0           1s

==> v1/Pod(related)
NAME                                    READY  STATUS   RESTARTS  AGE
netbox-netbox-app-f54cd84d5-g6xr2       0/1    Pending  0         1s
netbox-netbox-nginx-5d4f86ffcf-qlkhc    0/1    Pending  0         1s
netbox-netbox-postgres-76857df45-5jjm9  0/1    Pending  0         1s
netbox-netbox-app-provisioning-26stg    0/1    Pending  0         1s

==> v1/Secret
NAME                    TYPE    DATA  AGE
netbox-netbox-app-pass  Opaque  6     1s
Expand
titlenetbox mS Capability [IPAM DB Creation SDN-C]

These are the tables to create:

TableColumns 
ipam_ip_poolipam_serial_pool_idcreate_dateprefixprefix_idaddress_family(v4/v6)prefix_status:Pending, Activate, Deletedescription (vfw-protect, or vfw-unprotected)region (RegionOne, RegionTwo)  
ipam_ip_assignmentipam_serial_ip_assignment_idcreate_dateservice_instance_idvf_module_idip_adressip_address_type (vip, fixed, floating etc..) prefix_id (string)ip_address_id (string)ip_statusip_response


These are the tables we created:


Code Block
mysql> show columns from IPAM_IP_ASSIGNEMENT;
+---------------------+--------------+------+-----+-------------------+----------------+
| Field               | Type         | Null | Key | Default           | Extra          |
+---------------------+--------------+------+-----+-------------------+----------------+
| ipam_ip_uuid        | int(11)      | NO   | PRI | NULL              | auto_increment |
| create_date         | datetime     | NO   |     | CURRENT_TIMESTAMP |                |
| service_instance_id | varchar(255) | YES  |     | NULL              |                |
| vf_module_id        | varchar(255) | YES  |     | NULL              |                |
| external_key        | varchar(255) | YES  |     | NULL              |                |
| prefix_id           | varchar(255) | YES  |     | NULL              |                |
| ip_address_id       | varchar(255) | YES  |     | NULL              |                |
| ip_address          | varchar(255) | YES  |     | NULL              |                |
| ip_address_type     | varchar(255) | YES  |     | NULL              |                |
| ip_status           | varchar(255) | YES  |     | NULL              |                |
| ip_response_json    | varchar(255) | YES  |     | NULL              |                |
+---------------------+--------------+------+-----+-------------------+----------------+
10 rows in set (0.00 sec)mysql> show columns from IPAM_IP_POOL;
+----------------+--------------+------+-----+-------------------+----------------+
| Field          | Type         | Null | Key | Default           | Extra          |
+----------------+--------------+------+-----+-------------------+----------------+
| ipam_pool_uuid | int(11)      | NO   | PRI | NULL              | auto_increment |
| create_date    | datetime     | NO   |     | CURRENT_TIMESTAMP |                |
| prefix_id      | int(2)       | YES  |     | NULL              |                |
| prefix         | varchar(255) | YES  |     | NULL              |                |
| address_family | int(1)       | YES  |     | NULL              |                |
| prefix_status  | varchar(255) | YES  |     | NULL              |                |
| description    | varchar(255) | YES  |     | NULL              |                |
+----------------+--------------+------+-----+-------------------+----------------+


This is the pool being hardcoded in the pool table to support vFW use case

Code Block
mysql> select * from IPAM_IP_POOL;
+----------------+---------------------+-----------+-----------------+----------------+---------------+-------------+
| ipam_pool_uuid | create_date         | prefix_id | prefix          | address_family | prefix_status | description |
+----------------+---------------------+-----------+-----------------+----------------+---------------+-------------+
|              1 | 2018-08-17 20:15:12 |         3 | 10.0.0.0/8      |              4 | ACTIVE        | private     |
|              2 | 2018-08-17 20:19:29 |         2 | 192.168.10.0/24 |              4 | ACTIVE        | unprotected |
|              3 | 2018-08-17 20:20:08 |         1 | 192.168.20.0/24 |              4 | ACTIVE        | protected   |
+----------------+---------------------+-----------+-----------------+----------------+---------------+-------------+



Expand
titlenetbox mS Capability [pre-provisioning scripts]

Three main things are achived durig pre-provisioning:

  • Create an admin onap user, as follow. This is part of the netbbox-app chart resources file: config/initializers/users.yml.

    Code Block
    onap:
        first_name: Steve
        last_name: McQueen
        email: steve.mcqueen@onap.org
        password: onap123$
        api_token: onceuponatimeiplayedwithnetbox20180814
        is_staff: true # whether user is admin or not, default = false
        is_active: true # whether user is active, default = true
        is_superuser: true # Whether user has all edit rights or not, default = false
  • Create an custom_fields being client_key in order to uniquely identify the resource with a key generated by ONAP. This is part of the netbbox-app chart resources file: config/initializers/custom_fields.yml.

    Code Block
    external-key: 
      description: "The external-key uniquely identify the resources to a service within ONAP."
      filterable: true
      label: ONAP external key
      on_objects: 
        - ipam.models.IPAddress
      required: true
      type: text
      weight: 0
    resource-name:
      description: "The resource-name of the element using this IP."
      filterable: true
      label: ONAP resource name
      on_objects:
        - ipam.models.IPAddress
      required: true
      type: text
      weight: 0
  • The following script creating the prefixes and some objects within Netbox:

    Code Block
    #!/bin/bash
    
    # Create region
    
    echo "Create region: RegionOne"
    curl --silent -X POST \
      http://
Expand
titlenetbox mS Capability [pre-provisioning scripts]

Three main things are achived durig pre-provisioning:

  • Create an admin onap user, as follow. This is part of the netbbox-app chart resources file: config/initializers/users.yml.

    Code Block
    onap:
        first_name: Steve
        last_name: McQueen
        email: steve.mcqueen@onap.org
        password: onap123$
        api_token: onceuponatimeiplayedwithnetbox20180814
        is_staff: true # whether user is admin or not, default = false
        is_active: true # whether user is active, default = true
        is_superuser: true # Whether user has all edit rights or not, default = false
  • Create an custom_fields being client_key in order to uniquely identify the resource with a key generated by ONAP. This is part of the netbbox-app chart resources file: config/initializers/custom_fields.yml.

    Code Block
    external-key: 
      description: "The external-key uniquely identify the resources to a service within ONAP."
      filterable: true
      label: ONAP external key
      on_objects: 
        - ipam.models.IPAddress
      required: true
      type: text
      weight: 0
    resource-name:
      description: "The resource-name of the element using this IP."
      filterable: true
      label: ONAP resource name
      on_objects:
        - ipam.models.IPAddress
      required: true
      type: text
      weight: 0
  • The following script creating the prefixes and some objects within Netbox:

    Code Block
    #!/bin/bash
    
    # Create region
    
    echo "Create region: RegionOne"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/dcim/regions/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "RegionOne",
      "slug": "RegionOne"
    }'
    
    # Create tenant group
    
    echo "Create tenant group: ONAP group"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/tenancy/tenant-groups/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "ONAP group",
      "slug": "onap-group"
    }'
    
    # Create tenant
    
    echo "Create tenant ONAP in ONAP group"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/tenancy/tenants/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "ONAP",
      "slug": "onap",
      "group": 1,
      "description": "ONAP tenant",
      "comments": "Tenant for ONAP demo use cases"
    }'
    
    # Create site
    
    echo "Create ONAP demo site: Montreal Lab"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/dcim/sitesregions/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "Montreal Lab D3RegionOne",
      "slug": "mtl-lab-d3RegionOne",
      "region": 1,
      "tenant": 1,
      "facility": "Campus",
      "time_zone": "Canada/Atlantic",
      "description": "Site hosting the ONAP use cases",
      "physical_address": "1 Graham Bell",
      "shipping_address": "1 Graham Bell",
      "contact_name": "Alexis",
      "contact_phone": "0000000000",
      "contact_email": "adetalhouet89@gmail.com",
      "comments": "ONAP lab
    }'
    
    # Create tenant group
    
    echo "Create tenant group: ONAP group"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/tenancy/tenant-groups/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "ONAP group",
      "slug": "onap-group"
    }'
    
    # Create prefixestenant
    
    echo "Create Prefixtenant forONAP vFWin protectedONAP networkgroup"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/ipamtenancy/prefixestenants/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "prefixname": "192.168.20.0/24ONAP",
      "siteslug": 1"onap",
      "tenantgroup": 1,
      "is_pooldescription": true,
     "ONAP tenant",
      "descriptioncomments": "IP PoolTenant for protected network - vFWONAP demo use casecases"
    }'
    
    # Create site
    
    echo "Create PrefixONAP fordemo vFWsite: unprotectedMontreal networkLab"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/ipamdcim/prefixessites/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "Montreal Lab D3",
      "prefixslug": "192.168.10.0/24mtl-lab-d3",
      "siteregion": 1,
      "tenant": 1,
      "facility": "is_poolCampus",
      "time_zone": true"Canada/Atlantic",
      "description": "IP Pool for unprotected network - vFW use case"
    }'Site hosting the ONAP use cases",
      "physical_address": "1 Graham Bell",
      "shipping_address": "1 Graham Bell",
      "contact_name": "Alexis",
      "contact_phone": "0000000000",
      "contact_email": "adetalhouet89@gmail.com",
      "comments": "ONAP lab"
    }'
    
    # Create prefixes
    
    echo "Create Prefix for ONAPvFW general purposeprotected network"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/ipam/prefixes/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "prefix": "10192.0168.020.0/824",
      "site": 1,
      "tenant": 1,
      "is_pool": true,
      "description": "IP Pool for protected ONAPnetwork - vFW generaluse purposecase"
    }'
    
    
    echo "Create Prefix for vFW unprotected network"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/ipam/prefixes/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "prefix": "192.168.10.0/24",
      "site": 1,
      "tenant": 1,
      "is_pool": true,
      "description": "IP Pool for unprotected network - vFW use case"
    }'
    
    echo "Create Prefix for ONAP general purpose network"
    curl --silent -X POST \
      http://{{ .Values.service.name }}:{{ .Values.service.internalPort }}/api/ipam/prefixes/ \
      -H 'Authorization: Token onceuponatimeiplayedwithnetbox20180814' \
      -H 'Content-Type: application/json' \
      -d '{
      "prefix": "10.0.0.0/8",
      "site": 1,
      "tenant": 1,
      "is_pool": true,
      "description": "IP Pool for ONAP - general purpose"
    }'
    
    
    
Expand
titleAdding capability in CCSDK / SDNC-OAM
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
titleAdding capability in CCSDK / SDNC-OAM
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

...

{ "input": { "module-name": "GENERIC-RESOURCE-API", "rpc-name": "self-serve-netbox-ip-assignment", "mode": "sync", "sli-parameter": [ { "parameter-name": "ss.capability-name", "string-value": "netbox-ip-assign" }, { "parameter-name": "ss.capability-action", "string-value": "unassign" }, { "parameter-name": "vnf-index", "int-value": 0 },

release multiple IPs, that mock-up data can be used:

Expand
titlePlugin IP Unassignment DG flow using generic-resource-api [Unassignment]


Overview

The 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

Prerequisites

The following parameters must be set in context memory prior to the self-serve-eipam-ip-assignment sub-DG is called.


  • ss.capability-name

    • value that matches the capability DG name; i.e. self-serve-eipam-ip-assignment

  • ss.capability-action

    • unassign

  • vnf-index

    • The array index of the vnf that owns this vf-module in config tree

  • vf-module-index

    • The array index of this vf-module in config tree

  • 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[].

Logic

1.   Set EIPAM_IP_ASSIGNMENTS status

  • set EIPAM_IP_ASSIGNMENTS.status t0 PENDING_DELETE by service-instance-id and client-key

2.   Call EIPAM Plugin unassignIp

  • Calls EIPAM plugin unassignIp method to unassign ip from EIPAM

3.   Set Heat Parameters status

  • Set service-data … vf-module-parameters.param[].resource-resolution-data.status to DELETED for the following params

    • vmxvre_oam_ip_0

    • vmxvre_oam_ip_prefix_0

    • vmxvre_oam_gateway

4.   Netbox API call

ActionVerbURIJSON payload (Bare minimal)ParamsTypeCommentsJSON responseNote
Delete IPDELETE/api/ipam/ip-addresses/{ip-id}/-ip-idIntegerThe ID of the IP address to delete-done as part of the VF Module delete action.

5.   Testing out the DG

To test the DG to release multiple IPs, that mock-up data can be used:

Code Block
Code Block
{
  "input": {
    "module-name": "GENERIC-RESOURCE-API",
    "rpc-name": "self-serve-netbox-ip-assignment",
    "mode": "sync",
    "sli-parameter": [
      {
        "parameter-name": "ss.capability-name",
        "string-value": "netbox-ip-assign"
      },
      {
        "parameter-name": "ss.capability-action",
        "string-value": "unassign"
      },
      {
        "parameter-name": "vnf-index",
        "int-value": 0
      },
      {
        "parameter-name": "vf-module-index",
        "int-value": 0
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param_length",
        "string-value": "2"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.capability-name",
        "string-value": "netbox-ip-assign"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.status",
        "string-value": "PENDING"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key_length",
        "int-value": 2
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[0].name",
        "string-value": "service-instance-id"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[0].value",
        "string-value": "1234-56789-4321-98766"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[1].name",
        "string-value": "external_key"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[1].value",
        "string-value": "david-the-boss-blah"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.capability-name",
        "string-value": "netbox-ip-assign"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.status",
        "string-value": "PENDING"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key_length",
        "int-value": 2
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[0].name",
        "string-value": "service-instance-id"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[0].value",
        "string-value": "1234-56789-4321-98765"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[1].name",
        "string-value": "external_key"
      },
      {
        "parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[1].value",
        "string-value": "david-the-boss-blah-2"
      }
    ]
  }
}



Expand
titleSDNC Artifacts


1.   SDNC Blueprint

  • Code Block
    themeMidnight
    collapsetrue
    {
      "metadata": {
        "template_author": "aa0419",
        "template_name": "sdnc_vFW_blueprint1",
        "template_version": "1.0.0",
        "service-type": "vFW",
        "template_tags": "vFW, ONAP",
        "release": "1810",
        "vnf-type": "VFW"
      },
      "topology_template": {
        "inputs": {
          "request-id": {
            "required": true,
            "type": "string"
          },
          "service-instance-id": {
            "required": true,
            "type": "string"
          },
          "scope-type": {
            "required": true,
            "type": "string"
          },
          "action-name": {
            "required": true,
            "type": "string"
          },
          "hostname": {
            "required": true,
            "type": "string"
          },
          "resource-assignment-request": {
            "description": "This is Dynamic Data type for the receipe resource-assignment-action.",
            "required": false,
            "type": "dt-resource-assignment-request"
          }
        },
        "node_templates": {
          "resource-assignment-ra-component": {
            "type": "component-resource-assignment",
            "interfaces": {
              "org-onap-ccsdk-config-assignment-service-ConfigAssignmentNode": {
                "operations": {
                  "process": {
                    "inputs": {
                      "action-name": "{ \"get_input\" : \"action-name\" }",
                      "service-template-name": "{ \"get_attribute\" : \"service-template-name\" }",
                      "template-names": [
                        "sdnc_vnf_vFW",
                        "sdnc_base",
                        "sdnc_vFW",
                        "sdnc_vsn",
                        "sdnc_vpg"
                      ],
                      "service-template-version": "{ \"get_attribute\" : \"service-template-version\" }",
                      "resource-type": "vnf-type",
                      "request-id": "{ \"get_input\" : \"request-id\" }",
                      "resource-id": "{ \"get_input\" : \"hostname\" }"
                    },
                    "outputs": {
                      "resource-assignment-params": "Success",
                      "status": "status"
                    }
                  }
                }
              }
            },
            "capabilities": {
              "component-node": {
                
              }
            }
          },
          "resource-assignment-action": {
            "type": "dg-resource-assignment",
            "properties": {
              "mode": "sync",
              "version": "LATEST",
              "is-start-flow": false
            },
            "interfaces": {
              "CONFIG": {
                "operations": {
                  "ResourceAssignment": {
                    "inputs": {
                      "params": [
                        
                      ]
                    }
                  }
                }
              }
            },
            "capabilities": {
              "dg-node": {
                
              },
              "content": {
                "properties": {
                  "type": "json"
                }
              }
            },
            "requirements": {
              "component-dependency": {
                "capability": "component-node",
                "node": "resource-assignment-ra-component",
                "relationship": "tosca.relationships.DependsOn"
              }
            }
          },
          "sdnc_vnf_vFW": {
            "type": "artifact-config-template",
            "properties": {
              "action-names": [
                "resource-assignment-action"
              ]
            },
            "capabilities": {
              "content": {
                "properties": {
                  "content": "sdnc_vnf_vFW"
                }
              },
              "mapping": {
                "properties": {
                  "mapping": [
                    {
                      "name": "service-instance-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "service-instance-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "aic-cloud-region",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "aic-cloud-region",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf_name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf_name",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-naming-policy",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-naming-policy",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nf-role",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "nf-role",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    }
                  ]
                }
              }
            }
          },
          "sdnc_vFW": {
            "type": "artifact-config-template",
            "capabilities": {
              "content": {
                "properties": {
                  "content": "sdnc_vFW"
                }
              },
              "mapping": {
                "properties": {
                  "mapping": [
                    {
                      "name": "service-instance-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "service-instance-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-name",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-type",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-type",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfccustomizationuuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfccustomizationuuid",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "aic-cloud-region",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "aic-cloud-region",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "availability_zone_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "availability_zone_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vm-type",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vm-type",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnfc-model-invariant-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnfc-model-invariant-uuid",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vfccustomizationuuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnfc-model-version",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnfc-model-version",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vfccustomizationuuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nf-role",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "vFW"
                      },
                      "input-param": false,
                      "dictionary-name": "nf-role",
                      "dictionary-source": "default",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nfc-naming-code",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "nfc-naming-code",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "public_net_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "public_net_id"
                      },
                      "input-param": false,
                      "dictionary-name": "public_net_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_net_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "value": "",
                        "default": "onap_private_net_id"
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_net_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_subnet_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "value": "Oam_Network_Puhf",
                        "default": "Oam_Network_Puhf"
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_subnet_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "unprotected_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "unprotected_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "protected_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "protected_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "nexus_artifact_repo",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "nexus_artifact_repo"
                      },
                      "input-param": false,
                      "dictionary-name": "nexus_artifact_repo",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "sec_group",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "onap_sg_PUhf"
                      },
                      "input-param": false,
                      "dictionary-name": "sec_group",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                     
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfw_name_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfw_name_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-naming-policy",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {}
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "SDNC_Policy.Config_MS_ONAP_VFW_NAMING_TIMESTAMP"
                      },
                      "input-param": false,
                      "dictionary-name": "vf-naming-policy",
                      "dictionary-source": "default",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf_module_name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf_module_name",
                      "dictionary-source": "input",
                      "dependencies": [
    
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-label",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-label",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "private-prefix-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "private-prefix-id",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfw_private_ip_2",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfw_private_ip_2",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "protected-prefix-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "protected-prefix-id",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfw_private_ip_1",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfw_private_ip_1",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "unprotected-prefix-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "unprotected-prefix-id",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfw_private_ip_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfw_private_ip_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vpg_private_ip_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vpg_private_ip_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf_name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf_name",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    }
                  ]
                }
              }
            }
          },
          "sdnc_vpg": {
            "type": "artifact-config-template",
            "capabilities": {
              "content": {
                "properties": {
                  "content": "sdnc_vpg"
                }
              },
              "mapping": {
                "properties": {
                  "mapping": [
                    {
                      "name": "service-instance-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "service-instance-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-name",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-type",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-type",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfccustomizationuuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfccustomizationuuid",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "aic-cloud-region",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "aic-cloud-region",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "availability_zone_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "availability_zone_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vm-type",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vm-type",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnfc-model-invariant-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnfc-model-invariant-uuid",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vfccustomizationuuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnfc-model-version",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnfc-model-version",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vfccustomizationuuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nf-role",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "vPG"
                      },
                      "input-param": false,
                      "dictionary-name": "nf-role",
                      "dictionary-source": "default",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nfc-naming-code",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "nfc-naming-code",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "public_net_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "public_net_id"
                      },
                      "input-param": false,
                      "dictionary-name": "public_net_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_net_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "onap_private_net_id"
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_net_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_subnet_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "Oam_Network_Puhf"
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_subnet_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "unprotected_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "unprotected_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfw_private_ip_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfw_private_ip_0",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id","vnf-id","vf-module-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vsn_private_ip_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vsn_private_ip_0",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id","vnf-id","vf-module-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nexus_artifact_repo",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "nexus_artifact_repo"
                      },
                      "input-param": false,
                      "dictionary-name": "nexus_artifact_repo",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "sec_group",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "onap_sg_PUhf"
                      },
                      "input-param": false,
                      "dictionary-name": "sec_group",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "pvg_private_ip_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "pvg_private_ip_0",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id","vnf-id","vf-module-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vpg_name_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vpg_name_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-naming-policy",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "SDNC_Policy.Config_MS_ONAP_VPG_NAMING_TIMESTAMP"
                      },
                      "input-param": false,
                      "dictionary-name": "vf-naming-policy",
                      "dictionary-source": "default",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf_module_name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf_module_name",
                      "dictionary-source": "input",
                      "dependencies": [
    
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-label",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-label",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "private-prefix-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "private-prefix-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vpg_private_ip_1",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vpg_private_ip_1",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    }
                  ]
                }
              }
            }
          },
          "sdnc_vsn": {
            "type": "artifact-config-template",
            "capabilities": {
              "content": {
                "properties": {
                  "content": "sdnc_vsn"
                }
              },
              "mapping": {
                "properties": {
                  "mapping": [
                    {
                      "name": "service-instance-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "service-instance-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-name",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-type",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-type",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfccustomizationuuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfccustomizationuuid",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "aic-cloud-region",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "aic-cloud-region",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "aic_clli",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "aic_clli",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "availability_zone_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "availability_zone_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vm-type",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vm-type",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnfc-model-invariant-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnfc-model-invariant-uuid",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vfccustomizationuuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnfc-model-version",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnfc-model-version",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vfccustomizationuuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nf-role",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "vSN"
                      },
                      "input-param": false,
                      "dictionary-name": "nf-role",
                      "dictionary-source": "default",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "nfc-naming-code",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "nfc-naming-code",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "public_net_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "value": "public_net_id",
                        "default": "public_net_id"
                      },
                      "input-param": false,
                      "dictionary-name": "public_net_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_net_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_net_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_subnet_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "Oam_Network_Puhf"
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_subnet_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "unprotected_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "unprotected_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "protected_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "protected_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "onap_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "onap_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                       
                      ],
                      "version": 0
                    },
                    {
                      "name": "nexus_artifact_repo",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "value": "nexus_artifact_repo",
                        "default": "nexus_artifact_repo"
                      },
                      "input-param": false,
                      "dictionary-name": "nexus_artifact_repo",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "sec_group",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "onap_sg_PUhf"
                      },
                      "input-param": false,
                      "dictionary-name": "sec_group",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vfw_private_ip_1",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vfw_private_ip_1",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id","vnf-id","vf-module-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vsn_name_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vsn_name_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-naming-policy",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "SDNC_Policy.Config_MS_ONAP_VSN_NAMING_TIMESTAMP"
                      },
                      "input-param": false,
                      "dictionary-name": "vf-naming-policy",
                      "dictionary-source": "default",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf_module_name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf_module_name",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vf-module-label",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vf-module-label",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vf-module-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "private-prefix-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "private-prefix-id",
                      "dictionary-source": "input",
                      "dependencies": [
                    
                      ],
                      "version": 0
                    },
                    {
                      "name": "vsn_private_ip_1",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vsn_private_ip_1",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "protected-prefix-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "protected-prefix-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vsn_private_ip_0",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vsn_private_ip_0",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    }
                  ]
                }
              }
            }
          },
          "sdnc_base": {
            "type": "artifact-config-template",
            "capabilities": {
              "content": {
                "properties": {
                  "content": "sdnc_base"
                }
              },
              "mapping": {
                "properties": {
                  "mapping": [
                    {
                      "name": "service-instance-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "service-instance-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-id",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-model-customization-uuid",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
                            
                          }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-model-customization-uuid",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "aic-cloud-region",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "aic-cloud-region",
                      "dictionary-source": "input",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "nf-role",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "nf-role",
                      "dictionary-source": "db",
                      "dependencies": [
                        "vnf-model-customization-uuid"
                      ],
                      "version": 0
                    },
                    {
                      "name": "vnf-name",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "string",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "vnf-name",
                      "dictionary-source": "mdsal",
                      "dependencies": [
                        "service-instance-id"
                      ],
                      "version": 0
                    },
                    {
                      "name": "protected_private_subnet_id",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        },
                        "default": "Protected_Network_Puhf"
                      },
                      "input-param": false,
                      "dictionary-name": "protected_private_subnet_id",
                      "dictionary-source": "default",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    },
                    {
                      "name": "unprotected_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "unprotected_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                       
                      ],
                      "version": 0
                    },
                    {
                      "name": "protected_private_net_cidr",
                      "property": {
                        "description": "",
                        "required": true,
                        "type": "",
                        "status": "",
                        "constraints": [
                          {
    
    					  }
                        ],
                        "entry_schema": {
                          "type": ""
                        }
                      },
                      "input-param": false,
                      "dictionary-name": "protected_private_net_cidr",
                      "dictionary-source": "db",
                      "dependencies": [
                        
                      ],
                      "version": 0
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "node_types": {
        "tosca.nodes.Component": {
          "description": "This is default Component Node",
          "version": "1.0.0",
          "derived_from": "tosca.nodes.Root"
        },
        "tosca.nodes.DG": {
          "description": "This is Directed Graph Node Type",
          "version": "1.0.0",
          "derived_from": "tosca.nodes.Root"
        },
        "tosca.nodes.Artifact": {
          "description": "This is Deprecated Artifact Node Type.",
          "version": "1.0.0",
          "derived_from": "tosca.nodes.Root"
        },
        "component-resource-assignment": {
          "description": "This is Resource Assignment Component API",
          "version": "1.0.0",
          "capabilities": {
            "component-node": {
              "type": "tosca.capabilities.Node"
            }
          },
          "interfaces": {
            "org-onap-ccsdk-config-assignment-service-ConfigAssignmentNode": {
              "operations": {
                "process": {
                  "inputs": {
                    "action-name": {
                      "description": "Action Name of the process",
                      "required": true,
                      "type": "string"
                    },
                    "service-template-name": {
                      "description": "Service Template Name.",
                      "required": true,
                      "type": "string"
                    },
                    "service-template-version": {
                      "description": "Service Template Version.",
                      "required": true,
                      "type": "string"
                    },
                    "resource-type": {
                      "description": "Request type.",
                      "required": true,
                      "type": "string"
                    },
                    "template-names": {
                      "description": "Name of the artifact Node Templates, to get the template Content.",
                      "required": true,
                      "type": "list",
                      "entry_schema": {
                        "type": "string"
                      }
                    },
                    "request-id": {
                      "description": "Request Id, Unique Id for the request.",
                      "required": true,
                      "type": "string"
                    },
                    "resource-id": {
                      "description": "Resource Id.",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "outputs": {
                    "resource-assignment-params": {
                      "required": true,
                      "type": "string"
                    },
                    "status": {
                      "required": true,
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "derived_from": "tosca.nodes.Component"
        },
        "dg-resource-assignment": {
          "description": "This is Resource Assignment Directed Graph",
          "version": "1.0.0",
          "properties": {
            "mode": {
              "required": false,
              "type": "string",
              "default": "sync"
            },
            "version": {
              "required": false,
              "type": "string",
              "default": "LATEST"
            },
            "is-start-flow": {
              "required": false,
              "type": "boolean",
              "default": "false"
            }
          },
          "capabilities": {
            "dg-node": {
              "type": "tosca.capabilities.Node"
            },
            "content": {
              "type": "tosca.capabilities.Content",
              "properties": {
                "type": {
                  "required": false,
                  "type": "string",
                  "default": "json"
                },
                "content": {
                  "required": false,
                  "type": "string"
                }
              }
            }
          },
          "requirements": {
            "component-dependency": {
              "capability": "component-node",
              "node": "component-resource-assignment",
              "relationship": "tosca.relationships.DependsOn"
            }
          },
          "interfaces": {
            "CONFIG": {
              "operations": {
                "ResourceAssignment": {
                  "inputs": {
                    "params": {
                      "required": false,
                      "type": "list",
                      "entry_schema": {
                        "type": "datatype-property"
                      }
                    }
                  }
                }
              }
            }
          },
          "derived_from": "tosca.nodes.DG"
        },
        "artifact-config-template": {
          "description": "This is Configuration Velocity Template",
          "version": "1.0.0",
          "properties": {
            "action-names": {
              "required": true,
              "type": "list",
              "entry_schema": {
                "type": "string"
              }
            }
          },
          "capabilities": {
            "content": {
              "type": "tosca.capabilities.Content",
              "properties": {
                "content": {
                  "required": true,
                  "type": "string"
                }
              }
            },
            "mapping": {
              "type": "tosca.capabilities.Mapping",
              "properties": {
                "mapping": {
                  "required": false,
                  "type": "list",
                  "entry_schema": {
                    "type": "datatype-resource-assignment"
                  }
                }
              }
            }
          },
          "derived_from": "tosca.nodes.Artifact"
        }
      },
      "data_types": {
        "datatype-property": {
          "version": "1.0.0",
          "description": "This is Entry point Input Data Type, which is dynamic datatype, The parameter names will be populated during the Design time for each inputs",
          "properties": {
            "type": {
              "required": true,
              "type": "string"
            },
            "description": {
              "required": false,
              "type": "string"
            },
            "required": {
              "required": false,
              "type": "boolean"
            },
            "default": {
              "required": false,
              "type": "string"
            },
            "entry_schema": {
              "required": false,
              "type": "string"
            }
          },
          "derived_from": "tosca.datatypes.Root"
        },
        "datatype-resource-assignment": {
          "version": "1.0.0",
          "description": "This is Resource Assignment Data Type",
          "properties": {
            "
parameter-name
  • property": {
            
"vf-module-index",
  •   "required": true,
              "
int-value
  • type": 
0
  • "datatype-property"
            },
            "input-param": {
              "
parameter-name
  • required": 
"service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param_length"
  • true,
              "
string-value
  • type": "
2
  • boolean"
            },
{
  • 
           
"parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.capability-name"
  •  "dictionary-name": {
              "required": false,
              "
string-value
  • type": "
netbox-ip-assign
  • string"
            },
            "dictionary-source": {
              "
parameter-name
  • required": 
"service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.status"
  • false,
              "
string-value
  • type": "
PENDING
  • string"
            },
            "dependencies": {
              
"parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key_length",
  • "required": true,
              "type": "list",
              "entry_schema": {
                "
int-value
  • type":
2
  •  "string"
              }
            },
            "status": {
              "
parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[0].name"
  • required": false,
              "
string-value
  • type": "
service-instance-id
  • string"
            },
            "message": {
            
"parameter-name
  •   "required": false,
              "type": 
"service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[0].value",
  • "string"
            },
            "updated-date": {
              "required": false,
              "
string-value
  • type": "
1234-56789-4321-98766
  • string"
            },
            "updated-by": {
              "
parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[1].name",
  • required": false,
              "
string-value
  • type": "
external_key"
  • string"
            }
          },
          
{
  • "derived_from": "tosca.datatypes.Root"
        },
        "
parameter-name
  • dt-resource-assignment-request": {
          "version": "
service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[0].resource-resolution-data.resource-key[1].value
  • 1.0.0",
          "description": "This is Dynamic Data type definition generated from resource mapping for the config template name activate-template.",
          
  • "
string-value
  • properties": {
            "
david
  • password-
the
  • user-
boss
  • ftap-
blah
  • nsm": {
          
},
  •     "required": true,
     
{
  •          "
parameter-name
  • type": "
service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.capability-name
  • string",
              "
string-value
  • default": "
netbox
  • password-
ip
  • user-
assign
  • ftap"
            },
            "reservation-id": {
            
"parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.status"
  •   "required": true,
              "type": "string
-
  • ",
              "value": "
PENDING
  • 123"
            },
            "security-manager-resource-key": {
              "required": true,
              "
parameter-name
  • type": "
service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key_length
  • string",
              "
int-
  • value": 
2
  • "sdnc"
            },
            "password-user-ftap": {
              "
parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[0].name"
  • description": "",
              "required": true,
              "
string-value
  • type": "
service-instance-id
  • string",
          
},
  •     "status": "",
      
{
  •         "
parameter-name
  • constraints": 
"service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[0].value",
  • [
                {
            
"string-value": "1234-56789-4321-98765"
  •       
                }
,
  • 
          
{
  •     ],
              "
parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[1].name",
  • entry_schema": {
                "
string-value
  • type": "
external_key
  • "
              }
,
  • 
          
{
  •   }
          
"parameter-name": "service-data.vnfs.vnf[0].vnf-data.vf-modules.vf-module[0].vf-module-data.vf-module-topology.vf-module-parameters.param[1].resource-resolution-data.resource-key[1].value"
  • },
          
"string-value
  • "derived_from": "
david-the-boss-blah-2
  • tosca.datatypes.Dynamic"
        
  • }
]
  • 
      }
    }

2.   Artifact Templates

  • VNF

View file
namesdnc_vnf_vFW.json
height250

  • BASE

View file
namesdnc_base.json
height250

  • vFW

View file
namesdnc_vFW.json
height250

  • vSN

View file
namesdnc_vsn.json
height250

  • vPG

View file
namesdnc_vpg.json
height250

3.   Data Dictionaries


View file
nameNew_DD.zip
height250