Bump versions by x.y.(z+1)
[unimgr.git] / legato-api / src / main / yang / unimgr-dhcp.yang
index 048494406793b85b1bb5f9f3144ffd4d8c1a1424..73694f936ea663c2d14e5fc35c45e5607e27c362 100644 (file)
@@ -1,26 +1,78 @@
 module unimgr-dhcp {
     namespace "urn:opendaylight:unimgr:unimgr-dhcp";
     prefix "unimgr-dhcp";
-    
-    import dhcp_allocation_pool {
-        prefix dhcp;
-    }
+
+    import ietf-inet-types { prefix inet; revision-date "2013-07-15"; }
+    import ietf-yang-types { prefix yang; }
+    import mef-types { prefix mef-types; }
 
     revision "2016-12-14" {
         description "It provides required datastore containers to handle DHCP requests
             coming from access or external tunnel ports";
     }
-
     container unimgr-dhcp {
         config true;
         description "contains non-neutron DHCP allocation";
-        list network {
-            key "network-id";
-            leaf network-id {
-                description "unimgr network id";
-                type string;
+        list unimgr-services {
+            key "svc-id";
+            leaf svc-id {
+                description "unimgr service id";
+                type mef-types:retail-svc-id-type;
+            }
+
+            list network {
+                key "network-id";
+                leaf network-id {
+                    description "unimgr network id";
+                    type string;
+                }
+
+                list unimgr-allocations {
+                    key "subnet";
+                    leaf subnet {
+                        description "subnet for the dhcp to allocate ip addresses";
+                        type inet:ip-prefix;
+                    }
+
+                    list unimgr-allocation-instance {
+                        key "mac";
+                        leaf mac {
+                            description "requesting mac";
+                            type yang:phys-address;
+                        }
+                        leaf allocated-ip {
+                            description "allocated ip address";
+                            type inet:ip-address;
+                        }
+                    }
+                }
+
+                list unimgr-allocation-pool {
+                    key "subnet";
+                    leaf subnet {
+                        description "subnet for the dhcp to allocate ip addresses";
+                        type inet:ip-prefix;
+                    }
+                    leaf allocate-from {
+                        description "low allocation limit";
+                        type inet:ip-address;
+                    }
+                    leaf allocate-to {
+                        description "high allocation limit";
+                        type inet:ip-address;
+                    }
+                    leaf gateway {
+                        description "default gateway for dhcp allocation";
+                        type inet:ip-address;
+                    }
+                    leaf-list dns-servers {
+                        description "dns server list";
+                        type inet:ip-address;
+                    }
+                }
             }
-            uses dhcp:dhcp_allocations;
         }
     }
 }
+
+