ovn-northd: Pass logical port type and options to ovn-sb database.
[cascardo/ovs.git] / ovn / ovn-sb.ovsschema
1 {
2     "name": "OVN_Southbound",
3     "tables": {
4         "Chassis": {
5             "columns": {
6                 "name": {"type": "string"},
7                 "encaps": {"type": {"key": {"type": "uuid",
8                                             "refTable": "Encap"},
9                                     "min": 1, "max": "unlimited"}},
10                 "vtep_logical_switches" : {"type": {"key": "string",
11                                                     "min": 0,
12                                                     "max": "unlimited"}}},
13             "isRoot": true,
14             "indexes": [["name"]]},
15         "Encap": {
16             "columns": {
17                 "type": {"type": {"key": {
18                            "type": "string",
19                            "enum": ["set", ["geneve", "stt", "vxlan"]]}}},
20                 "options": {"type": {"key": "string",
21                                      "value": "string",
22                                      "min": 0,
23                                      "max": "unlimited"}},
24                 "ip": {"type": "string"}}},
25         "Logical_Flow": {
26             "columns": {
27                 "logical_datapath": {"type": {"key": {"type": "uuid",
28                                                       "refTable": "Datapath_Binding"}}},
29                 "pipeline": {"type": {"key": {"type": "string",
30                                       "enum": ["set", ["ingress",
31                                                        "egress"]]}}},
32                 "table_id": {"type": {"key": {"type": "integer",
33                                               "minInteger": 0,
34                                               "maxInteger": 15}}},
35                 "priority": {"type": {"key": {"type": "integer",
36                                               "minInteger": 0,
37                                               "maxInteger": 65535}}},
38                 "match": {"type": "string"},
39                 "actions": {"type": "string"}},
40             "isRoot": true},
41         "Multicast_Group": {
42             "columns": {
43                 "datapath": {"type": {"key": {"type": "uuid",
44                                               "refTable": "Datapath_Binding"}}},
45                 "name": {"type": "string"},
46                 "tunnel_key": {
47                     "type": {"key": {"type": "integer",
48                                      "minInteger": 32768,
49                                      "maxInteger": 65535}}},
50                 "ports": {"type": {"key": {"type": "uuid",
51                                            "refTable": "Port_Binding",
52                                            "refType": "weak"},
53                                    "min": 1, "max": "unlimited"}}},
54             "indexes": [["datapath", "tunnel_key"],
55                         ["datapath", "name"]],
56             "isRoot": true},
57         "Datapath_Binding": {
58             "columns": {
59                 "tunnel_key": {
60                      "type": {"key": {"type": "integer",
61                                       "minInteger": 1,
62                                       "maxInteger": 16777215}}},
63                 "external_ids": {
64                     "type": {"key": "string", "value": "string",
65                              "min": 0, "max": "unlimited"}}},
66             "indexes": [["tunnel_key"]],
67             "isRoot": true},
68         "Port_Binding": {
69             "columns": {
70                 "logical_port": {"type": "string"},
71                 "type": {"type": "string"},
72                 "options": {
73                      "type": {"key": "string",
74                               "value": "string",
75                               "min": 0,
76                               "max": "unlimited"}},
77                 "datapath": {"type": {"key": {"type": "uuid",
78                                               "refTable": "Datapath_Binding"}}},
79                 "tunnel_key": {
80                      "type": {"key": {"type": "integer",
81                                       "minInteger": 1,
82                                       "maxInteger": 32767}}},
83                 "parent_port": {"type": {"key": "string", "min": 0, "max": 1}},
84                 "tag": {
85                      "type": {"key": {"type": "integer",
86                                       "minInteger": 0,
87                                       "maxInteger": 4095},
88                               "min": 0, "max": 1}},
89                 "chassis": {"type": {"key": {"type": "uuid",
90                                              "refTable": "Chassis",
91                                              "refType": "weak"},
92                                      "min": 0, "max": 1}},
93                 "mac": {"type": {"key": "string",
94                                  "min": 0,
95                                  "max": "unlimited"}}},
96             "indexes": [["datapath", "tunnel_key"], ["logical_port"]],
97             "isRoot": true}},
98     "version": "1.0.0"}