Revert "Re-enabling NS primitives, config-primitive over service-primitive, clean-up"
[osm/IM.git] / models / yang / nsr.yang
index bce46e0..e2a4d6f 100644 (file)
@@ -178,16 +178,16 @@ module nsr
     }
   }
 
-  grouping event-config-primitive {
+  grouping event-service-primitive {
     leaf seq {
       description
-          "Sequence number for the config primitive.";
+          "Sequence number for the service primitive.";
       type uint64;
     }
 
     leaf name {
       description
-          "Name of the primitive.";
+          "Name of the service primitive.";
       type string;
       mandatory "true";
     }
@@ -267,6 +267,8 @@ module nsr
           uses project-nsd:nsr-nsd-vnf-dependency;
 
           uses project-nsd:nsr-nsd-monitoring-param;
+
+          uses project-nsd:nsr-nsd-service-primitive;
         }
         uses ns-instance-config-params;
       }
@@ -893,6 +895,100 @@ module nsr
           type config-states;
         }
 
+        list service-primitive {
+           description
+                "Network service level service primitives.";
+
+           key "name";
+
+           leaf name {
+              description
+                  "Name of the service primitive.";
+              type string;
+           }
+
+           list parameter {
+              description
+                  "List of parameters for the service primitive.";
+
+              key "name";
+              uses manotypes:primitive-parameter;
+           }
+
+           uses manotypes:ui-primitive-group;
+
+           list vnf-primitive-group {
+              description
+                "Reference to member-vnf within constituent-vnfds";
+
+              key "member-vnf-index-ref";
+              leaf member-vnf-index-ref {
+                description
+                   "Reference to member-vnf within constituent-vnfds";
+                type string;
+              }
+
+              leaf vnfd-id-ref {
+                 description
+                   "A reference to a vnfd. This is a 
+                    leafref to path:
+                        ../../../../nsd:constituent-vnfd
+                        + [nsd:id = current()/../nsd:id-ref]
+                        + /nsd:vnfd-id-ref
+                    NOTE: An issue with confd is preventing the
+                    use of xpath. Seems to be an issue with leafref
+                    to leafref, whose target is in a different module.
+                    Once that is resovled this will switched to use
+                    leafref";
+
+                 type string;
+              }
+
+              leaf vnfd-name {
+                 description
+                   "Name of the VNFD";
+                 type string;
+              }
+
+              list primitive {
+                 key "index";
+
+                 leaf index {
+                   description "Index of this primitive";
+                   type uint32;
+                 }
+
+                 leaf name {
+                   description "Name of the primitive in the VNF primitive ";
+                   type string;
+                 }
+              }
+           }
+
+           leaf user-defined-script {
+             description
+               "A user defined script.";
+             type string;
+           }
+        }
+
+        list initial-service-primitive {
+          description
+            "Initial set of service primitives for NSD.";
+          key "seq";
+
+          uses event-service-primitive;
+        }
+
+        list terminate-service-primitive {
+          description
+            "Set of service primitives to
+             execute during termination of NSD.";
+          key "seq";
+
+          uses event-service-primitive;
+        }
+
         list monitoring-param {
           description
             "List of NS level params.";
@@ -1071,12 +1167,12 @@ module nsr
     }
   }
 
-  rpc get-ns-config-primitive-values {
-    description "Get the config primitive parameter values";
+  rpc get-ns-service-primitive-values {
+    description "Get the service primitive parameter values";
 
     input {
       leaf name {
-        description "Name of the NS config primitive group";
+        description "Name of the NS service primitive group";
         mandatory true;
         type string;
       }
@@ -1178,8 +1274,8 @@ module nsr
     }
   }
 
-  rpc exec-ns-config-primitive {
-    description "Executes a NS config primitive or script";
+  rpc exec-ns-service-primitive {
+    description "Executes a NS service primitive or script";
 
     input {
       leaf name {