constants.py 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. # Models which support custom fields
  2. CUSTOMFIELD_MODELS = (
  3. 'provider', 'circuit', # Circuits
  4. 'site', 'rack', 'devicetype', 'device', # DCIM
  5. 'aggregate', 'prefix', 'ipaddress', 'vlan', 'vrf', 'service', # IPAM
  6. 'secret', # Secrets
  7. 'tenant', # Tenancy
  8. 'cluster', 'virtualmachine', # Virtualization
  9. )
  10. # Custom field types
  11. CF_TYPE_TEXT = 100
  12. CF_TYPE_INTEGER = 200
  13. CF_TYPE_BOOLEAN = 300
  14. CF_TYPE_DATE = 400
  15. CF_TYPE_URL = 500
  16. CF_TYPE_SELECT = 600
  17. CUSTOMFIELD_TYPE_CHOICES = (
  18. (CF_TYPE_TEXT, 'Text'),
  19. (CF_TYPE_INTEGER, 'Integer'),
  20. (CF_TYPE_BOOLEAN, 'Boolean (true/false)'),
  21. (CF_TYPE_DATE, 'Date'),
  22. (CF_TYPE_URL, 'URL'),
  23. (CF_TYPE_SELECT, 'Selection'),
  24. )
  25. # Custom field filter logic choices
  26. CF_FILTER_DISABLED = 0
  27. CF_FILTER_LOOSE = 1
  28. CF_FILTER_EXACT = 2
  29. CF_FILTER_CHOICES = (
  30. (CF_FILTER_DISABLED, 'Disabled'),
  31. (CF_FILTER_LOOSE, 'Loose'),
  32. (CF_FILTER_EXACT, 'Exact'),
  33. )
  34. # Graph types
  35. GRAPH_TYPE_INTERFACE = 100
  36. GRAPH_TYPE_PROVIDER = 200
  37. GRAPH_TYPE_SITE = 300
  38. GRAPH_TYPE_CHOICES = (
  39. (GRAPH_TYPE_INTERFACE, 'Interface'),
  40. (GRAPH_TYPE_PROVIDER, 'Provider'),
  41. (GRAPH_TYPE_SITE, 'Site'),
  42. )
  43. # Models which support export templates
  44. EXPORTTEMPLATE_MODELS = [
  45. 'provider', 'circuit', # Circuits
  46. 'site', 'region', 'rack', 'rackgroup', 'manufacturer', 'devicetype', 'device', # DCIM
  47. 'consoleport', 'powerport', 'interface', 'cable', 'virtualchassis', # DCIM
  48. 'aggregate', 'prefix', 'ipaddress', 'vlan', 'vrf', 'service', # IPAM
  49. 'secret', # Secrets
  50. 'tenant', # Tenancy
  51. 'cluster', 'virtualmachine', # Virtualization
  52. ]
  53. # ExportTemplate language choices
  54. TEMPLATE_LANGUAGE_DJANGO = 10
  55. TEMPLATE_LANGUAGE_JINJA2 = 20
  56. TEMPLATE_LANGUAGE_CHOICES = (
  57. (TEMPLATE_LANGUAGE_DJANGO, 'Django'),
  58. (TEMPLATE_LANGUAGE_JINJA2, 'Jinja2'),
  59. )
  60. # Topology map types
  61. TOPOLOGYMAP_TYPE_NETWORK = 1
  62. TOPOLOGYMAP_TYPE_CONSOLE = 2
  63. TOPOLOGYMAP_TYPE_POWER = 3
  64. TOPOLOGYMAP_TYPE_CHOICES = (
  65. (TOPOLOGYMAP_TYPE_NETWORK, 'Network'),
  66. (TOPOLOGYMAP_TYPE_CONSOLE, 'Console'),
  67. (TOPOLOGYMAP_TYPE_POWER, 'Power'),
  68. )
  69. # Change log actions
  70. OBJECTCHANGE_ACTION_CREATE = 1
  71. OBJECTCHANGE_ACTION_UPDATE = 2
  72. OBJECTCHANGE_ACTION_DELETE = 3
  73. OBJECTCHANGE_ACTION_CHOICES = (
  74. (OBJECTCHANGE_ACTION_CREATE, 'Created'),
  75. (OBJECTCHANGE_ACTION_UPDATE, 'Updated'),
  76. (OBJECTCHANGE_ACTION_DELETE, 'Deleted'),
  77. )
  78. # User action types
  79. ACTION_CREATE = 1
  80. ACTION_IMPORT = 2
  81. ACTION_EDIT = 3
  82. ACTION_BULK_EDIT = 4
  83. ACTION_DELETE = 5
  84. ACTION_BULK_DELETE = 6
  85. ACTION_BULK_CREATE = 7
  86. ACTION_CHOICES = (
  87. (ACTION_CREATE, 'created'),
  88. (ACTION_BULK_CREATE, 'bulk created'),
  89. (ACTION_IMPORT, 'imported'),
  90. (ACTION_EDIT, 'modified'),
  91. (ACTION_BULK_EDIT, 'bulk edited'),
  92. (ACTION_DELETE, 'deleted'),
  93. (ACTION_BULK_DELETE, 'bulk deleted'),
  94. )
  95. # Report logging levels
  96. LOG_DEFAULT = 0
  97. LOG_SUCCESS = 10
  98. LOG_INFO = 20
  99. LOG_WARNING = 30
  100. LOG_FAILURE = 40
  101. LOG_LEVEL_CODES = {
  102. LOG_DEFAULT: 'default',
  103. LOG_SUCCESS: 'success',
  104. LOG_INFO: 'info',
  105. LOG_WARNING: 'warning',
  106. LOG_FAILURE: 'failure',
  107. }
  108. # webhook content types
  109. WEBHOOK_CT_JSON = 1
  110. WEBHOOK_CT_X_WWW_FORM_ENCODED = 2
  111. WEBHOOK_CT_CHOICES = (
  112. (WEBHOOK_CT_JSON, 'application/json'),
  113. (WEBHOOK_CT_X_WWW_FORM_ENCODED, 'application/x-www-form-urlencoded'),
  114. )
  115. # Models which support registered webhooks
  116. WEBHOOK_MODELS = (
  117. 'provider', 'circuit', # Circuits
  118. 'site', 'rack', 'devicetype', 'device', 'virtualchassis', # DCIM
  119. 'consoleport', 'consoleserverport', 'powerport', 'poweroutlet',
  120. 'interface', 'devicebay', 'inventoryitem',
  121. 'aggregate', 'prefix', 'ipaddress', 'vlan', 'vrf', 'service', # IPAM
  122. 'secret', # Secrets
  123. 'tenant', # Tenancy
  124. 'cluster', 'virtualmachine', # Virtualization
  125. )