460d5bdbfc9c6423d1d9da2d2e5f2ef9cd8cad40
[cascardo/ovs.git] / ovn / ovn-nb.ovsschema
1 {
2     "name": "OVN_Northbound",
3     "version": "5.0.0",
4     "cksum": "849073644 7576",
5     "tables": {
6         "Logical_Switch": {
7             "columns": {
8                 "name": {"type": "string"},
9                 "ports": {"type": {"key": {"type": "uuid",
10                                            "refTable": "Logical_Switch_Port",
11                                            "refType": "strong"},
12                                    "min": 0,
13                                    "max": "unlimited"}},
14                 "acls": {"type": {"key": {"type": "uuid",
15                                           "refTable": "ACL",
16                                           "refType": "strong"},
17                                   "min": 0,
18                                   "max": "unlimited"}},
19                 "load_balancer": {"type": {"key": {"type": "uuid",
20                                                   "refTable": "Load_Balancer",
21                                                   "refType": "strong"},
22                                            "min": 0,
23                                            "max": 1}},
24                 "external_ids": {
25                     "type": {"key": "string", "value": "string",
26                              "min": 0, "max": "unlimited"}}},
27             "isRoot": true},
28         "Logical_Switch_Port": {
29             "columns": {
30                 "name": {"type": "string"},
31                 "type": {"type": "string"},
32                 "options": {
33                      "type": {"key": "string",
34                               "value": "string",
35                               "min": 0,
36                               "max": "unlimited"}},
37                 "parent_name": {"type": {"key": "string", "min": 0, "max": 1}},
38                 "tag": {
39                      "type": {"key": {"type": "integer",
40                                       "minInteger": 1,
41                                       "maxInteger": 4095},
42                               "min": 0, "max": 1}},
43                 "addresses": {"type": {"key": "string",
44                                        "min": 0,
45                                        "max": "unlimited"}},
46                 "port_security": {"type": {"key": "string",
47                                            "min": 0,
48                                            "max": "unlimited"}},
49                 "up": {"type": {"key": "boolean", "min": 0, "max": 1}},
50                 "enabled": {"type": {"key": "boolean", "min": 0, "max": 1}},
51                 "external_ids": {
52                     "type": {"key": "string", "value": "string",
53                              "min": 0, "max": "unlimited"}}},
54             "indexes": [["name"]],
55             "isRoot": false},
56         "Address_Set": {
57             "columns": {
58                 "name": {"type": "string"},
59                 "addresses": {"type": {"key": "string",
60                                        "min": 0,
61                                        "max": "unlimited"}},
62                 "external_ids": {
63                     "type": {"key": "string", "value": "string",
64                              "min": 0, "max": "unlimited"}}},
65             "indexes": [["name"]],
66             "isRoot": true},
67         "Load_Balancer": {
68             "columns": {
69                 "vips": {
70                     "type": {"key": "string", "value": "string",
71                              "min": 0, "max": "unlimited"}},
72                 "protocol": {
73                     "type": {"key": {"type": "string",
74                              "enum": ["set", ["tcp", "udp"]]},
75                              "min": 0, "max": 1}},
76                 "external_ids": {
77                     "type": {"key": "string", "value": "string",
78                              "min": 0, "max": "unlimited"}}},
79             "isRoot": true},
80         "ACL": {
81             "columns": {
82                 "priority": {"type": {"key": {"type": "integer",
83                                               "minInteger": 0,
84                                               "maxInteger": 32767}}},
85                 "direction": {"type": {"key": {"type": "string",
86                                             "enum": ["set", ["from-lport", "to-lport"]]}}},
87                 "match": {"type": "string"},
88                 "action": {"type": {"key": {"type": "string",
89                                             "enum": ["set", ["allow", "allow-related", "drop", "reject"]]}}},
90                 "log": {"type": "boolean"},
91                 "external_ids": {
92                     "type": {"key": "string", "value": "string",
93                              "min": 0, "max": "unlimited"}}},
94             "isRoot": false},
95         "Logical_Router": {
96             "columns": {
97                 "name": {"type": "string"},
98                 "ports": {"type": {"key": {"type": "uuid",
99                                            "refTable": "Logical_Router_Port",
100                                            "refType": "strong"},
101                                    "min": 0,
102                                    "max": "unlimited"}},
103                 "static_routes": {"type": {"key": {"type": "uuid",
104                                             "refTable": "Logical_Router_Static_Route",
105                                             "refType": "strong"},
106                                    "min": 0,
107                                    "max": "unlimited"}},
108                 "enabled": {"type": {"key": "boolean", "min": 0, "max": 1}},
109                 "nat": {"type": {"key": {"type": "uuid",
110                                          "refTable": "NAT",
111                                          "refType": "strong"},
112                                  "min": 0,
113                                  "max": "unlimited"}},
114                 "options": {
115                      "type": {"key": "string",
116                               "value": "string",
117                               "min": 0,
118                               "max": "unlimited"}},
119                 "external_ids": {
120                     "type": {"key": "string", "value": "string",
121                              "min": 0, "max": "unlimited"}}},
122             "isRoot": true},
123         "Logical_Router_Port": {
124             "columns": {
125                 "name": {"type": "string"},
126                 "networks": {"type": {"key": "string",
127                                       "min": 1,
128                                       "max": "unlimited"}},
129                 "mac": {"type": "string"},
130                 "peer": {"type": {"key": "string", "min": 0, "max": 1}},
131                 "enabled": {"type": {"key": "boolean", "min": 0, "max": 1}},
132                 "external_ids": {
133                     "type": {"key": "string", "value": "string",
134                              "min": 0, "max": "unlimited"}}},
135             "indexes": [["name"]],
136             "isRoot": false},
137         "Logical_Router_Static_Route": {
138             "columns": {
139                 "ip_prefix": {"type": "string"},
140                 "nexthop": {"type": "string"},
141                 "output_port": {"type": {"key": "string", "min": 0, "max": 1}}},
142             "isRoot": false},
143         "NAT": {
144             "columns": {
145                 "external_ip": {"type": "string"},
146                 "logical_ip": {"type": "string"},
147                 "type": {"type": {"key": {"type": "string",
148                                            "enum": ["set", ["dnat",
149                                                              "snat",
150                                                              "dnat_and_snat"
151                                                                ]]}}}},
152             "isRoot": false}
153     }
154 }