constants.py 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512
  1. # Rack types
  2. RACK_TYPE_2POST = 100
  3. RACK_TYPE_4POST = 200
  4. RACK_TYPE_CABINET = 300
  5. RACK_TYPE_WALLFRAME = 1000
  6. RACK_TYPE_WALLCABINET = 1100
  7. RACK_TYPE_CHOICES = (
  8. (RACK_TYPE_2POST, '2-post frame'),
  9. (RACK_TYPE_4POST, '4-post frame'),
  10. (RACK_TYPE_CABINET, '4-post cabinet'),
  11. (RACK_TYPE_WALLFRAME, 'Wall-mounted frame'),
  12. (RACK_TYPE_WALLCABINET, 'Wall-mounted cabinet'),
  13. )
  14. # Rack widths
  15. RACK_WIDTH_19IN = 19
  16. RACK_WIDTH_23IN = 23
  17. RACK_WIDTH_CHOICES = (
  18. (RACK_WIDTH_19IN, '19 inches'),
  19. (RACK_WIDTH_23IN, '23 inches'),
  20. )
  21. # Rack faces
  22. RACK_FACE_FRONT = 0
  23. RACK_FACE_REAR = 1
  24. RACK_FACE_CHOICES = [
  25. [RACK_FACE_FRONT, 'Front'],
  26. [RACK_FACE_REAR, 'Rear'],
  27. ]
  28. # Rack statuses
  29. RACK_STATUS_RESERVED = 0
  30. RACK_STATUS_AVAILABLE = 1
  31. RACK_STATUS_PLANNED = 2
  32. RACK_STATUS_ACTIVE = 3
  33. RACK_STATUS_DEPRECATED = 4
  34. RACK_STATUS_CHOICES = [
  35. [RACK_STATUS_ACTIVE, 'Active'],
  36. [RACK_STATUS_PLANNED, 'Planned'],
  37. [RACK_STATUS_RESERVED, 'Reserved'],
  38. [RACK_STATUS_AVAILABLE, 'Available'],
  39. [RACK_STATUS_DEPRECATED, 'Deprecated'],
  40. ]
  41. # Device rack position
  42. DEVICE_POSITION_CHOICES = [
  43. # Rack.u_height is limited to 100
  44. (i, 'Unit {}'.format(i)) for i in range(1, 101)
  45. ]
  46. # Parent/child device roles
  47. SUBDEVICE_ROLE_PARENT = True
  48. SUBDEVICE_ROLE_CHILD = False
  49. SUBDEVICE_ROLE_CHOICES = (
  50. (None, 'None'),
  51. (SUBDEVICE_ROLE_PARENT, 'Parent'),
  52. (SUBDEVICE_ROLE_CHILD, 'Child'),
  53. )
  54. # Interface types
  55. # Virtual
  56. IFACE_TYPE_VIRTUAL = 0
  57. IFACE_TYPE_LAG = 200
  58. # Ethernet
  59. IFACE_TYPE_100ME_FIXED = 800
  60. IFACE_TYPE_1GE_FIXED = 1000
  61. IFACE_TYPE_1GE_GBIC = 1050
  62. IFACE_TYPE_1GE_SFP = 1100
  63. IFACE_TYPE_2GE_FIXED = 1120
  64. IFACE_TYPE_5GE_FIXED = 1130
  65. IFACE_TYPE_10GE_FIXED = 1150
  66. IFACE_TYPE_10GE_CX4 = 1170
  67. IFACE_TYPE_10GE_SFP_PLUS = 1200
  68. IFACE_TYPE_10GE_XFP = 1300
  69. IFACE_TYPE_10GE_XENPAK = 1310
  70. IFACE_TYPE_10GE_X2 = 1320
  71. IFACE_TYPE_25GE_SFP28 = 1350
  72. IFACE_TYPE_40GE_QSFP_PLUS = 1400
  73. IFACE_TYPE_50GE_QSFP28 = 1420
  74. IFACE_TYPE_100GE_CFP = 1500
  75. IFACE_TYPE_100GE_CFP2 = 1510
  76. IFACE_TYPE_100GE_CFP4 = 1520
  77. IFACE_TYPE_100GE_CPAK = 1550
  78. IFACE_TYPE_100GE_QSFP28 = 1600
  79. IFACE_TYPE_200GE_CFP2 = 1650
  80. IFACE_TYPE_200GE_QSFP56 = 1700
  81. IFACE_TYPE_400GE_QSFP_DD = 1750
  82. # Wireless
  83. IFACE_TYPE_80211A = 2600
  84. IFACE_TYPE_80211G = 2610
  85. IFACE_TYPE_80211N = 2620
  86. IFACE_TYPE_80211AC = 2630
  87. IFACE_TYPE_80211AD = 2640
  88. # Cellular
  89. IFACE_TYPE_GSM = 2810
  90. IFACE_TYPE_CDMA = 2820
  91. IFACE_TYPE_LTE = 2830
  92. # SONET
  93. IFACE_TYPE_SONET_OC3 = 6100
  94. IFACE_TYPE_SONET_OC12 = 6200
  95. IFACE_TYPE_SONET_OC48 = 6300
  96. IFACE_TYPE_SONET_OC192 = 6400
  97. IFACE_TYPE_SONET_OC768 = 6500
  98. IFACE_TYPE_SONET_OC1920 = 6600
  99. IFACE_TYPE_SONET_OC3840 = 6700
  100. # Fibrechannel
  101. IFACE_TYPE_1GFC_SFP = 3010
  102. IFACE_TYPE_2GFC_SFP = 3020
  103. IFACE_TYPE_4GFC_SFP = 3040
  104. IFACE_TYPE_8GFC_SFP_PLUS = 3080
  105. IFACE_TYPE_16GFC_SFP_PLUS = 3160
  106. IFACE_TYPE_32GFC_SFP28 = 3320
  107. IFACE_TYPE_128GFC_QSFP28 = 3400
  108. # InfiniBand
  109. IFACE_FF_INFINIBAND_SDR = 7010
  110. IFACE_FF_INFINIBAND_DDR = 7020
  111. IFACE_FF_INFINIBAND_QDR = 7030
  112. IFACE_FF_INFINIBAND_FDR10 = 7040
  113. IFACE_FF_INFINIBAND_FDR = 7050
  114. IFACE_FF_INFINIBAND_EDR = 7060
  115. IFACE_FF_INFINIBAND_HDR = 7070
  116. IFACE_FF_INFINIBAND_NDR = 7080
  117. IFACE_FF_INFINIBAND_XDR = 7090
  118. # Serial
  119. IFACE_TYPE_T1 = 4000
  120. IFACE_TYPE_E1 = 4010
  121. IFACE_TYPE_T3 = 4040
  122. IFACE_TYPE_E3 = 4050
  123. # Stacking
  124. IFACE_TYPE_STACKWISE = 5000
  125. IFACE_TYPE_STACKWISE_PLUS = 5050
  126. IFACE_TYPE_FLEXSTACK = 5100
  127. IFACE_TYPE_FLEXSTACK_PLUS = 5150
  128. IFACE_TYPE_JUNIPER_VCP = 5200
  129. IFACE_TYPE_SUMMITSTACK = 5300
  130. IFACE_TYPE_SUMMITSTACK128 = 5310
  131. IFACE_TYPE_SUMMITSTACK256 = 5320
  132. IFACE_TYPE_SUMMITSTACK512 = 5330
  133. # Other
  134. IFACE_TYPE_OTHER = 32767
  135. IFACE_TYPE_CHOICES = [
  136. [
  137. 'Virtual interfaces',
  138. [
  139. [IFACE_TYPE_VIRTUAL, 'Virtual'],
  140. [IFACE_TYPE_LAG, 'Link Aggregation Group (LAG)'],
  141. ],
  142. ],
  143. [
  144. 'Ethernet (fixed)',
  145. [
  146. [IFACE_TYPE_100ME_FIXED, '100BASE-TX (10/100ME)'],
  147. [IFACE_TYPE_1GE_FIXED, '1000BASE-T (1GE)'],
  148. [IFACE_TYPE_2GE_FIXED, '2.5GBASE-T (2.5GE)'],
  149. [IFACE_TYPE_5GE_FIXED, '5GBASE-T (5GE)'],
  150. [IFACE_TYPE_10GE_FIXED, '10GBASE-T (10GE)'],
  151. [IFACE_TYPE_10GE_CX4, '10GBASE-CX4 (10GE)'],
  152. ]
  153. ],
  154. [
  155. 'Ethernet (modular)',
  156. [
  157. [IFACE_TYPE_1GE_GBIC, 'GBIC (1GE)'],
  158. [IFACE_TYPE_1GE_SFP, 'SFP (1GE)'],
  159. [IFACE_TYPE_10GE_SFP_PLUS, 'SFP+ (10GE)'],
  160. [IFACE_TYPE_10GE_XFP, 'XFP (10GE)'],
  161. [IFACE_TYPE_10GE_XENPAK, 'XENPAK (10GE)'],
  162. [IFACE_TYPE_10GE_X2, 'X2 (10GE)'],
  163. [IFACE_TYPE_25GE_SFP28, 'SFP28 (25GE)'],
  164. [IFACE_TYPE_40GE_QSFP_PLUS, 'QSFP+ (40GE)'],
  165. [IFACE_TYPE_50GE_QSFP28, 'QSFP28 (50GE)'],
  166. [IFACE_TYPE_100GE_CFP, 'CFP (100GE)'],
  167. [IFACE_TYPE_100GE_CFP2, 'CFP2 (100GE)'],
  168. [IFACE_TYPE_200GE_CFP2, 'CFP2 (200GE)'],
  169. [IFACE_TYPE_100GE_CFP4, 'CFP4 (100GE)'],
  170. [IFACE_TYPE_100GE_CPAK, 'Cisco CPAK (100GE)'],
  171. [IFACE_TYPE_100GE_QSFP28, 'QSFP28 (100GE)'],
  172. [IFACE_TYPE_200GE_QSFP56, 'QSFP56 (200GE)'],
  173. [IFACE_TYPE_400GE_QSFP_DD, 'QSFP-DD (400GE)'],
  174. ]
  175. ],
  176. [
  177. 'Wireless',
  178. [
  179. [IFACE_TYPE_80211A, 'IEEE 802.11a'],
  180. [IFACE_TYPE_80211G, 'IEEE 802.11b/g'],
  181. [IFACE_TYPE_80211N, 'IEEE 802.11n'],
  182. [IFACE_TYPE_80211AC, 'IEEE 802.11ac'],
  183. [IFACE_TYPE_80211AD, 'IEEE 802.11ad'],
  184. ]
  185. ],
  186. [
  187. 'Cellular',
  188. [
  189. [IFACE_TYPE_GSM, 'GSM'],
  190. [IFACE_TYPE_CDMA, 'CDMA'],
  191. [IFACE_TYPE_LTE, 'LTE'],
  192. ]
  193. ],
  194. [
  195. 'SONET',
  196. [
  197. [IFACE_TYPE_SONET_OC3, 'OC-3/STM-1'],
  198. [IFACE_TYPE_SONET_OC12, 'OC-12/STM-4'],
  199. [IFACE_TYPE_SONET_OC48, 'OC-48/STM-16'],
  200. [IFACE_TYPE_SONET_OC192, 'OC-192/STM-64'],
  201. [IFACE_TYPE_SONET_OC768, 'OC-768/STM-256'],
  202. [IFACE_TYPE_SONET_OC1920, 'OC-1920/STM-640'],
  203. [IFACE_TYPE_SONET_OC3840, 'OC-3840/STM-1234'],
  204. ]
  205. ],
  206. [
  207. 'FibreChannel',
  208. [
  209. [IFACE_TYPE_1GFC_SFP, 'SFP (1GFC)'],
  210. [IFACE_TYPE_2GFC_SFP, 'SFP (2GFC)'],
  211. [IFACE_TYPE_4GFC_SFP, 'SFP (4GFC)'],
  212. [IFACE_TYPE_8GFC_SFP_PLUS, 'SFP+ (8GFC)'],
  213. [IFACE_TYPE_16GFC_SFP_PLUS, 'SFP+ (16GFC)'],
  214. [IFACE_TYPE_32GFC_SFP28, 'SFP28 (32GFC)'],
  215. [IFACE_TYPE_128GFC_QSFP28, 'QSFP28 (128GFC)'],
  216. ]
  217. ],
  218. [
  219. 'InfiniBand',
  220. [
  221. [IFACE_FF_INFINIBAND_SDR, 'SDR (2 Gbps)'],
  222. [IFACE_FF_INFINIBAND_DDR, 'DDR (4 Gbps)'],
  223. [IFACE_FF_INFINIBAND_QDR, 'QDR (8 Gbps)'],
  224. [IFACE_FF_INFINIBAND_FDR10, 'FDR10 (10 Gbps)'],
  225. [IFACE_FF_INFINIBAND_FDR, 'FDR (13.5 Gbps)'],
  226. [IFACE_FF_INFINIBAND_EDR, 'EDR (25 Gbps)'],
  227. [IFACE_FF_INFINIBAND_HDR, 'HDR (50 Gbps)'],
  228. [IFACE_FF_INFINIBAND_NDR, 'NDR (100 Gbps)'],
  229. [IFACE_FF_INFINIBAND_XDR, 'XDR (250 Gbps)'],
  230. ]
  231. ],
  232. [
  233. 'Serial',
  234. [
  235. [IFACE_TYPE_T1, 'T1 (1.544 Mbps)'],
  236. [IFACE_TYPE_E1, 'E1 (2.048 Mbps)'],
  237. [IFACE_TYPE_T3, 'T3 (45 Mbps)'],
  238. [IFACE_TYPE_E3, 'E3 (34 Mbps)'],
  239. ]
  240. ],
  241. [
  242. 'Stacking',
  243. [
  244. [IFACE_TYPE_STACKWISE, 'Cisco StackWise'],
  245. [IFACE_TYPE_STACKWISE_PLUS, 'Cisco StackWise Plus'],
  246. [IFACE_TYPE_FLEXSTACK, 'Cisco FlexStack'],
  247. [IFACE_TYPE_FLEXSTACK_PLUS, 'Cisco FlexStack Plus'],
  248. [IFACE_TYPE_JUNIPER_VCP, 'Juniper VCP'],
  249. [IFACE_TYPE_SUMMITSTACK, 'Extreme SummitStack'],
  250. [IFACE_TYPE_SUMMITSTACK128, 'Extreme SummitStack-128'],
  251. [IFACE_TYPE_SUMMITSTACK256, 'Extreme SummitStack-256'],
  252. [IFACE_TYPE_SUMMITSTACK512, 'Extreme SummitStack-512'],
  253. ]
  254. ],
  255. [
  256. 'Other',
  257. [
  258. [IFACE_TYPE_OTHER, 'Other'],
  259. ]
  260. ],
  261. ]
  262. VIRTUAL_IFACE_TYPES = [
  263. IFACE_TYPE_VIRTUAL,
  264. IFACE_TYPE_LAG,
  265. ]
  266. WIRELESS_IFACE_TYPES = [
  267. IFACE_TYPE_80211A,
  268. IFACE_TYPE_80211G,
  269. IFACE_TYPE_80211N,
  270. IFACE_TYPE_80211AC,
  271. IFACE_TYPE_80211AD,
  272. ]
  273. NONCONNECTABLE_IFACE_TYPES = VIRTUAL_IFACE_TYPES + WIRELESS_IFACE_TYPES
  274. IFACE_MODE_ACCESS = 100
  275. IFACE_MODE_TAGGED = 200
  276. IFACE_MODE_TAGGED_ALL = 300
  277. IFACE_MODE_CHOICES = [
  278. [IFACE_MODE_ACCESS, 'Access'],
  279. [IFACE_MODE_TAGGED, 'Tagged'],
  280. [IFACE_MODE_TAGGED_ALL, 'Tagged All'],
  281. ]
  282. # Pass-through port types
  283. PORT_TYPE_8P8C = 1000
  284. PORT_TYPE_110_PUNCH = 1100
  285. PORT_TYPE_BNC = 1200
  286. PORT_TYPE_ST = 2000
  287. PORT_TYPE_SC = 2100
  288. PORT_TYPE_SC_APC = 2110
  289. PORT_TYPE_FC = 2200
  290. PORT_TYPE_LC = 2300
  291. PORT_TYPE_LC_APC = 2310
  292. PORT_TYPE_MTRJ = 2400
  293. PORT_TYPE_MPO = 2500
  294. PORT_TYPE_LSH = 2600
  295. PORT_TYPE_LSH_APC = 2610
  296. PORT_TYPE_CHOICES = [
  297. [
  298. 'Copper',
  299. [
  300. [PORT_TYPE_8P8C, '8P8C'],
  301. [PORT_TYPE_110_PUNCH, '110 Punch'],
  302. [PORT_TYPE_BNC, 'BNC'],
  303. ],
  304. ],
  305. [
  306. 'Fiber Optic',
  307. [
  308. [PORT_TYPE_FC, 'FC'],
  309. [PORT_TYPE_LC, 'LC'],
  310. [PORT_TYPE_LC_APC, 'LC/APC'],
  311. [PORT_TYPE_LSH, 'LSH'],
  312. [PORT_TYPE_LSH_APC, 'LSH/APC'],
  313. [PORT_TYPE_MPO, 'MPO'],
  314. [PORT_TYPE_MTRJ, 'MTRJ'],
  315. [PORT_TYPE_SC, 'SC'],
  316. [PORT_TYPE_SC_APC, 'SC/APC'],
  317. [PORT_TYPE_ST, 'ST'],
  318. ]
  319. ]
  320. ]
  321. # Device statuses
  322. DEVICE_STATUS_OFFLINE = 0
  323. DEVICE_STATUS_ACTIVE = 1
  324. DEVICE_STATUS_PLANNED = 2
  325. DEVICE_STATUS_STAGED = 3
  326. DEVICE_STATUS_FAILED = 4
  327. DEVICE_STATUS_INVENTORY = 5
  328. DEVICE_STATUS_DECOMMISSIONING = 6
  329. DEVICE_STATUS_CHOICES = [
  330. [DEVICE_STATUS_ACTIVE, 'Active'],
  331. [DEVICE_STATUS_OFFLINE, 'Offline'],
  332. [DEVICE_STATUS_PLANNED, 'Planned'],
  333. [DEVICE_STATUS_STAGED, 'Staged'],
  334. [DEVICE_STATUS_FAILED, 'Failed'],
  335. [DEVICE_STATUS_INVENTORY, 'Inventory'],
  336. [DEVICE_STATUS_DECOMMISSIONING, 'Decommissioning'],
  337. ]
  338. # Site statuses
  339. SITE_STATUS_ACTIVE = 1
  340. SITE_STATUS_PLANNED = 2
  341. SITE_STATUS_RETIRED = 4
  342. SITE_STATUS_CHOICES = [
  343. [SITE_STATUS_ACTIVE, 'Active'],
  344. [SITE_STATUS_PLANNED, 'Planned'],
  345. [SITE_STATUS_RETIRED, 'Retired'],
  346. ]
  347. # Bootstrap CSS classes for device/rack statuses
  348. STATUS_CLASSES = {
  349. 0: 'warning',
  350. 1: 'success',
  351. 2: 'info',
  352. 3: 'primary',
  353. 4: 'danger',
  354. 5: 'default',
  355. 6: 'warning',
  356. }
  357. # Console/power/interface connection statuses
  358. CONNECTION_STATUS_PLANNED = False
  359. CONNECTION_STATUS_CONNECTED = True
  360. CONNECTION_STATUS_CHOICES = [
  361. [CONNECTION_STATUS_PLANNED, 'Planned'],
  362. [CONNECTION_STATUS_CONNECTED, 'Connected'],
  363. ]
  364. # Cable endpoint types
  365. CABLE_TERMINATION_TYPES = [
  366. 'consoleport', 'consoleserverport', 'interface', 'poweroutlet', 'powerport', 'frontport', 'rearport', 'circuittermination',
  367. ]
  368. # Cable types
  369. CABLE_TYPE_CAT3 = 1300
  370. CABLE_TYPE_CAT5 = 1500
  371. CABLE_TYPE_CAT5E = 1510
  372. CABLE_TYPE_CAT6 = 1600
  373. CABLE_TYPE_CAT6A = 1610
  374. CABLE_TYPE_CAT7 = 1700
  375. CABLE_TYPE_DAC_ACTIVE = 1800
  376. CABLE_TYPE_DAC_PASSIVE = 1810
  377. CABLE_TYPE_COAXIAL = 1900
  378. CABLE_TYPE_MMF = 3000
  379. CABLE_TYPE_MMF_OM1 = 3010
  380. CABLE_TYPE_MMF_OM2 = 3020
  381. CABLE_TYPE_MMF_OM3 = 3030
  382. CABLE_TYPE_MMF_OM4 = 3040
  383. CABLE_TYPE_SMF = 3500
  384. CABLE_TYPE_SMF_OS1 = 3510
  385. CABLE_TYPE_SMF_OS2 = 3520
  386. CABLE_TYPE_AOC = 3800
  387. CABLE_TYPE_POWER = 5000
  388. CABLE_TYPE_CHOICES = (
  389. (
  390. 'Copper', (
  391. (CABLE_TYPE_CAT3, 'CAT3'),
  392. (CABLE_TYPE_CAT5, 'CAT5'),
  393. (CABLE_TYPE_CAT5E, 'CAT5e'),
  394. (CABLE_TYPE_CAT6, 'CAT6'),
  395. (CABLE_TYPE_CAT6A, 'CAT6a'),
  396. (CABLE_TYPE_CAT7, 'CAT7'),
  397. (CABLE_TYPE_DAC_ACTIVE, 'Direct Attach Copper (Active)'),
  398. (CABLE_TYPE_DAC_PASSIVE, 'Direct Attach Copper (Passive)'),
  399. (CABLE_TYPE_COAXIAL, 'Coaxial'),
  400. ),
  401. ),
  402. (
  403. 'Fiber', (
  404. (CABLE_TYPE_MMF, 'Multimode Fiber'),
  405. (CABLE_TYPE_MMF_OM1, 'Multimode Fiber (OM1)'),
  406. (CABLE_TYPE_MMF_OM2, 'Multimode Fiber (OM2)'),
  407. (CABLE_TYPE_MMF_OM3, 'Multimode Fiber (OM3)'),
  408. (CABLE_TYPE_MMF_OM4, 'Multimode Fiber (OM4)'),
  409. (CABLE_TYPE_SMF, 'Singlemode Fiber'),
  410. (CABLE_TYPE_SMF_OS1, 'Singlemode Fiber (OS1)'),
  411. (CABLE_TYPE_SMF_OS2, 'Singlemode Fiber (OS2)'),
  412. (CABLE_TYPE_AOC, 'Active Optical Cabling (AOC)'),
  413. ),
  414. ),
  415. (CABLE_TYPE_POWER, 'Power'),
  416. )
  417. CABLE_TERMINATION_TYPE_CHOICES = {
  418. # (API endpoint, human-friendly name)
  419. 'consoleport': ('console-ports', 'Console port'),
  420. 'consoleserverport': ('console-server-ports', 'Console server port'),
  421. 'powerport': ('power-ports', 'Power port'),
  422. 'poweroutlet': ('power-outlets', 'Power outlet'),
  423. 'interface': ('interfaces', 'Interface'),
  424. 'frontport': ('front-ports', 'Front panel port'),
  425. 'rearport': ('rear-ports', 'Rear panel port'),
  426. }
  427. COMPATIBLE_TERMINATION_TYPES = {
  428. 'consoleport': ['consoleserverport', 'frontport', 'rearport'],
  429. 'consoleserverport': ['consoleport', 'frontport', 'rearport'],
  430. 'powerport': ['poweroutlet', 'powerfeed'],
  431. 'poweroutlet': ['powerport'],
  432. 'interface': ['interface', 'circuittermination', 'frontport', 'rearport'],
  433. 'frontport': ['consoleport', 'consoleserverport', 'interface', 'frontport', 'rearport', 'circuittermination'],
  434. 'rearport': ['consoleport', 'consoleserverport', 'interface', 'frontport', 'rearport', 'circuittermination'],
  435. 'circuittermination': ['interface', 'frontport', 'rearport'],
  436. }
  437. LENGTH_UNIT_METER = 1200
  438. LENGTH_UNIT_CENTIMETER = 1100
  439. LENGTH_UNIT_MILLIMETER = 1000
  440. LENGTH_UNIT_FOOT = 2100
  441. LENGTH_UNIT_INCH = 2000
  442. CABLE_LENGTH_UNIT_CHOICES = (
  443. (LENGTH_UNIT_METER, 'Meters'),
  444. (LENGTH_UNIT_CENTIMETER, 'Centimeters'),
  445. (LENGTH_UNIT_FOOT, 'Feet'),
  446. (LENGTH_UNIT_INCH, 'Inches'),
  447. )
  448. RACK_DIMENSION_UNIT_CHOICES = (
  449. (LENGTH_UNIT_MILLIMETER, 'Millimeters'),
  450. (LENGTH_UNIT_INCH, 'Inches'),
  451. )
  452. # Power feeds
  453. POWERFEED_TYPE_PRIMARY = 1
  454. POWERFEED_TYPE_REDUNDANT = 2
  455. POWERFEED_TYPE_CHOICES = (
  456. (POWERFEED_TYPE_PRIMARY, 'Primary'),
  457. (POWERFEED_TYPE_REDUNDANT, 'Redundant'),
  458. )
  459. POWERFEED_SUPPLY_AC = 1
  460. POWERFEED_SUPPLY_DC = 2
  461. POWERFEED_SUPPLY_CHOICES = (
  462. (POWERFEED_SUPPLY_AC, 'AC'),
  463. (POWERFEED_SUPPLY_DC, 'DC'),
  464. )
  465. POWERFEED_PHASE_SINGLE = 1
  466. POWERFEED_PHASE_3PHASE = 3
  467. POWERFEED_PHASE_CHOICES = (
  468. (POWERFEED_PHASE_SINGLE, 'Single phase'),
  469. (POWERFEED_PHASE_3PHASE, 'Three-phase'),
  470. )
  471. POWERFEED_STATUS_OFFLINE = 0
  472. POWERFEED_STATUS_ACTIVE = 1
  473. POWERFEED_STATUS_PLANNED = 2
  474. POWERFEED_STATUS_FAILED = 4
  475. POWERFEED_STATUS_CHOICES = (
  476. (POWERFEED_STATUS_ACTIVE, 'Active'),
  477. (POWERFEED_STATUS_OFFLINE, 'Offline'),
  478. (POWERFEED_STATUS_PLANNED, 'Planned'),
  479. (POWERFEED_STATUS_FAILED, 'Failed'),
  480. )
  481. POWERFEED_LEG_A = 1
  482. POWERFEED_LEG_B = 2
  483. POWERFEED_LEG_C = 3
  484. POWERFEED_LEG_CHOICES = (
  485. (POWERFEED_LEG_A, 'A'),
  486. (POWERFEED_LEG_B, 'B'),
  487. (POWERFEED_LEG_C, 'C'),
  488. )