Dublin yang model update
[sdnc/northbound.git] / generic-resource-api / model / src / main / yang / GENERIC-RESOURCE-API.yang
index b03196c..ac89e02 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
@@ -51,6 +51,20 @@ module GENERIC-RESOURCE-API {
                }\r
             }\r
          }\r
+         container pnfs {\r
+            list pnf {\r
+               key "pnf-id";\r
+               leaf pnf-id {\r
+                  type string;\r
+                  mandatory true;\r
+               }\r
+               container pnf-data {\r
+                  uses pnf-operation-information;\r
+                  uses pnf-topology;\r
+                  uses pnf-level-oper-status;\r
+               }\r
+            }\r
+         }\r
          container vnfs {\r
             list vnf {\r
                key "vnf-id";\r
@@ -399,6 +413,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
@@ -425,6 +443,79 @@ module GENERIC-RESOURCE-API {
          uses oper-status-data;\r
       }\r
    }\r
+   grouping pnf-operation-information {\r
+      uses sdnc-request-header;\r
+      uses request-information;\r
+      uses service-information;\r
+      uses pnf-details;\r
+      uses pnf-request-input;\r
+   }\r
+   grouping pnf-details {\r
+      container pnf-details {\r
+         leaf pnf-id {\r
+            description "pnfId*Identifier of this Pnf information element. CORRELATIONID = PNF-NAME (A&AI)";\r
+            type string;\r
+            mandatory true;\r
+         }\r
+         leaf pnf-type {\r
+            description "pnfType (template)*Type of Resource. NEW type: PNF (pre-defined in SDC)";\r
+            type string;\r
+         }\r
+         leaf pnf-name {\r
+            type string;\r
+         }\r
+         uses onap-model-information;\r
+      }\r
+   }\r
+   grouping pnf-request-input {\r
+      container pnf-request-input {\r
+         leaf request-version {\r
+            description "keep this? e.g. 1702";\r
+            type string;\r
+         }\r
+         leaf pnf-name {\r
+            type string;\r
+         }\r
+         uses region-identifier;\r
+         container pnf-input-parameters {\r
+            uses param;\r
+         }\r
+      }\r
+   }\r
+   grouping pnf-topology {\r
+      container pnf-topology {\r
+         uses pnf-topology-identifier-structure;\r
+         uses region-identifier;\r
+         uses onap-model-information;\r
+         container pnf-parameters-data {\r
+            uses param;\r
+         }\r
+         leaf sdnc-generated-cloud-resources {\r
+            description "Indicate if source is sdnc generated cloud param.When true, the parameters are literal HEAT template parameter names;When false, the parameters need to be converted to HEAT format";\r
+            type boolean;\r
+         }\r
+      }\r
+   }\r
+   grouping pnf-topology-identifier-structure {\r
+      container pnf-topology-identifier-structure {\r
+         leaf pnf-id {\r
+            type string;\r
+         }\r
+         leaf pnf-type {\r
+            description "In preload tree, this label is used for the vf-module-type";\r
+            type string;\r
+         }\r
+         leaf pnf-name {\r
+            description "optionally comes from pnf-request-input container or is assigned by sdn-c";\r
+            type string;\r
+         }\r
+      }\r
+   }\r
+   grouping pnf-level-oper-status {\r
+      container pnf-level-oper-status {\r
+         uses oper-status-data;\r
+      }\r
+   }\r
    grouping vnf-operation-information {\r
       uses sdnc-request-header;\r
       uses request-information;\r
@@ -1292,6 +1383,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
@@ -1332,6 +1437,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
@@ -1882,6 +1991,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
          container input-parameters {\r
             uses param;\r
          }\r
@@ -1902,6 +2015,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
@@ -2316,12 +2433,16 @@ 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
                enum "CreateVnfInstance";\r
                enum "ActivateVnfInstance";\r
                enum "DeleteVnfInstance";\r
+               enum "CreatePnfInstance";\r
+               enum "ActivatePnfInstance";\r
+               enum "DeletePnfInstance";\r
                enum "CreateVfModuleInstance";\r
                enum "ActivateVfModuleInstance";\r
                enum "DeleteVfModuleInstance";\r
@@ -2360,10 +2481,6 @@ module GENERIC-RESOURCE-API {
                enum "CreateForwardingPathInstance";\r
                enum "DeleteForwardingPathInstance";\r
                enum "UpdateForwardingPathInstance";\r
-               enum "CreateSDWANConnectivityInstance";\r
-               enum "ActivateSDWANConnectivityInstance";\r
-               enum "DeactivateSDWANConnectivityInstance";\r
-               enum "DeleteSDWANConnectivityInstance";\r
                enum "CreateSDWANDeviceInstance";\r
                enum "ActivateSDWANDeviceInstance";\r
                enum "DeactivateSDWANDeviceInstance";\r
@@ -2372,11 +2489,20 @@ module GENERIC-RESOURCE-API {
                enum "ActivateSDWANPortInstance";\r
                enum "DeactivateSDWANPortInstance";\r
                enum "DeleteSDWANPortInstance";\r
-               enum "CreateSDWANAttachmentInstance";\r
-               enum "ActivateSDWANAttachmentInstance";\r
-               enum "DeactivateSDWANAttachmentInstance";\r
-               enum "DeleteSDWANAttachmentInstance";\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
@@ -2543,12 +2669,16 @@ module GENERIC-RESOURCE-API {
          type enumeration {\r
             enum "CreateNetworkInstance";\r
             enum "ActivateNetworkInstance";\r
+            enum "DeActivateNetworkInstance";\r
+            enum "DeleteNetworkInstance";\r
             enum "CreateServiceInstance";\r
             enum "DeleteServiceInstance";\r
-            enum "DeleteNetworkInstance";\r
             enum "CreateVnfInstance";\r
             enum "ActivateVnfInstance";\r
             enum "DeleteVnfInstance";\r
+            enum "CreatePnfInstance";\r
+            enum "ActivatePnfInstance";\r
+            enum "DeletePnfInstance";\r
             enum "CreateVfModuleInstance";\r
             enum "ActivateVfModuleInstance";\r
             enum "DeleteVfModuleInstance";\r
@@ -2586,10 +2716,6 @@ module GENERIC-RESOURCE-API {
             enum "CreateForwardingPathInstance";\r
             enum "DeleteForwardingPathInstance";\r
             enum "UpdateForwardingPathInstance";\r
-            enum "CreateSDWANConnectivityInstance";\r
-            enum "ActivateSDWANConnectivityInstance";\r
-            enum "DeactivateSDWANConnectivityInstance";\r
-            enum "DeleteSDWANConnectivityInstance";\r
             enum "CreateSDWANDeviceInstance";\r
             enum "ActivateSDWANDeviceInstance";\r
             enum "DeactivateSDWANDeviceInstance";\r
@@ -2598,11 +2724,20 @@ module GENERIC-RESOURCE-API {
             enum "ActivateSDWANPortInstance";\r
             enum "DeactivateSDWANPortInstance";\r
             enum "DeleteSDWANPortInstance";\r
-            enum "CreateSDWANAttachmentInstance";\r
-            enum "ActivateSDWANAttachmentInstance";\r
-            enum "DeactivateSDWANAttachmentInstance";\r
-            enum "DeleteSDWANAttachmentInstance";\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
@@ -2648,6 +2783,11 @@ module GENERIC-RESOURCE-API {
          uses instance-reference;\r
       }\r
    }\r
+   grouping pnf-response-information {\r
+      container pnf-response-information {\r
+         uses instance-reference;\r
+      }\r
+   }\r
    grouping contrail-route-response-information {\r
       container contrail-route-response-information {\r
          uses instance-reference;\r
@@ -3093,6 +3233,16 @@ module GENERIC-RESOURCE-API {
          uses service-response-information;\r
       }\r
    }\r
+   rpc pnf-topology-operation {\r
+      input {\r
+         uses pnf-operation-information;\r
+      }\r
+      output {\r
+         uses topology-response-common;\r
+         uses pnf-response-information;\r
+         uses service-response-information;\r
+      }\r
+   }\r
    rpc contrail-route-topology-operation {\r
       input {\r
          uses contrail-route-operation-information;\r