Implement database schema versioning.
[sliver-openvswitch.git] / vswitchd / vswitch.ovsschema
index db8f6eb..a1917ee 100644 (file)
@@ -1,4 +1,6 @@
 {"name": "Open_vSwitch",
+ "version": "1.0.0",
+ "cksum": "514853437 13985",
  "tables": {
    "Open_vSwitch": {
      "columns": {
                   "min": 0, "max": "unlimited"}},
        "statistics": {
          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
-         "ephemeral": true}},
+         "ephemeral": true},
+       "ovs_version": {
+         "type": {"key": {"type": "string"},
+                  "min": 0, "max": 1}},
+       "db_version": {
+         "type": {"key": {"type": "string"},
+                  "min": 0, "max": 1}},
+       "system_type": {
+         "type": {"key": {"type": "string"},
+                  "min": 0, "max": 1}},
+       "system_version": {
+         "type": {"key": {"type": "string"},
+                  "min": 0, "max": 1}}},
      "maxRows": 1},
    "Capability": {
      "columns": {
        "ofport": {
          "type": {"key": "integer", "min": 0, "max": 1},
          "ephemeral": true},
+       "monitor": {
+         "type": {
+           "key": {"type": "uuid", "refTable": "Monitor"},
+           "min": 0,
+           "max": 1}},
        "other_config": {
          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
        "statistics": {
        "status": {
          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
          "ephemeral": true}}},
+   "Monitor": {
+     "columns": {
+       "mpid": {
+         "type" : {
+           "key": { "type": "integer", "minInteger": 1, "maxInteger": 8191}}},
+       "md_name": {
+         "type" : {
+           "key": { "type": "string", "minLength": 1, "maxLength": 43},
+           "min": 0,
+           "max": 1}},
+       "ma_name": {
+         "type" : {
+           "key": { "type": "string", "minLength": 1, "maxLength": 43},
+           "min": 0,
+           "max": 1}},
+       "interval": {
+         "type": {
+           "key": { "type": "integer", "minInteger": 100},
+           "min": 0,
+           "max": 1}},
+       "remote_mps": {
+         "type": {
+           "key": { "type": "uuid", "refTable": "Maintenance_Point"},
+           "min": 0,
+           "max": "unlimited"},
+         "ephemeral": true},
+       "unexpected_remote_mpids": {
+         "type": {
+           "key": { "type": "integer"},
+           "min": 0,
+           "max": "unlimited"},
+         "ephemeral": true},
+       "unexpected_remote_maids": {
+         "type": {
+           "key": "string",
+           "min": 0,
+           "max": "unlimited"},
+         "ephemeral": true},
+       "fault": {
+         "type": {
+           "key": { "type": "boolean"},
+           "min": 0,
+           "max": 1},
+         "ephemeral": true}}},
+   "Maintenance_Point": {
+     "columns": {
+       "mpid": {
+         "type" : {
+           "key": { "type": "integer", "minInteger": 1, "maxInteger": 8191}},
+         "mutable": false},
+       "fault": {
+         "type": {
+           "key": { "type": "boolean"},
+           "min": 0,
+           "max": 1},
+         "ephemeral": true}}},
    "QoS": {
      "columns": {
        "type": {