Create db entry for manage Openflow controllers
[osm/openvim.git] / vim_schema.py
index 5bf555d..7da3a48 100644 (file)
@@ -118,6 +118,10 @@ config_schema = {
         "log_level_db": log_level_schema,
         "log_level_of": log_level_schema,
         "network_type": {"type": "string", "enum": ["ovs", "bridge"]},
+        "ovs_controller_file_path": path_schema,
+        "ovs_controller_user": nameshort_schema,
+
+        "ovs_controller_ip": nameshort_schema
     },
     "patternProperties": {
         "of_*" : {"type": ["string", "integer", "boolean"]}
@@ -143,8 +147,6 @@ metadata_schema={
     }
 }
 
-
-
 tenant_new_schema = {
     "title":"tenant creation information schema",
     "$schema": "http://json-schema.org/draft-04/schema#",
@@ -609,6 +611,7 @@ network_new_schema = {
     "required": ["network"],
     "additionalProperties": False
 }
+
 network_update_schema = {
     "title":"network update information schema",
     "$schema": "http://json-schema.org/draft-04/schema#",
@@ -626,8 +629,8 @@ network_update_schema = {
                 "provider:physical":net_bind_schema,
                 "cidr":cidr_schema,
                 "enable_dhcp": {"type":"boolean"},
-                "dhcp_first_ip": ip_schema,
-                "dhcp_last_ip": ip_schema,
+                "dhcp_first_ip": ip_schema,
+                "dhcp_last_ip": ip_schema,
                 "bind_net":name_schema, #can be name, or uuid
                 "bind_type":{"oneOf":[{"type":"null"},{"type":"string", "pattern":"^vlan:[0-9]{1,4}$"}]}
             },
@@ -711,3 +714,27 @@ hostinfo_schema = {
     },
     "required": ["iface_names"]
 }
+
+openflow_controller_schema = {
+    "title": "network creation information schema",
+    "$schema": "http://json-schema.org/draft-04/schema#",
+    "type": "object",
+    "properties": {
+        "ofc": {
+            "type": "object",
+            "properties": {
+                "name": name_schema,
+                "dpid": nameshort_schema,
+                "ip": nameshort_schema,
+                "port": port_schema,
+                "type": nameshort_schema,
+                "version": nametiny_schema,
+                "user": nameshort_schema,
+                "password": nameshort_schema
+            },
+            "required": ["dpid", "type", "ip", "port", "name"]
+        }
+    },
+    "required": ["ofc"],
+    "additionalProperties": False
+}
\ No newline at end of file