Add dhcp-subnet-assignments container
[sdnc/northbound.git] / generic-resource-api / model / src / main / yang / GENERIC-RESOURCE-API.yang
index 7892351..e45447e 100644 (file)
@@ -4,7 +4,7 @@ module GENERIC-RESOURCE-API {
 \r
    prefix generic-resource-api;\r
 \r
-   import ietf-inet-types { prefix "inet"; revision-date "2010-09-24"; }\r
+   import ietf-inet-types { prefix "inet"; revision-date "2013-07-15"; }\r
 \r
    import ietf-yang-types { prefix yang; }\r
 \r
@@ -255,6 +255,9 @@ module GENERIC-RESOURCE-API {
          leaf network-type {\r
             type string;\r
          }\r
+         leaf network-technology {\r
+             type string;\r
+         }\r
          leaf from-preload {\r
             description "Indicates if source is preload data";\r
             type boolean;\r
@@ -313,6 +316,15 @@ module GENERIC-RESOURCE-API {
          leaf eipam-v6-address-plan {\r
             type string;\r
          }\r
+         leaf is-trunked {\r
+             type boolean;\r
+         }\r
+         leaf segmentation-id {\r
+            type string;\r
+         }\r
+         container related-networks {\r
+            uses related-network;\r
+         }\r
       }\r
    }\r
    grouping network-assignments {\r
@@ -373,6 +385,7 @@ module GENERIC-RESOURCE-API {
                type string;\r
             }\r
          }\r
+         uses aggregate-routes;\r
          uses subnets;\r
          leaf subnet-key-value {\r
             description "key-value provided to EIPAM when  creating shared subnet";\r
@@ -386,6 +399,10 @@ module GENERIC-RESOURCE-API {
                   type string;\r
                   mandatory true;\r
                }\r
+               leaf neutron-network-id {\r
+                  description "Neutron-network-id assigned by PO/RO";\r
+                  type string;\r
+               }\r
                uses vpn-bindings;\r
                leaf vlan-tag-id {\r
                   type uint32;\r
@@ -418,6 +435,7 @@ module GENERIC-RESOURCE-API {
       uses service-information;\r
       uses vnf-information;\r
       uses vnf-request-input;\r
+      uses license-information;\r
    }\r
    grouping vnf-information {\r
       container vnf-information {\r
@@ -579,8 +597,29 @@ module GENERIC-RESOURCE-API {
                   enum "N";\r
                }\r
             }\r
+            leaf network-start-address {\r
+               description "start-address of the subnet";\r
+               type inet:ip-address;\r
+            }\r
+            leaf gateway-address {\r
+               description "subnet gateway address";\r
+               type inet:ip-address;\r
+            }\r
+            leaf cidr-mask {\r
+               description "cidr mask";\r
+               type string;\r
+            }\r
          }\r
       }\r
+      leaf is-trunked {\r
+          type boolean;\r
+       }\r
+       leaf segmentation-id {\r
+          type string;\r
+       }\r
+       container related-networks {\r
+          uses related-network;\r
+       }\r
    }\r
    grouping vnf-level-oper-status {\r
       container vnf-level-oper-status {\r
@@ -668,6 +707,21 @@ module GENERIC-RESOURCE-API {
             }\r
          }\r
          uses vlan-vnfc-instance-groups;\r
+         container dhcp-subnet-assignments {\r
+            list dhcp-subnet-assignment {\r
+               key "neutron-subnet-id";\r
+               leaf neutron-subnet-id {\r
+                  description "Same as subnet-id in subnet-data structure";\r
+                  type string;\r
+               }\r
+               leaf network-role {\r
+                  type string;\r
+               }\r
+               leaf ip-version {\r
+                  type string;\r
+               }\r
+            }\r
+         }\r
       }\r
    }\r
    grouping vm-topology-data {\r
@@ -675,6 +729,7 @@ module GENERIC-RESOURCE-API {
          type string;\r
          mandatory true;\r
       }\r
+      uses onap-model-information;\r
       leaf nfc-naming-code {\r
          description "used in vm naming(draft 29: changed from nfc-code)";\r
          type string;\r
@@ -712,14 +767,13 @@ module GENERIC-RESOURCE-API {
       list vnfc-network-data {\r
          key "vnfc-network-role";\r
          leaf vnfc-network-role {\r
-            description "e.g. dummy net - parent port network role ";\r
             type string;\r
             mandatory true;\r
          }\r
          leaf vnfc-type {\r
-            description "Vm-type e.g. FW,";\r
             type string;\r
          }\r
+         uses connection-point;\r
          container vnfc-ports {\r
             list vnfc-port {\r
                key "vnfc-port-id";\r
@@ -869,6 +923,15 @@ module GENERIC-RESOURCE-API {
             }\r
          }\r
       }\r
+      leaf is-trunked {\r
+         type boolean;\r
+      }\r
+      leaf segmentation-id {\r
+         type string;\r
+      }\r
+      container related-networks {\r
+         uses related-network;\r
+      }\r
    }\r
    grouping vf-module-level-oper-status {\r
       container vf-module-level-oper-status {\r
@@ -1157,6 +1220,9 @@ module GENERIC-RESOURCE-API {
          leaf lower-tag-id {\r
             type uint32;\r
          }\r
+         leaf is-private {\r
+            type boolean;\r
+         }\r
       }\r
    }\r
    grouping vlan-vnfc-instance-groups {\r
@@ -1245,6 +1311,20 @@ module GENERIC-RESOURCE-API {
             description "network-collection-customization-uuid stored in Network IsntanceGroup.customization-uuid in A&AI";\r
             type string;\r
          }\r
+         container networks {\r
+            list network {\r
+               key "network-id";\r
+               leaf network-id {\r
+                  description "Index into network-topology-identifier structure";\r
+                  type string;\r
+                  mandatory true;\r
+               }\r
+               leaf neutron-network-id {\r
+                  description "Neutron-network-id assigned by PO/RO";\r
+                  type string;\r
+               }\r
+            }\r
+         }\r
          container vnf-floating-ip {\r
             uses ip-addresses;\r
          }\r
@@ -1285,6 +1365,10 @@ module GENERIC-RESOURCE-API {
             type string;\r
             mandatory true;\r
          }\r
+         leaf neutron-network-id {\r
+            description "Neutron network id assigned by PO/RP";\r
+            type string;\r
+         }\r
          leaf network-name {\r
             description "Subinterface network name";\r
             type uint32;\r
@@ -1381,6 +1465,111 @@ module GENERIC-RESOURCE-API {
          }\r
       }\r
    }\r
+   grouping license-information {\r
+      container license-information {\r
+         list entitlement-pool-list {\r
+            key "entitlement-pool-uuid action";\r
+            leaf entitlement-pool-uuid {\r
+               type string;\r
+               mandatory true;\r
+            }\r
+            leaf action {\r
+               type string;\r
+               mandatory true;\r
+            }\r
+            leaf entitlement-pool-invariant-uuid {\r
+               type string;\r
+            }\r
+            leaf entitlement-uuid {\r
+               description "assigned by ALTS";\r
+               type string;\r
+            }\r
+         }\r
+         list license-key-group-list {\r
+            key "license-key-group-uuid action";\r
+            leaf license-key-group-uuid {\r
+               type string;\r
+               mandatory true;\r
+            }\r
+            leaf action {\r
+               type string;\r
+               mandatory true;\r
+            }\r
+            leaf license-key-group-invariant-uuid {\r
+               type string;\r
+            }\r
+            leaf license-key {\r
+               description "assigned by ALTS";\r
+               type string;\r
+            }\r
+            leaf license-uuid {\r
+               description "assigned by ALTS";\r
+               type string;\r
+            }\r
+         }\r
+      }\r
+   }\r
+   grouping related-network {\r
+      list related-network {\r
+         key "network-id";\r
+         leaf network-id {\r
+            description "Key to l3-network object";\r
+            type string;\r
+         }\r
+         leaf network-role {\r
+            type string;\r
+         }\r
+         uses vlan-tags;\r
+      }\r
+   }\r
+   grouping connection-point {\r
+      container connection-point {\r
+         leaf connection-point-id {\r
+            description "Key to CP object in A&AI";\r
+            type string;\r
+         }\r
+         leaf port-id {\r
+            description "port-index when multiple CPs connect to same network. Default zero (0)";\r
+            type string;\r
+         }\r
+         list vlan-data {\r
+            key "vlan-uuid";\r
+            leaf vlan-uuid {\r
+               description "Key to vlan-tag uuid object in A&AI Generated by vlan mS";\r
+               type string;\r
+            }\r
+            leaf vlan-tag-id {\r
+               type string;\r
+            }\r
+            leaf vlan-tag-description {\r
+               type string;\r
+            }\r
+            leaf vlan-role {\r
+               description "Inner/Outer roles";\r
+               type string;\r
+            }\r
+         }\r
+      }\r
+   }\r
+   grouping aggregate-routes {\r
+      list aggregate-routes {\r
+         key "route-id";\r
+         leaf route-id {\r
+            description "Unique id";\r
+            type string;\r
+         }\r
+         leaf start-address {\r
+            type inet:ip-address;\r
+         }\r
+         leaf cidr-mask {\r
+            type string;\r
+         }\r
+         leaf ip-version {\r
+            description "Use values 4 or 6.";\r
+            type string;\r
+         }\r
+      }\r
+   }\r
    grouping pnf-information {\r
       container pnf-information {\r
          leaf pnf-name {\r
@@ -1730,9 +1919,23 @@ module GENERIC-RESOURCE-API {
          leaf vnf-id {\r
             type string;\r
          }\r
+         leaf vf-module-id {\r
+            description "This is mandatory in case of rebuild";\r
+            type string;\r
+         }\r
          container input-parameters {\r
             uses param;\r
          }\r
+         leaf rebuild {\r
+            description "Value will indicate what to rebuild";\r
+            type string;\r
+         }\r
+         list configuration-ids {\r
+            key "configuration-id";\r
+            leaf configuration-id {\r
+               type string;\r
+            }\r
+         }\r
       }\r
    }\r
    grouping vnr-parameters {\r
@@ -1740,6 +1943,10 @@ module GENERIC-RESOURCE-API {
          leaf vnf-id {\r
             type string;\r
          }\r
+         leaf vf-module-id {\r
+            description "This is mandatory in case of rebuild";\r
+            type string;\r
+         }\r
          leaf vnf-service-instance-id {\r
             type string;\r
          }\r
@@ -1867,7 +2074,7 @@ module GENERIC-RESOURCE-API {
    }\r
 \r
    grouping connection-attachment-topology {\r
-      container brg-topology {\r
+      container connection-attachment-topology {\r
          uses allotted-resource-identifiers;\r
          uses onap-model-information;\r
          uses connection-attachment-assignments;\r
@@ -1882,6 +2089,43 @@ module GENERIC-RESOURCE-API {
       }\r
    }\r
 \r
+   grouping vnf-vnr-rebuild-data {\r
+      container vnf-vnr-rebuild-data {\r
+         leaf vnf-id {\r
+            type string;\r
+         }\r
+         leaf vnf-service-instance-id {\r
+            type string;\r
+         }\r
+         list vnrs-data {\r
+            key "configuration-id";\r
+            leaf configuration-id {\r
+               type string;\r
+            }\r
+            leaf network-instance-group-id {\r
+               type string;\r
+            }\r
+            leaf network-id {\r
+               type string;\r
+            }\r
+            leaf vnfc-instance-group-function {\r
+               type string;\r
+            }\r
+            leaf network-instance-group-function {\r
+               type string;\r
+            }\r
+            leaf parent-port-role {\r
+               type string;\r
+            }\r
+            leaf upper-tag-id {\r
+               type uint32;\r
+            }\r
+            leaf lower-tag-id {\r
+               type uint32;\r
+            }\r
+         }\r
+      }\r
+   }\r
    grouping allotted-resource-information {\r
       container allotted-resource-information {\r
          leaf allotted-resource-id {\r
@@ -2096,6 +2340,8 @@ module GENERIC-RESOURCE-API {
                enum "disable";\r
                enum "enable";\r
                enum "update";\r
+               enum "reoptimize";\r
+               enum "rebuild";\r
             }\r
          }\r
          leaf svc-notification-url {\r
@@ -2115,6 +2361,7 @@ module GENERIC-RESOURCE-API {
             type enumeration {\r
                enum "CreateNetworkInstance";\r
                enum "ActivateNetworkInstance";\r
+               enum "DeActivateNetworkInstance";\r
                enum "CreateServiceInstance";\r
                enum "DeleteServiceInstance";\r
                enum "DeleteNetworkInstance";\r
@@ -2150,6 +2397,7 @@ module GENERIC-RESOURCE-API {
                enum "DeletePortMirrorConfigurationInstance";\r
                enum "ChangePortMirrorConfigurationInstance";\r
                enum "CreateGenericConfigurationInstance";\r
+               enum "RebuildGenericConfigurationInstance";\r
                enum "DeleteGenericConfigurationInstance";\r
                enum "PreloadVfModuleRequest";\r
                enum "DeletePreloadVfModuleRequest";\r
@@ -2158,6 +2406,28 @@ module GENERIC-RESOURCE-API {
                enum "CreateForwardingPathInstance";\r
                enum "DeleteForwardingPathInstance";\r
                enum "UpdateForwardingPathInstance";\r
+               enum "CreateSDWANDeviceInstance";\r
+               enum "ActivateSDWANDeviceInstance";\r
+               enum "DeactivateSDWANDeviceInstance";\r
+               enum "DeleteSDWANDeviceInstance";\r
+               enum "CreateSDWANPortInstance";\r
+               enum "ActivateSDWANPortInstance";\r
+               enum "DeactivateSDWANPortInstance";\r
+               enum "DeleteSDWANPortInstance";\r
+               enum "ReoptimizeSOTNInstance";\r
+               enum "CreateSDWANLanPortInstance";\r
+               enum "ActivateSDWANLanPortInstance";\r
+               enum "DeactivateSDWANLanPortInstance";\r
+               enum "DeleteSDWANLanPortInstance";\r
+               enum "CreateSDWANVpnInstance";\r
+               enum "ActivateSDWANVpnInstance";\r
+               enum "DeactivateSDWANVpnInstance";\r
+               enum "DeleteSDWANVpnInstance";\r
+               enum "CreateSDWANSiteInstance";\r
+               enum "ActivateSDWANSiteInstance";\r
+               enum "DeactivateSDWANSiteInstance";\r
+               enum "DeleteSDWANSiteInstance";\r
+               enum "SdwanBandwidthChange";\r
             }\r
          }\r
          leaf source {\r
@@ -2228,6 +2498,10 @@ module GENERIC-RESOURCE-API {
          description "The AIC cloud region which maps to contrail versions";\r
          type string;\r
       }\r
+      leaf cloud-owner {\r
+         description "The cloud owner provided by the caller";\r
+         type string;\r
+      }\r
       leaf aic-clli {\r
          description "Not expected to be used";\r
          type string;\r
@@ -2312,6 +2586,7 @@ module GENERIC-RESOURCE-API {
             enum "deactivate";\r
             enum "create";\r
             enum "changeassign";\r
+            enum "reoptimize";\r
          }\r
       }\r
       leaf last-action {\r
@@ -2319,6 +2594,7 @@ module GENERIC-RESOURCE-API {
          type enumeration {\r
             enum "CreateNetworkInstance";\r
             enum "ActivateNetworkInstance";\r
+            enum "DeActivateNetworkInstance";\r
             enum "CreateServiceInstance";\r
             enum "DeleteServiceInstance";\r
             enum "DeleteNetworkInstance";\r
@@ -2362,6 +2638,28 @@ module GENERIC-RESOURCE-API {
             enum "CreateForwardingPathInstance";\r
             enum "DeleteForwardingPathInstance";\r
             enum "UpdateForwardingPathInstance";\r
+            enum "CreateSDWANDeviceInstance";\r
+            enum "ActivateSDWANDeviceInstance";\r
+            enum "DeactivateSDWANDeviceInstance";\r
+            enum "DeleteSDWANDeviceInstance";\r
+            enum "CreateSDWANPortInstance";\r
+            enum "ActivateSDWANPortInstance";\r
+            enum "DeactivateSDWANPortInstance";\r
+            enum "DeleteSDWANPortInstance";\r
+            enum "ReoptimizeSOTNInstance";\r
+            enum "CreateSDWANLanPortInstance";\r
+            enum "ActivateSDWANLanPortInstance";\r
+            enum "DeactivateSDWANLanPortInstance";\r
+            enum "DeleteSDWANLanPortInstance";\r
+            enum "CreateSDWANVpnInstance";\r
+            enum "ActivateSDWANVpnInstance";\r
+            enum "DeactivateSDWANVpnInstance";\r
+            enum "DeleteSDWANVpnInstance";\r
+            enum "CreateSDWANSiteInstance";\r
+            enum "ActivateSDWANSiteInstance";\r
+            enum "DeactivateSDWANSiteInstance";\r
+            enum "DeleteSDWANSiteInstance";\r
+            enum "SdwanBandwidthChange";\r
          }\r
       }\r
       leaf last-svc-request-id {\r
@@ -2676,6 +2974,7 @@ module GENERIC-RESOURCE-API {
             type string;\r
          }\r
          uses vnr-parameters;\r
+         uses vnf-vnr-rebuild-data;\r
       }\r
    }\r
    container services {\r