blob: 60fb08deff895e81a71c0aad2d2d8a137015c9c5 [file] [log] [blame]
Andy Bavier03df22b2017-08-30 14:46:02 -07001option name = "volt";
Matteo Scandolobfc31332018-03-29 09:06:52 -07002option app_label = "volt";
Matteo Scandoloe2cb8a42018-05-18 16:30:06 -07003option legacy="True";
Andy Bavier03df22b2017-08-30 14:46:02 -07004
5message VOLTService (Service){
Matteo Scandolo43473812018-03-02 10:55:54 -08006 option verbose_name = "vOLT Service";
7 option kind = "vOLT";
Matteo Scandolo4a8b4d62018-03-06 17:18:46 -08008
Matteo Scandolod8b48752018-08-28 16:24:36 -07009 required string voltha_url = 1 [help_text = "The Voltha API address. By default voltha.voltha.svc.cluster.local", default = "voltha.voltha.svc.cluster.local", max_length = 254, db_index = False];
10 required int32 voltha_port = 2 [help_text = "The Voltha API port. By default 8882", default=8882, db_index = False];
11 required string voltha_user = 3 [help_text = "The Voltha username. By default voltha", default="voltha", max_length = 254, db_index = False];
12 required string voltha_pass = 4 [help_text = "The Voltha password. By default admin", default="admin", max_length = 254, db_index = False];
13 required string onos_voltha_url = 5 [help_text = "The ONOS Voltha address. By default onos-voltha-ui.voltha.svc.cluster.local", default="onos-voltha-ui.voltha.svc.cluster.local", max_length = 254, db_index = False];
14 required int32 onos_voltha_port = 6 [help_text = "The Voltha API port. By default 8181", default=8181, db_index = False];
15 required string onos_voltha_user = 7 [help_text = "The ONOS Voltha username. By default sdn", max_length = 254, default="onos", db_index = False];
16 required string onos_voltha_pass = 8 [help_text = "The ONOS Voltha password. By default rocks", max_length = 254, default="rocks", db_index = False];
Andy Bavier03df22b2017-08-30 14:46:02 -070017}
18
Matteo Scandolo4a8b4d62018-03-06 17:18:46 -080019message OLTDevice (XOSBase){
20 option verbose_name = "OLT Device";
21 option description="Represents a physical OLT device";
Andy Bavier03df22b2017-08-30 14:46:02 -070022
Scott Baker77eac1d2018-10-26 17:32:04 -070023 required manytoone volt_service->VOLTService:volt_devices = 1:1001 [db_index = True];
Matteo Scandolod8b48752018-08-28 16:24:36 -070024 optional string name = 2 [help_text = "name of device", max_length = 254, db_index = False, unique = True];
25 required string device_type = 3 [help_text = "Device Type", default = "openolt", max_length = 254, db_index = False];
26 optional string host = 4 [help_text = "Device IP", max_length = 254, db_index = False];
27 optional int32 port = 5 [help_text = "Device port", db_index = False];
28 optional string mac_address = 6 [help_text = "Device mac address", db_index = False];
Matteo Scandolo4a8b4d62018-03-06 17:18:46 -080029
Matteo Scandolof140ded2018-10-17 15:37:15 -070030 optional string serial_number = 9 [help_text = "Serial Number", db_index = False];
Matteo Scandolod8b48752018-08-28 16:24:36 -070031 optional string device_id = 10 [help_text = "Device ID", db_index = False, feedback_state = True];
32 optional string admin_state = 11 [help_text = "admin_state", db_index = False, feedback_state = True];
33 optional string oper_status = 12 [help_text = "oper_status", db_index = False, feedback_state = True];
34 optional string of_id = 13 [help_text = "openflow id", db_index = False, feedback_state = True];
35 optional string dp_id = 14 [help_text = "datapath id", db_index = False];
Matteo Scandolo4a8b4d62018-03-06 17:18:46 -080036
Matteo Scandolod8b48752018-08-28 16:24:36 -070037 required string uplink = 15 [help_text = "uplink port", db_index = False];
38 required string driver = 16 [default="voltha", help_text = "Olt driver", db_index = False];
Matteo Scandolod3c768d2018-04-11 13:38:49 -070039
Matteo Scandolod8b48752018-08-28 16:24:36 -070040 optional string switch_datapath_id = 17 [help_text = "Fabric switch to which the OLT is connected", db_index = False];
41 optional string switch_port = 18 [help_text = "Fabric port to which the OLT is connected", db_index = False];
42 optional string outer_tpid = 19 [help_text = "Outer VLAN id field EtherType", db_index = False];
Matteo Scandolo610c11d2018-08-31 07:33:43 -070043
44 optional string nas_id = 20 [help_text = "Authentication ID (propagated to the free-radius server via sadis)", db_index = False];
Andy Bavier03df22b2017-08-30 14:46:02 -070045}
46
Matteo Scandolo6be6ee92018-05-24 15:07:51 -070047message PortBase (XOSBase){
48 option gui_hidden = True;
49
Matteo Scandolod8b48752018-08-28 16:24:36 -070050 required string name = 1 [db_index = True];
51 required int32 port_no = 3 [help_text = "Port ID", db_index = False];
Matteo Scandolo6be6ee92018-05-24 15:07:51 -070052
Matteo Scandolod8b48752018-08-28 16:24:36 -070053 optional string admin_state = 4 [help_text = "admin_state", db_index = False, feedback_state = True];
54 optional string oper_status = 5 [help_text = "oper_status", db_index = False, feedback_state = True];
Matteo Scandolo6be6ee92018-05-24 15:07:51 -070055}
56
57message PONPort (PortBase){
Matteo Scandolo80912942018-07-25 20:51:30 -070058 option verbose_name = "PON Port";
59 option description="PON Port";
Matteo Scandolo4a8b4d62018-03-06 17:18:46 -080060
Scott Baker77eac1d2018-10-26 17:32:04 -070061 required manytoone olt_device->OLTDevice:pon_ports = 1:1001 [db_index = True];
Matteo Scandolo6be6ee92018-05-24 15:07:51 -070062}
63
64message NNIPort (PortBase) {
65 option verbose_name = "NNI Port";
Scott Baker77eac1d2018-10-26 17:32:04 -070066 required manytoone olt_device->OLTDevice:nni_ports = 1:1002 [db_index = True];
Andy Bavier03df22b2017-08-30 14:46:02 -070067}
Matteo Scandoloe2cb8a42018-05-18 16:30:06 -070068
69message ONUDevice (XOSBase){
70 option verbose_name = "ONU Device";
71 option description = "Represents a physical ONU device";
72
Scott Baker77eac1d2018-10-26 17:32:04 -070073 required manytoone pon_port->PONPort:onu_devices = 1:1001 [db_index = True];
Matteo Scandolod8b48752018-08-28 16:24:36 -070074 required string serial_number = 2 [max_length = 254, db_index = False, tosca_key=True, unique = True];
75 required string vendor = 3 [max_length = 254, db_index = False];
76 required string device_type = 4 [help_text = "Device Type", default = "asfvolt16_olt", max_length = 254, db_index = False];
Matteo Scandoloe2cb8a42018-05-18 16:30:06 -070077
Matteo Scandolod8b48752018-08-28 16:24:36 -070078 optional string device_id = 5 [max_length = 254, db_index = False, feedback_state = True];
79 optional string admin_state = 6 [choices = "(('DISABLED', 'DISABLED'), ('ENABLED', 'ENABLED'))", default="ENABLED", help_text = "admin_state", db_index = False];
80 optional string oper_status = 7 [help_text = "oper_status", db_index = False, feedback_state = True];
81 optional string connect_status = 8 [help_text = "connect_status", db_index = False, feedback_state = True];
Matteo Scandolo2360fd92018-05-29 17:27:51 -070082}
83
Matteo Scandolod8ed60e2018-06-18 17:00:57 -070084message PONONUPort (PortBase) {
Matteo Scandolo80912942018-07-25 20:51:30 -070085 option verbose_name = "ANI Port";
86 option description="ANI Port";
Scott Baker77eac1d2018-10-26 17:32:04 -070087 required manytoone onu_device->ONUDevice:pononu_ports = 1:1001 [db_index = True];
Matteo Scandolod8ed60e2018-06-18 17:00:57 -070088}
89
90message UNIPort (PortBase) {
91 option verbose_name = "UNI Port";
Scott Baker77eac1d2018-10-26 17:32:04 -070092 required manytoone onu_device->ONUDevice:uni_ports = 1:1002 [db_index = True];
Matteo Scandolod8ed60e2018-06-18 17:00:57 -070093}
94
Matteo Scandolo2360fd92018-05-29 17:27:51 -070095message VOLTServiceInstance (ServiceInstance){
96 option kind = "vOLT";
97 option owner_class_name = "VOLTService";
98 option verbose_name = "vOLT Service Instance";
99
Matteo Scandolod8b48752018-08-28 16:24:36 -0700100 optional string description = 1 [max_length = 254, db_index = False];
Scott Baker77eac1d2018-10-26 17:32:04 -0700101 optional manytoone onu_device->ONUDevice:volt_service_instances = 2:1003 [db_index = True];
Scott Baker6ff7a4a2018-10-01 12:19:49 -0700102}