nautobot 2.0.0a2__py3-none-any.whl → 2.0.0b1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1029) hide show
  1. nautobot/__init__.py +1 -5
  2. nautobot/apps/api.py +6 -8
  3. nautobot/apps/forms.py +0 -2
  4. nautobot/apps/ui.py +0 -8
  5. nautobot/circuits/api/serializers.py +9 -119
  6. nautobot/circuits/api/urls.py +1 -1
  7. nautobot/circuits/api/views.py +0 -1
  8. nautobot/circuits/choices.py +0 -2
  9. nautobot/circuits/filters.py +7 -6
  10. nautobot/circuits/forms.py +3 -73
  11. nautobot/circuits/migrations/0001_initial_part_1.py +0 -1
  12. nautobot/circuits/migrations/0002_initial_part_2.py +0 -1
  13. nautobot/circuits/migrations/0003_auto_slug.py +0 -1
  14. nautobot/circuits/migrations/0004_increase_provider_account_length.py +0 -1
  15. nautobot/circuits/migrations/0005_providernetwork.py +0 -1
  16. nautobot/circuits/migrations/0006_cache_circuit_terminations.py +0 -1
  17. nautobot/circuits/migrations/0007_circuitterminations_primary_model.py +0 -1
  18. nautobot/circuits/migrations/0008_add_natural_indexing.py +0 -1
  19. nautobot/circuits/migrations/0009_circuittermination_location.py +0 -1
  20. nautobot/circuits/migrations/0010_rename_foreign_keys_and_related_names.py +0 -1
  21. nautobot/circuits/migrations/0011_remove_site_foreign_key_from_circuit_termination_class.py +0 -1
  22. nautobot/circuits/migrations/0012_created_datetime.py +0 -1
  23. nautobot/circuits/migrations/0013_alter_circuittermination__path.py +0 -1
  24. nautobot/circuits/migrations/0014_related_name_changes.py +1 -2
  25. nautobot/circuits/migrations/0015_remove_circuittype_provider_slug.py +20 -0
  26. nautobot/circuits/migrations/0016_tagsfield.py +34 -0
  27. nautobot/circuits/migrations/0017_fixup_null_statuses.py +22 -0
  28. nautobot/circuits/migrations/0018_status_nonnullable.py +22 -0
  29. nautobot/circuits/models.py +3 -93
  30. nautobot/circuits/navigation.py +14 -69
  31. nautobot/circuits/signals.py +0 -2
  32. nautobot/circuits/tables.py +42 -5
  33. nautobot/circuits/templates/circuits/circuit_retrieve.html +1 -1
  34. nautobot/circuits/templates/circuits/circuittermination_retrieve.html +1 -1
  35. nautobot/circuits/templates/circuits/circuittype_retrieve.html +1 -1
  36. nautobot/circuits/templates/circuits/provider_create.html +0 -1
  37. nautobot/circuits/templates/circuits/provider_retrieve.html +1 -1
  38. nautobot/circuits/tests/integration/test_relationships.py +13 -16
  39. nautobot/circuits/tests/test_api.py +13 -43
  40. nautobot/circuits/tests/test_filters.py +20 -15
  41. nautobot/circuits/tests/test_models.py +7 -3
  42. nautobot/circuits/tests/test_views.py +57 -67
  43. nautobot/circuits/views.py +18 -9
  44. nautobot/core/api/__init__.py +8 -2
  45. nautobot/core/api/authentication.py +0 -3
  46. nautobot/core/api/fields.py +15 -6
  47. nautobot/core/api/filter_backends.py +3 -2
  48. nautobot/core/api/metadata.py +237 -30
  49. nautobot/core/api/mixins.py +94 -0
  50. nautobot/core/api/pagination.py +3 -3
  51. nautobot/core/api/parsers.py +154 -0
  52. nautobot/core/api/renderers.py +153 -2
  53. nautobot/core/api/schema.py +47 -3
  54. nautobot/core/api/serializers.py +377 -37
  55. nautobot/core/api/urls.py +11 -3
  56. nautobot/core/api/utils.py +174 -2
  57. nautobot/core/api/versioning.py +32 -10
  58. nautobot/core/api/views.py +266 -75
  59. nautobot/core/apps/__init__.py +138 -221
  60. nautobot/core/celery/__init__.py +112 -41
  61. nautobot/core/celery/backends.py +19 -13
  62. nautobot/core/celery/control.py +46 -0
  63. nautobot/core/celery/encoders.py +53 -0
  64. nautobot/core/celery/log.py +38 -0
  65. nautobot/core/celery/schedulers.py +23 -4
  66. nautobot/core/celery/task.py +1 -16
  67. nautobot/core/checks.py +0 -27
  68. nautobot/core/choices.py +21 -113
  69. nautobot/core/{cli.py → cli/__init__.py} +1 -2
  70. nautobot/core/cli/__main__.py +3 -0
  71. nautobot/core/constants.py +25 -43
  72. nautobot/core/context_processors.py +12 -0
  73. nautobot/core/filters.py +2 -2
  74. nautobot/core/forms/__init__.py +0 -4
  75. nautobot/core/forms/fields.py +39 -68
  76. nautobot/core/forms/forms.py +27 -27
  77. nautobot/core/forms/utils.py +7 -59
  78. nautobot/core/forms/widgets.py +0 -1
  79. nautobot/core/graphql/__init__.py +2 -2
  80. nautobot/core/graphql/schema.py +4 -27
  81. nautobot/core/jobs/__init__.py +75 -0
  82. nautobot/core/management/commands/build_ui.py +255 -0
  83. nautobot/core/management/commands/celery.py +0 -1
  84. nautobot/core/management/commands/generate_test_data.py +18 -13
  85. nautobot/core/management/commands/post_upgrade.py +24 -24
  86. nautobot/core/management/commands/validate_models.py +0 -1
  87. nautobot/core/middleware.py +0 -1
  88. nautobot/core/models/__init__.py +26 -1
  89. nautobot/core/models/fields.py +24 -5
  90. nautobot/core/models/generics.py +2 -46
  91. nautobot/core/models/managers.py +5 -0
  92. nautobot/core/models/name_color_content_types.py +1 -19
  93. nautobot/core/models/tree_queries.py +14 -4
  94. nautobot/core/models/utils.py +9 -10
  95. nautobot/core/models/validators.py +17 -8
  96. nautobot/core/releases.py +8 -10
  97. nautobot/core/settings.py +81 -53
  98. nautobot/core/tables.py +5 -5
  99. nautobot/core/tasks.py +4 -7
  100. nautobot/core/templates/base.html +1 -49
  101. nautobot/core/templates/base_django.html +49 -0
  102. nautobot/core/templates/base_react.html +55 -0
  103. nautobot/core/templates/buttons/export.html +6 -4
  104. nautobot/core/templates/generic/object_bulk_create.html +10 -21
  105. nautobot/core/templates/generic/object_list.html +4 -1
  106. nautobot/core/templates/generic/object_retrieve_plugin_full_width.html +3 -0
  107. nautobot/core/templates/inc/footer.html +1 -0
  108. nautobot/core/templates/inc/javascript.html +0 -14
  109. nautobot/core/templates/inc/nav_menu.html +28 -33
  110. nautobot/core/templates/inc/object_details_advanced_panel.html +13 -0
  111. nautobot/core/templates/inc/relationships_table_rows.html +2 -2
  112. nautobot/core/templates/nautobot_config.py.j2 +8 -25
  113. nautobot/core/templates/plugin_template/__init__.py-tpl +1 -2
  114. nautobot/core/templates/rest_framework/api.html +8 -0
  115. nautobot/core/templatetags/buttons.py +32 -29
  116. nautobot/core/templatetags/helpers.py +1 -1
  117. nautobot/core/testing/__init__.py +47 -44
  118. nautobot/core/testing/api.py +365 -47
  119. nautobot/core/testing/filters.py +12 -7
  120. nautobot/core/testing/integration.py +1 -1
  121. nautobot/core/testing/migrations.py +2 -0
  122. nautobot/core/testing/mixins.py +22 -12
  123. nautobot/core/testing/schema.py +2 -1
  124. nautobot/core/testing/views.py +28 -51
  125. nautobot/core/tests/integration/test_filters.py +17 -8
  126. nautobot/core/tests/integration/test_navbar.py +11 -34
  127. nautobot/core/tests/integration/test_plugin_navbar.py +9 -103
  128. nautobot/core/tests/nautobot_config.py +2 -3
  129. nautobot/core/tests/runner.py +0 -1
  130. nautobot/core/tests/test_api.py +290 -24
  131. nautobot/core/tests/test_authentication.py +57 -14
  132. nautobot/core/tests/test_checks.py +0 -7
  133. nautobot/core/tests/test_choices.py +0 -1
  134. nautobot/core/tests/test_filters.py +117 -110
  135. nautobot/core/tests/test_forms.py +47 -110
  136. nautobot/core/tests/test_graphql.py +158 -135
  137. nautobot/core/tests/test_logging.py +4 -1
  138. nautobot/core/tests/test_managers.py +3 -5
  139. nautobot/core/tests/test_models.py +2 -0
  140. nautobot/core/tests/test_ordering.py +0 -2
  141. nautobot/core/tests/test_paginator.py +3 -1
  142. nautobot/core/tests/test_releases.py +12 -12
  143. nautobot/core/tests/test_templatetags_helpers.py +7 -4
  144. nautobot/core/tests/test_utils.py +112 -78
  145. nautobot/core/tests/test_views.py +12 -17
  146. nautobot/core/tests/test_views_utils.py +6 -9
  147. nautobot/core/utils/data.py +17 -0
  148. nautobot/core/utils/deprecation.py +13 -20
  149. nautobot/core/utils/filtering.py +53 -9
  150. nautobot/core/utils/git.py +12 -4
  151. nautobot/core/utils/lookup.py +3 -1
  152. nautobot/core/utils/requests.py +23 -116
  153. nautobot/core/views/__init__.py +1 -2
  154. nautobot/core/views/generic.py +131 -119
  155. nautobot/core/views/mixins.py +53 -62
  156. nautobot/core/views/paginator.py +0 -1
  157. nautobot/core/views/renderers.py +14 -12
  158. nautobot/core/views/utils.py +87 -4
  159. nautobot/dcim/api/serializers.py +160 -672
  160. nautobot/dcim/api/urls.py +1 -1
  161. nautobot/dcim/api/views.py +7 -46
  162. nautobot/dcim/choices.py +2 -25
  163. nautobot/dcim/elevations.py +0 -1
  164. nautobot/dcim/factory.py +15 -4
  165. nautobot/dcim/filters/__init__.py +42 -13
  166. nautobot/dcim/form_mixins.py +1 -27
  167. nautobot/dcim/forms.py +58 -797
  168. nautobot/dcim/management/commands/trace_paths.py +0 -1
  169. nautobot/dcim/migrations/0001_initial_part_1.py +0 -1
  170. nautobot/dcim/migrations/0002_initial_part_2.py +0 -1
  171. nautobot/dcim/migrations/0003_initial_part_3.py +0 -1
  172. nautobot/dcim/migrations/0004_initial_part_4.py +0 -1
  173. nautobot/dcim/migrations/0005_device_local_context_schema.py +0 -1
  174. nautobot/dcim/migrations/0006_auto_slug.py +0 -1
  175. nautobot/dcim/migrations/0007_device_secrets_group.py +0 -1
  176. nautobot/dcim/migrations/0008_increase_all_serial_lengths.py +0 -1
  177. nautobot/dcim/migrations/0009_add_natural_indexing.py +0 -1
  178. nautobot/dcim/migrations/0010_interface_status.py +0 -1
  179. nautobot/dcim/migrations/0011_interface_status_data_migration.py +0 -1
  180. nautobot/dcim/migrations/0012_interface_parent_bridge.py +0 -1
  181. nautobot/dcim/migrations/0013_location_location_type.py +0 -1
  182. nautobot/dcim/migrations/0014_location_status_data_migration.py +0 -1
  183. nautobot/dcim/migrations/0015_device_components__changeloggedmodel.py +0 -1
  184. nautobot/dcim/migrations/0016_device_components__timestamp_data_migration.py +0 -1
  185. nautobot/dcim/migrations/0017_locationtype_nestable.py +0 -1
  186. nautobot/dcim/migrations/0018_device_redundancy_group.py +0 -1
  187. nautobot/dcim/migrations/0019_device_redundancy_group_data_migration.py +0 -1
  188. nautobot/dcim/migrations/0020_move_site_fields_to_location_model.py +0 -1
  189. nautobot/dcim/migrations/0021_mptt_to_tree_queries.py +0 -1
  190. nautobot/dcim/migrations/0022_interface_mac_address_data_migration.py +0 -1
  191. nautobot/dcim/migrations/0023_alter_interface_mac_address.py +0 -1
  192. nautobot/dcim/migrations/0024_alter_device_and_rack_role_add_new_role.py +2 -2
  193. nautobot/dcim/migrations/0025_device_and_rack_roles_data_migrations.py +19 -14
  194. nautobot/dcim/migrations/0026_rename_device_and_rack_role.py +0 -1
  195. nautobot/dcim/migrations/0027_remove_device_role_and_rack_role.py +1 -2
  196. nautobot/dcim/migrations/0028_rename_foreignkey_fields.py +1 -2
  197. nautobot/dcim/migrations/0029_add_tree_managers_and_foreign_keys_pre_data_migration.py +0 -1
  198. nautobot/dcim/migrations/0030_migrate_region_and_site_data_to_locations.py +2 -2
  199. nautobot/dcim/migrations/0031_rename_path_end_point_related_name.py +0 -1
  200. nautobot/dcim/migrations/0032_remove_site_foreign_key_from_dcim_models.py +0 -1
  201. nautobot/dcim/migrations/0033_created_datetime.py +0 -1
  202. nautobot/dcim/migrations/0034_fixup_fks_and_related_names.py +0 -1
  203. nautobot/dcim/migrations/0035_related_name_changes.py +1 -2
  204. nautobot/dcim/migrations/0036_remove_region_and_site.py +1 -2
  205. nautobot/dcim/migrations/0037_interface_ip_addresses_m2m.py +0 -1
  206. nautobot/dcim/migrations/0038_alter_location_managers.py +0 -1
  207. nautobot/dcim/migrations/0039_remove_slug.py +24 -0
  208. nautobot/dcim/migrations/0040_tagsfield.py +109 -0
  209. nautobot/dcim/migrations/0041_ipam__namespaces.py +25 -0
  210. nautobot/dcim/migrations/0042_fixup_null_statuses.py +51 -0
  211. nautobot/dcim/migrations/0043_status_nonnullable.py +72 -0
  212. nautobot/dcim/models/cables.py +4 -35
  213. nautobot/dcim/models/device_component_templates.py +7 -2
  214. nautobot/dcim/models/device_components.py +26 -203
  215. nautobot/dcim/models/devices.py +30 -152
  216. nautobot/dcim/models/locations.py +3 -64
  217. nautobot/dcim/models/power.py +3 -51
  218. nautobot/dcim/models/racks.py +7 -86
  219. nautobot/dcim/navigation.py +141 -467
  220. nautobot/dcim/signals.py +0 -2
  221. nautobot/dcim/tables/devices.py +8 -5
  222. nautobot/dcim/tables/devicetypes.py +1 -1
  223. nautobot/dcim/tables/locations.py +2 -2
  224. nautobot/dcim/tables/power.py +2 -2
  225. nautobot/dcim/templates/dcim/console_port_connection_list.html +7 -0
  226. nautobot/dcim/templates/dcim/device.html +15 -4
  227. nautobot/dcim/templates/dcim/device_edit.html +6 -0
  228. nautobot/dcim/templates/dcim/deviceredundancygroup_create.html +0 -1
  229. nautobot/dcim/templates/dcim/devicetype.html +2 -2
  230. nautobot/dcim/templates/dcim/interface.html +4 -0
  231. nautobot/dcim/templates/dcim/interface_connection_list.html +7 -0
  232. nautobot/dcim/templates/dcim/interface_edit.html +1 -0
  233. nautobot/dcim/templates/dcim/location.html +16 -1
  234. nautobot/dcim/templates/dcim/locationtype.html +15 -0
  235. nautobot/dcim/templates/dcim/power_port_connection_list.html +7 -0
  236. nautobot/dcim/templates/dcim/rackgroup.html +0 -12
  237. nautobot/dcim/tests/integration/test_cable_connect_form.py +4 -4
  238. nautobot/dcim/tests/test_api.py +202 -130
  239. nautobot/dcim/tests/test_cablepaths.py +47 -42
  240. nautobot/dcim/tests/test_filters.py +156 -134
  241. nautobot/dcim/tests/test_forms.py +12 -213
  242. nautobot/dcim/tests/test_graphql.py +8 -3
  243. nautobot/dcim/tests/test_migrations.py +6 -11
  244. nautobot/dcim/tests/test_models.py +208 -158
  245. nautobot/dcim/tests/test_natural_ordering.py +12 -14
  246. nautobot/dcim/tests/test_signals.py +7 -4
  247. nautobot/dcim/tests/test_views.py +270 -264
  248. nautobot/dcim/urls.py +21 -26
  249. nautobot/dcim/views.py +14 -156
  250. nautobot/docs/additional-features/caching.md +6 -87
  251. nautobot/docs/additional-features/job-scheduling-and-approvals.md +3 -0
  252. nautobot/docs/additional-features/jobs.md +179 -197
  253. nautobot/docs/administration/nautobot-server.md +9 -24
  254. nautobot/docs/administration/nautobot-shell.md +6 -6
  255. nautobot/docs/administration/replicating-nautobot.md +0 -10
  256. nautobot/docs/configuration/index.md +9 -9
  257. nautobot/docs/configuration/optional-settings.md +32 -61
  258. nautobot/docs/configuration/required-settings.md +11 -52
  259. nautobot/docs/development/application-registry.md +2 -13
  260. nautobot/docs/development/best-practices.md +2 -1
  261. nautobot/docs/development/docker-compose-advanced-use-cases.md +1 -1
  262. nautobot/docs/development/extending-models.md +15 -17
  263. nautobot/docs/development/generic-views.md +0 -2
  264. nautobot/docs/development/getting-started.md +56 -6
  265. nautobot/docs/development/navigation-menu.md +22 -93
  266. nautobot/docs/development/react-ui.md +105 -0
  267. nautobot/docs/development/release-checklist.md +3 -3
  268. nautobot/docs/development/role-internals.md +1 -3
  269. nautobot/docs/development/style-guide.md +6 -4
  270. nautobot/docs/development/templates.md +2 -1
  271. nautobot/docs/docker/index.md +16 -14
  272. nautobot/docs/index.md +7 -3
  273. nautobot/docs/installation/index.md +4 -1
  274. nautobot/docs/installation/migrating-from-netbox.md +12 -43
  275. nautobot/docs/installation/migrating-from-postgresql.md +1 -1
  276. nautobot/docs/installation/nautobot.md +1 -1
  277. nautobot/docs/installation/tables/v2-api-behavior-changes.yaml +70 -0
  278. nautobot/docs/installation/tables/v2-api-removed-fields.yaml +142 -0
  279. nautobot/docs/installation/tables/v2-api-renamed-fields.yaml +124 -0
  280. nautobot/docs/installation/tables/v2-code-location-changes.yaml +241 -0
  281. nautobot/docs/installation/tables/v2-code-removals.yaml +67 -0
  282. nautobot/docs/installation/tables/v2-database-behavior-changes.yaml +37 -0
  283. nautobot/docs/installation/tables/v2-database-removed-fields.yaml +166 -0
  284. nautobot/docs/installation/tables/v2-database-renamed-fields.yaml +340 -0
  285. nautobot/docs/installation/tables/v2-filters-corrected-fields.yaml +28 -0
  286. nautobot/docs/installation/tables/v2-filters-enhanced-fields.yaml +241 -0
  287. nautobot/docs/installation/tables/v2-filters-removed-fields.yaml +553 -0
  288. nautobot/docs/installation/tables/v2-filters-renamed-fields.yaml +223 -0
  289. nautobot/docs/installation/tables/v2-logging-renamed-loggers.yaml +23 -0
  290. nautobot/docs/installation/upgrading-from-nautobot-v1.md +190 -636
  291. nautobot/docs/installation/upgrading.md +5 -2
  292. nautobot/docs/models/dcim/device.md +3 -0
  293. nautobot/docs/models/dcim/deviceredundancygroup.md +3 -3
  294. nautobot/docs/models/extras/computedfield.md +4 -4
  295. nautobot/docs/models/extras/dynamicgroup.md +9 -9
  296. nautobot/docs/models/extras/gitrepository.md +3 -0
  297. nautobot/docs/models/extras/job.md +1 -0
  298. nautobot/docs/models/extras/jobbutton.md +18 -13
  299. nautobot/docs/models/extras/jobhook.md +7 -4
  300. nautobot/docs/models/extras/jobresult.md +6 -2
  301. nautobot/docs/models/extras/relationship.md +2 -2
  302. nautobot/docs/models/extras/status.md +6 -19
  303. nautobot/docs/models/ipam/ipaddress.md +3 -0
  304. nautobot/docs/models/ipam/vrf.md +0 -3
  305. nautobot/docs/models/virtualization/virtualmachine.md +3 -0
  306. nautobot/docs/plugins/development.md +92 -24
  307. nautobot/docs/release-notes/version-1.5.md +96 -0
  308. nautobot/docs/release-notes/version-2.0.md +216 -0
  309. nautobot/docs/requirements.txt +5 -4
  310. nautobot/docs/rest-api/overview.md +384 -215
  311. nautobot/docs/rest-api/ui-related-endpoints.md +9 -0
  312. nautobot/extras/admin.py +3 -5
  313. nautobot/extras/api/customfields.py +15 -39
  314. nautobot/extras/api/fields.py +0 -11
  315. nautobot/extras/api/mixins.py +45 -0
  316. nautobot/extras/api/relationships.py +63 -159
  317. nautobot/extras/api/serializers.py +165 -706
  318. nautobot/extras/api/urls.py +1 -1
  319. nautobot/extras/api/views.py +295 -282
  320. nautobot/extras/apps.py +4 -7
  321. nautobot/extras/choices.py +11 -22
  322. nautobot/extras/constants.py +9 -3
  323. nautobot/extras/datasources/__init__.py +2 -0
  324. nautobot/extras/datasources/git.py +135 -186
  325. nautobot/extras/datasources/registry.py +25 -35
  326. nautobot/extras/factory.py +1 -3
  327. nautobot/extras/filters/__init__.py +49 -47
  328. nautobot/extras/filters/mixins.py +10 -8
  329. nautobot/extras/forms/forms.py +72 -148
  330. nautobot/extras/forms/mixins.py +34 -57
  331. nautobot/extras/health_checks.py +0 -33
  332. nautobot/extras/jobs.py +387 -566
  333. nautobot/extras/management/__init__.py +55 -48
  334. nautobot/extras/management/commands/renaturalize.py +0 -1
  335. nautobot/extras/management/commands/runjob.py +24 -62
  336. nautobot/extras/management/commands/webhook_receiver.py +0 -1
  337. nautobot/extras/managers.py +30 -7
  338. nautobot/extras/migrations/0001_initial_part_1.py +0 -1
  339. nautobot/extras/migrations/0002_initial_part_2.py +0 -1
  340. nautobot/extras/migrations/0003_initial_part_3.py +0 -1
  341. nautobot/extras/migrations/0004_populate_default_status_records.py +0 -1
  342. nautobot/extras/migrations/0005_configcontext_device_types.py +0 -1
  343. nautobot/extras/migrations/0006_graphqlquery.py +0 -1
  344. nautobot/extras/migrations/0007_configcontextschema.py +0 -1
  345. nautobot/extras/migrations/0008_jobresult__custom_field_data.py +0 -1
  346. nautobot/extras/migrations/0009_computedfield.py +0 -1
  347. nautobot/extras/migrations/0010_change_cf_validation_max_min_field_to_bigint.py +0 -1
  348. nautobot/extras/migrations/0011_fileattachment_fileproxy.py +0 -1
  349. nautobot/extras/migrations/0012_healthchecktestmodel.py +0 -1
  350. nautobot/extras/migrations/0013_default_fallback_value_computedfield.py +0 -1
  351. nautobot/extras/migrations/0014_auto_slug.py +0 -1
  352. nautobot/extras/migrations/0015_scheduled_job.py +0 -1
  353. nautobot/extras/migrations/0016_secret.py +0 -1
  354. nautobot/extras/migrations/0017_joblogentry.py +0 -1
  355. nautobot/extras/migrations/0018_joblog_data_migration.py +0 -2
  356. nautobot/extras/migrations/0019_joblogentry__meta_options__related_name.py +0 -1
  357. nautobot/extras/migrations/0020_customfield_changelog.py +0 -1
  358. nautobot/extras/migrations/0021_customfield_changelog_data.py +0 -1
  359. nautobot/extras/migrations/0022_objectchange_object_datav2.py +0 -1
  360. nautobot/extras/migrations/0023_job_model.py +0 -1
  361. nautobot/extras/migrations/0024_job_data_migration.py +0 -1
  362. nautobot/extras/migrations/0025_add_advanced_ui_boolean_to_customfield_conputedfield_and_relationship.py +0 -1
  363. nautobot/extras/migrations/0026_job_add_gitrepository_fk.py +0 -1
  364. nautobot/extras/migrations/0027_job_gitrepository_data_migration.py +0 -1
  365. nautobot/extras/migrations/0028_job_reduce_source.py +0 -1
  366. nautobot/extras/migrations/0029_dynamicgroup.py +0 -1
  367. nautobot/extras/migrations/0030_webhook_alter_unique_together.py +0 -1
  368. nautobot/extras/migrations/0031_tag_content_types.py +0 -1
  369. nautobot/extras/migrations/0032_tag_content_types_data_migration.py +0 -1
  370. nautobot/extras/migrations/0033_add__optimized_indexing.py +0 -1
  371. nautobot/extras/migrations/0034_alter_fileattachment_mimetype.py +0 -1
  372. nautobot/extras/migrations/0035_scheduledjob_crontab.py +0 -1
  373. nautobot/extras/migrations/0036_job_add_has_sensitive_variables.py +0 -1
  374. nautobot/extras/migrations/0037_configcontextschema__remove_name_unique__create_constraint_unique_name_owner.py +0 -1
  375. nautobot/extras/migrations/0038_configcontext_locations.py +0 -1
  376. nautobot/extras/migrations/0039_objectchange__add_change_context.py +0 -1
  377. nautobot/extras/migrations/0040_dynamicgroup__dynamicgroupmembership.py +0 -1
  378. nautobot/extras/migrations/0041_jobresult_job_kwargs.py +0 -1
  379. nautobot/extras/migrations/0042_job__add_is_job_hook_receiver.py +0 -1
  380. nautobot/extras/migrations/0043_note.py +0 -1
  381. nautobot/extras/migrations/0044_add_job_hook.py +0 -1
  382. nautobot/extras/migrations/0045_add_custom_field_slug.py +0 -1
  383. nautobot/extras/migrations/0046_populate_custom_field_slug_label.py +0 -1
  384. nautobot/extras/migrations/0047_enforce_custom_field_slug.py +0 -1
  385. nautobot/extras/migrations/0048_alter_objectchange_change_context_detail.py +0 -1
  386. nautobot/extras/migrations/0049_alter_tag_slug.py +0 -1
  387. nautobot/extras/migrations/0050_customfield_grouping.py +0 -1
  388. nautobot/extras/migrations/0051_add_job_task_queues.py +0 -1
  389. nautobot/extras/migrations/0052_configcontext_device_redundancy_groups.py +0 -1
  390. nautobot/extras/migrations/0053_relationship_required_on.py +0 -1
  391. nautobot/extras/migrations/0054_scheduledjob_kwargs_request_user_change.py +0 -1
  392. nautobot/extras/migrations/0055_configcontext_dynamic_groups.py +0 -1
  393. nautobot/extras/migrations/0056_objectchange_add_reverse_time_idx.py +0 -1
  394. nautobot/extras/migrations/0057_jobbutton.py +0 -1
  395. nautobot/extras/migrations/0058_jobresult_add_time_status_idxs.py +38 -0
  396. nautobot/extras/migrations/{0058_joblogentry_scheduledjob_webhook_data_migration.py → 0059_joblogentry_scheduledjob_webhook_data_migration.py} +1 -2
  397. nautobot/extras/migrations/{0059_alter_joblogentry_scheduledjob_webhook_fields.py → 0060_alter_joblogentry_scheduledjob_webhook_fields.py} +1 -2
  398. nautobot/extras/migrations/{0060_role_and_alter_status.py → 0061_role_and_alter_status.py} +1 -8
  399. nautobot/extras/migrations/{0061_collect_roles_from_related_apps_roles.py → 0062_collect_roles_from_related_apps_roles.py} +33 -33
  400. nautobot/extras/migrations/{0062_alter_role_options.py → 0063_alter_role_options.py} +1 -2
  401. nautobot/extras/migrations/{0063_alter_configcontext_and_add_new_role.py → 0064_alter_configcontext_and_add_new_role.py} +1 -2
  402. nautobot/extras/migrations/0065_configcontext_data_migrations.py +44 -0
  403. nautobot/extras/migrations/{0065_rename_configcontext_role.py → 0066_rename_configcontext_role.py} +1 -2
  404. nautobot/extras/migrations/{0066_jobresult__add_celery_fields.py → 0067_jobresult__add_celery_fields.py} +36 -3
  405. nautobot/extras/migrations/{0067_created_datetime.py → 0068_created_datetime.py} +1 -2
  406. nautobot/extras/migrations/{0068_remove_site_and_region_attributes_from_config_context.py → 0069_remove_site_and_region_attributes_from_config_context.py} +1 -2
  407. nautobot/extras/migrations/{0069_replace_related_names.py → 0070_replace_related_names.py} +1 -1
  408. nautobot/extras/migrations/{0070_rename_model_fields.py → 0071_rename_model_fields.py} +1 -2
  409. nautobot/extras/migrations/0072_job__unique_name_data_migration.py +86 -0
  410. nautobot/extras/migrations/{0072_job__unique_name.py → 0073_job__unique_name.py} +13 -10
  411. nautobot/extras/migrations/{0073_remove_gitrepository_fields.py → 0074_remove_gitrepository_fields.py} +1 -2
  412. nautobot/extras/migrations/{0074_rename_slug_to_key_for_custom_field.py → 0075_rename_slug_to_key_for_custom_field.py} +1 -1
  413. nautobot/extras/migrations/{0075_migrate_custom_field_data.py → 0076_migrate_custom_field_data.py} +1 -1
  414. nautobot/extras/migrations/{0076_remove_name_field_and_make_label_field_non_nullable.py → 0077_remove_name_field_and_make_label_field_non_nullable.py} +1 -1
  415. nautobot/extras/migrations/0078_remove_slug.py +45 -0
  416. nautobot/extras/migrations/0079_tagsfield.py +28 -0
  417. nautobot/extras/migrations/0080_rename_relationship_slug_to_key.py +17 -0
  418. nautobot/extras/migrations/0081_rename_relationship_name_to_label.py +29 -0
  419. nautobot/extras/migrations/0082_ensure_relationship_keys_are_unique.py +43 -0
  420. nautobot/extras/migrations/0083_rename_computed_field_slug_to_key.py +21 -0
  421. nautobot/extras/migrations/0084_taggeditem_cleanup.py +43 -0
  422. nautobot/extras/migrations/0085_taggeditem_uniqueness.py +22 -0
  423. nautobot/extras/migrations/0086_job__celery_task_fields__dryrun_support.py +81 -0
  424. nautobot/extras/migrations/0087_job__commit_default_data_migration.py +26 -0
  425. nautobot/extras/migrations/0088_joblogentry__log_level_default.py +17 -0
  426. nautobot/extras/migrations/0089_joblogentry__log_level_data_migration.py +34 -0
  427. nautobot/extras/migrations/0090_scheduledjob__data_migration.py +57 -0
  428. nautobot/extras/models/__init__.py +2 -3
  429. nautobot/extras/models/change_logging.py +0 -36
  430. nautobot/extras/models/customfields.py +39 -33
  431. nautobot/extras/models/datasources.py +48 -50
  432. nautobot/extras/models/groups.py +5 -12
  433. nautobot/extras/models/jobs.py +190 -323
  434. nautobot/extras/models/mixins.py +0 -71
  435. nautobot/extras/models/models.py +1 -22
  436. nautobot/extras/models/relationships.py +20 -21
  437. nautobot/extras/models/roles.py +0 -23
  438. nautobot/extras/models/secrets.py +2 -31
  439. nautobot/extras/models/statuses.py +6 -5
  440. nautobot/extras/models/tags.py +2 -17
  441. nautobot/extras/navigation.py +89 -307
  442. nautobot/extras/plugins/__init__.py +3 -121
  443. nautobot/extras/plugins/utils.py +0 -3
  444. nautobot/extras/plugins/validators.py +5 -4
  445. nautobot/extras/plugins/views.py +16 -4
  446. nautobot/extras/querysets.py +1 -7
  447. nautobot/extras/registry.py +3 -0
  448. nautobot/extras/signals.py +26 -60
  449. nautobot/extras/tables.py +42 -49
  450. nautobot/extras/tasks.py +0 -12
  451. nautobot/extras/templates/extras/configcontext.html +1 -1
  452. nautobot/extras/templates/extras/configcontextschema.html +16 -1
  453. nautobot/extras/templates/extras/customfield.html +0 -13
  454. nautobot/extras/templates/extras/dynamicgroup_edit.html +0 -1
  455. nautobot/extras/templates/extras/gitrepository.html +3 -3
  456. nautobot/extras/templates/extras/inc/jobresult.html +10 -0
  457. nautobot/extras/templates/extras/inc/panel_jobhistory.html +1 -1
  458. nautobot/extras/templates/extras/job.html +35 -25
  459. nautobot/extras/templates/extras/job_approval_request.html +15 -30
  460. nautobot/extras/templates/extras/job_detail.html +13 -31
  461. nautobot/extras/templates/extras/job_edit.html +14 -17
  462. nautobot/extras/templates/extras/jobresult.html +24 -6
  463. nautobot/extras/templates/extras/objectchange_list.html +1 -1
  464. nautobot/extras/templates/extras/scheduledjob.html +2 -2
  465. nautobot/extras/templates/extras/secret.html +28 -0
  466. nautobot/extras/templates/extras/secret_edit.html +0 -1
  467. nautobot/extras/templates/extras/secretsgroup_edit.html +0 -1
  468. nautobot/extras/templatetags/custom_links.py +0 -2
  469. nautobot/extras/templatetags/job_buttons.py +1 -0
  470. nautobot/extras/templatetags/plugins.py +0 -1
  471. nautobot/extras/{tests/example_jobs → test_jobs}/api_test_job.py +13 -6
  472. nautobot/extras/test_jobs/atomic_transaction.py +53 -0
  473. nautobot/extras/test_jobs/dry_run.py +29 -0
  474. nautobot/extras/{tests/example_jobs/test_duplicate_name.py → test_jobs/duplicate_name.py} +4 -0
  475. nautobot/extras/test_jobs/duplicate_name2.py +9 -0
  476. nautobot/extras/test_jobs/fail.py +23 -0
  477. nautobot/extras/{tests/example_jobs/test_field_default.py → test_jobs/field_default.py} +4 -0
  478. nautobot/extras/{tests/example_jobs/test_field_order.py → test_jobs/field_order.py} +4 -0
  479. nautobot/extras/{tests/example_jobs/test_file_upload_fail.py → test_jobs/file_upload_fail.py} +11 -6
  480. nautobot/extras/test_jobs/file_upload_pass.py +25 -0
  481. nautobot/extras/test_jobs/has_sensitive_variables.py +25 -0
  482. nautobot/extras/test_jobs/ipaddress_vars.py +66 -0
  483. nautobot/extras/test_jobs/job_button_receiver.py +28 -0
  484. nautobot/extras/test_jobs/job_hook_receiver.py +29 -0
  485. nautobot/extras/test_jobs/job_variables.py +88 -0
  486. nautobot/extras/test_jobs/location_with_custom_field.py +45 -0
  487. nautobot/extras/test_jobs/log_redaction.py +20 -0
  488. nautobot/extras/test_jobs/log_skip_db_logging.py +17 -0
  489. nautobot/extras/test_jobs/modify_db.py +25 -0
  490. nautobot/extras/{tests/example_jobs/test_no_field_order.py → test_jobs/no_field_order.py} +4 -0
  491. nautobot/extras/test_jobs/object_var_optional.py +21 -0
  492. nautobot/extras/test_jobs/object_var_required.py +21 -0
  493. nautobot/extras/test_jobs/object_vars.py +26 -0
  494. nautobot/extras/test_jobs/pass.py +25 -0
  495. nautobot/extras/test_jobs/profiling.py +32 -0
  496. nautobot/extras/test_jobs/read_only_job.py +15 -0
  497. nautobot/extras/{tests/example_jobs/test_required_args.py → test_jobs/required_args.py} +4 -0
  498. nautobot/extras/{tests/example_jobs/test_soft_time_limit_greater_than_time_limit.py → test_jobs/soft_time_limit_greater_than_time_limit.py} +5 -1
  499. nautobot/extras/{tests/example_jobs/test_task_queues.py → test_jobs/task_queues.py} +5 -1
  500. nautobot/extras/tests/integration/__init__.py +3 -3
  501. nautobot/extras/tests/integration/test_computedfields.py +1 -1
  502. nautobot/extras/tests/integration/test_configcontextschema.py +7 -5
  503. nautobot/extras/tests/integration/test_customfields.py +4 -2
  504. nautobot/extras/tests/integration/test_dynamicgroups.py +2 -2
  505. nautobot/extras/tests/integration/test_jobs.py +25 -27
  506. nautobot/extras/tests/integration/test_notes.py +8 -4
  507. nautobot/extras/tests/integration/test_plugins.py +4 -4
  508. nautobot/extras/tests/integration/test_relationships.py +2 -2
  509. nautobot/extras/tests/test_api.py +371 -381
  510. nautobot/extras/tests/test_changelog.py +17 -16
  511. nautobot/extras/tests/test_context_managers.py +5 -6
  512. nautobot/extras/tests/test_customfields.py +112 -73
  513. nautobot/extras/tests/test_datasources.py +191 -117
  514. nautobot/extras/tests/test_dynamicgroups.py +45 -68
  515. nautobot/extras/tests/test_filters.py +170 -130
  516. nautobot/extras/tests/test_forms.py +107 -109
  517. nautobot/extras/tests/{test_scripts.py → test_job_variables.py} +43 -49
  518. nautobot/extras/tests/test_jobs.py +271 -273
  519. nautobot/extras/tests/test_management.py +3 -6
  520. nautobot/extras/tests/test_migrations.py +5 -3
  521. nautobot/extras/tests/test_models.py +121 -173
  522. nautobot/extras/tests/test_notes.py +0 -1
  523. nautobot/extras/tests/test_plugins.py +55 -89
  524. nautobot/extras/tests/test_relationships.py +174 -130
  525. nautobot/extras/tests/test_tags.py +6 -12
  526. nautobot/extras/tests/test_utils.py +31 -1
  527. nautobot/extras/tests/test_views.py +223 -184
  528. nautobot/extras/tests/test_webhooks.py +16 -15
  529. nautobot/extras/urls.py +69 -69
  530. nautobot/extras/utils.py +137 -163
  531. nautobot/extras/views.py +81 -153
  532. nautobot/ipam/api/fields.py +17 -0
  533. nautobot/ipam/api/serializers.py +77 -164
  534. nautobot/ipam/api/urls.py +4 -1
  535. nautobot/ipam/api/views.py +28 -19
  536. nautobot/ipam/apps.py +1 -0
  537. nautobot/ipam/choices.py +5 -12
  538. nautobot/ipam/constants.py +1 -0
  539. nautobot/ipam/factory.py +41 -30
  540. nautobot/ipam/filters.py +58 -25
  541. nautobot/ipam/forms.py +82 -211
  542. nautobot/ipam/graphql/types.py +0 -9
  543. nautobot/ipam/lookups.py +13 -8
  544. nautobot/ipam/management/commands/__init__.py +0 -0
  545. nautobot/ipam/management/commands/fix_prefix_broadcast.py +17 -0
  546. nautobot/ipam/migrations/0001_initial_part_1.py +0 -1
  547. nautobot/ipam/migrations/0002_initial_part_2.py +0 -1
  548. nautobot/ipam/migrations/0003_remove_max_length.py +0 -1
  549. nautobot/ipam/migrations/0004_fixup_p2p_broadcast.py +0 -1
  550. nautobot/ipam/migrations/0005_auto_slug.py +0 -1
  551. nautobot/ipam/migrations/0006_ipaddress_nat_outside_list.py +0 -1
  552. nautobot/ipam/migrations/0007_add_natural_indexing.py +0 -1
  553. nautobot/ipam/migrations/0008_prefix_vlan_vlangroup_location.py +0 -1
  554. nautobot/ipam/migrations/0009_alter_vlan_name.py +0 -1
  555. nautobot/ipam/migrations/0010_alter_ipam_role_add_new_role.py +1 -2
  556. nautobot/ipam/migrations/0011_migrate_ipam_role_data.py +32 -39
  557. nautobot/ipam/migrations/0012_rename_ipam_roles.py +0 -1
  558. nautobot/ipam/migrations/0013_delete_role.py +0 -1
  559. nautobot/ipam/migrations/0014_rename_foreign_keys_and_related_names.py +0 -1
  560. nautobot/ipam/migrations/0015_prefix_add_type.py +0 -1
  561. nautobot/ipam/migrations/0016_prefix_type_data_migration.py +0 -3
  562. nautobot/ipam/migrations/0017_prefix_remove_is_pool.py +0 -1
  563. nautobot/ipam/migrations/0018_remove_site_foreign_key_from_ipam_models.py +0 -1
  564. nautobot/ipam/migrations/0019_created_datetime.py +0 -1
  565. nautobot/ipam/migrations/0020_related_name_changes.py +1 -2
  566. nautobot/ipam/migrations/0021_prefix_add_rir_and_date_allocated.py +0 -1
  567. nautobot/ipam/migrations/0022_aggregate_to_prefix_data_migration.py +3 -5
  568. nautobot/ipam/migrations/0023_delete_aggregate.py +0 -1
  569. nautobot/ipam/migrations/0024_interface_to_ipaddress_m2m.py +0 -1
  570. nautobot/ipam/migrations/0025_interface_ipaddress_m2m_data_migration.py +0 -1
  571. nautobot/ipam/migrations/0026_ipaddress_remove_assigned_object.py +0 -1
  572. nautobot/ipam/migrations/0027_remove_rir_slug.py +16 -0
  573. nautobot/ipam/migrations/0028_tagsfield.py +44 -0
  574. nautobot/ipam/migrations/0029_ip_address_to_interface_uniqueness_constraints.py +18 -0
  575. nautobot/ipam/migrations/0030_ipam__namespaces.py +231 -0
  576. nautobot/ipam/migrations/0031_ipam__prefix__add_parent.py +58 -0
  577. nautobot/ipam/migrations/0032_ipam__namespaces_finish.py +63 -0
  578. nautobot/ipam/migrations/0033_fixup_null_statuses.py +26 -0
  579. nautobot/ipam/migrations/0034_status_nonnullable.py +36 -0
  580. nautobot/ipam/models.py +579 -368
  581. nautobot/ipam/navigation.py +36 -159
  582. nautobot/ipam/querysets.py +117 -90
  583. nautobot/ipam/signals.py +89 -0
  584. nautobot/ipam/tables.py +86 -28
  585. nautobot/ipam/templates/ipam/ipaddress.html +14 -30
  586. nautobot/ipam/templates/ipam/ipaddress_edit.html +1 -0
  587. nautobot/ipam/templates/ipam/namespace_ipaddresses.html +11 -0
  588. nautobot/ipam/templates/ipam/namespace_prefixes.html +11 -0
  589. nautobot/ipam/templates/ipam/namespace_retrieve.html +42 -0
  590. nautobot/ipam/templates/ipam/namespace_vrfs.html +11 -0
  591. nautobot/ipam/templates/ipam/prefix.html +27 -33
  592. nautobot/ipam/templates/ipam/prefix_edit.html +7 -1
  593. nautobot/ipam/templates/ipam/vlangroup.html +0 -13
  594. nautobot/ipam/templates/ipam/vrf.html +6 -4
  595. nautobot/ipam/templates/ipam/vrf_edit.html +20 -2
  596. nautobot/ipam/tests/integration/test_prefixes.py +4 -27
  597. nautobot/ipam/tests/test_api.py +60 -61
  598. nautobot/ipam/tests/test_filters.py +187 -126
  599. nautobot/ipam/tests/test_forms.py +12 -6
  600. nautobot/ipam/tests/test_graphql.py +8 -6
  601. nautobot/ipam/tests/test_migrations.py +8 -13
  602. nautobot/ipam/tests/test_models.py +426 -274
  603. nautobot/ipam/tests/test_ordering.py +6 -3
  604. nautobot/ipam/tests/test_querysets.py +340 -96
  605. nautobot/ipam/tests/test_views.py +100 -55
  606. nautobot/ipam/urls.py +28 -5
  607. nautobot/ipam/{utils.py → utils/__init__.py} +2 -2
  608. nautobot/ipam/utils/migrations.py +713 -0
  609. nautobot/ipam/views.py +237 -122
  610. nautobot/project-static/docs/404.html +1399 -166
  611. nautobot/project-static/docs/additional-features/caching.html +1416 -320
  612. nautobot/project-static/docs/additional-features/change-logging.html +1389 -190
  613. nautobot/project-static/docs/additional-features/config-contexts.html +1389 -190
  614. nautobot/project-static/docs/additional-features/graphql.html +1389 -190
  615. nautobot/project-static/docs/additional-features/healthcheck.html +1389 -190
  616. nautobot/project-static/docs/additional-features/job-scheduling-and-approvals.html +1393 -190
  617. nautobot/project-static/docs/additional-features/jobs.html +1677 -460
  618. nautobot/project-static/docs/additional-features/napalm.html +1389 -190
  619. nautobot/project-static/docs/additional-features/prometheus-metrics.html +1389 -190
  620. nautobot/project-static/docs/additional-features/template-filters.html +1389 -190
  621. nautobot/project-static/docs/administration/celery-queues.html +1389 -190
  622. nautobot/project-static/docs/administration/nautobot-server.html +1553 -375
  623. nautobot/project-static/docs/administration/nautobot-shell.html +1395 -196
  624. nautobot/project-static/docs/administration/permissions.html +1389 -190
  625. nautobot/project-static/docs/administration/replicating-nautobot.html +1387 -207
  626. nautobot/project-static/docs/apps/index.html +1389 -190
  627. nautobot/project-static/docs/apps/nautobot-apps.html +1387 -175
  628. nautobot/project-static/docs/assets/javascripts/bundle.51198bba.min.js +29 -0
  629. nautobot/project-static/docs/assets/javascripts/bundle.51198bba.min.js.map +8 -0
  630. nautobot/project-static/docs/assets/javascripts/workers/{search.16e2a7d4.min.js → search.208ed371.min.js} +9 -15
  631. nautobot/project-static/docs/assets/javascripts/workers/{search.16e2a7d4.min.js.map → search.208ed371.min.js.map} +4 -4
  632. nautobot/project-static/docs/assets/stylesheets/main.ded33207.min.css +1 -0
  633. nautobot/project-static/docs/assets/stylesheets/main.ded33207.min.css.map +1 -0
  634. nautobot/project-static/docs/assets/stylesheets/palette.a0c5b2b5.min.css +1 -0
  635. nautobot/project-static/docs/assets/stylesheets/palette.a0c5b2b5.min.css.map +1 -0
  636. nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +1775 -590
  637. nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +1389 -190
  638. nautobot/project-static/docs/code-reference/nautobot/apps/api.html +3588 -1922
  639. nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +1461 -262
  640. nautobot/project-static/docs/code-reference/nautobot/apps/config.html +1401 -170
  641. nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +1396 -191
  642. nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +2095 -894
  643. nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +2357 -1194
  644. nautobot/project-static/docs/code-reference/nautobot/apps/models.html +2258 -940
  645. nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +1389 -190
  646. nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +1400 -201
  647. nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +11068 -7861
  648. nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +2867 -2224
  649. nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +1389 -190
  650. nautobot/project-static/docs/code-reference/nautobot/apps/views.html +2641 -1573
  651. nautobot/project-static/docs/configuration/authentication/ldap.html +1389 -190
  652. nautobot/project-static/docs/configuration/authentication/remote.html +1389 -190
  653. nautobot/project-static/docs/configuration/authentication/sso.html +1389 -190
  654. nautobot/project-static/docs/configuration/index.html +1398 -199
  655. nautobot/project-static/docs/configuration/optional-settings.html +1418 -274
  656. nautobot/project-static/docs/configuration/required-settings.html +1419 -287
  657. nautobot/project-static/docs/core-functionality/circuits.html +1446 -247
  658. nautobot/project-static/docs/core-functionality/device-types.html +1448 -249
  659. nautobot/project-static/docs/core-functionality/devices.html +1452 -249
  660. nautobot/project-static/docs/core-functionality/ipam.html +1452 -253
  661. nautobot/project-static/docs/core-functionality/power.html +1448 -249
  662. nautobot/project-static/docs/core-functionality/secrets.html +1448 -249
  663. nautobot/project-static/docs/core-functionality/services.html +1448 -249
  664. nautobot/project-static/docs/core-functionality/sites-and-racks.html +1448 -249
  665. nautobot/project-static/docs/core-functionality/tenancy.html +1448 -249
  666. nautobot/project-static/docs/core-functionality/virtualization.html +1452 -249
  667. nautobot/project-static/docs/core-functionality/vlans.html +1448 -249
  668. nautobot/project-static/docs/development/application-registry.html +1393 -214
  669. nautobot/project-static/docs/development/best-practices.html +1392 -192
  670. nautobot/project-static/docs/development/docker-compose-advanced-use-cases.html +1390 -191
  671. nautobot/project-static/docs/development/extending-models.html +1443 -257
  672. nautobot/project-static/docs/development/generic-views.html +1403 -174
  673. nautobot/project-static/docs/development/getting-started.html +1568 -262
  674. nautobot/project-static/docs/development/homepage.html +1389 -190
  675. nautobot/project-static/docs/development/index.html +1389 -190
  676. nautobot/project-static/docs/development/model-features.html +1389 -190
  677. nautobot/project-static/docs/development/natural-keys.html +1389 -190
  678. nautobot/project-static/docs/development/navigation-menu.html +1451 -330
  679. nautobot/project-static/docs/development/react-ui.html +4199 -0
  680. nautobot/project-static/docs/development/release-checklist.html +1392 -193
  681. nautobot/project-static/docs/development/role-internals.html +1402 -172
  682. nautobot/project-static/docs/development/style-guide.html +1399 -199
  683. nautobot/project-static/docs/development/templates.html +1391 -191
  684. nautobot/project-static/docs/development/testing.html +1389 -190
  685. nautobot/project-static/docs/development/user-preferences.html +1389 -190
  686. nautobot/project-static/docs/docker/index.html +1408 -206
  687. nautobot/project-static/docs/index.html +1397 -180
  688. nautobot/project-static/docs/installation/centos.html +1401 -170
  689. nautobot/project-static/docs/installation/external-authentication.html +1389 -190
  690. nautobot/project-static/docs/installation/http-server.html +1389 -190
  691. nautobot/project-static/docs/installation/index.html +1394 -191
  692. nautobot/project-static/docs/installation/migrating-from-netbox.html +1452 -305
  693. nautobot/project-static/docs/installation/migrating-from-postgresql.html +1390 -191
  694. nautobot/project-static/docs/installation/nautobot.html +1390 -191
  695. nautobot/project-static/docs/installation/region-and-site-data-migration-guide.html +1389 -190
  696. nautobot/project-static/docs/installation/selinux-troubleshooting.html +1401 -170
  697. nautobot/project-static/docs/installation/services.html +1389 -190
  698. nautobot/project-static/docs/installation/tables/v2-api-behavior-changes.yaml +70 -0
  699. nautobot/project-static/docs/installation/tables/v2-api-removed-fields.yaml +142 -0
  700. nautobot/project-static/docs/installation/tables/v2-api-renamed-fields.yaml +124 -0
  701. nautobot/project-static/docs/installation/tables/v2-code-location-changes.yaml +241 -0
  702. nautobot/project-static/docs/installation/tables/v2-code-removals.yaml +67 -0
  703. nautobot/project-static/docs/installation/tables/v2-database-behavior-changes.yaml +37 -0
  704. nautobot/project-static/docs/installation/tables/v2-database-removed-fields.yaml +166 -0
  705. nautobot/project-static/docs/installation/tables/v2-database-renamed-fields.yaml +340 -0
  706. nautobot/project-static/docs/installation/tables/v2-filters-corrected-fields.yaml +28 -0
  707. nautobot/project-static/docs/installation/tables/v2-filters-enhanced-fields.yaml +241 -0
  708. nautobot/project-static/docs/installation/tables/v2-filters-removed-fields.yaml +553 -0
  709. nautobot/project-static/docs/installation/tables/v2-filters-renamed-fields.yaml +223 -0
  710. nautobot/project-static/docs/installation/tables/v2-logging-renamed-loggers.yaml +23 -0
  711. nautobot/project-static/docs/installation/ubuntu.html +1401 -170
  712. nautobot/project-static/docs/installation/upgrading-from-nautobot-v1.html +4254 -1923
  713. nautobot/project-static/docs/installation/upgrading.html +1395 -192
  714. nautobot/project-static/docs/models/circuits/circuit.html +1427 -174
  715. nautobot/project-static/docs/models/circuits/circuittermination.html +1427 -174
  716. nautobot/project-static/docs/models/circuits/circuittype.html +1427 -174
  717. nautobot/project-static/docs/models/circuits/provider.html +1427 -174
  718. nautobot/project-static/docs/models/circuits/providernetwork.html +1427 -174
  719. nautobot/project-static/docs/models/dcim/cable.html +1458 -174
  720. nautobot/project-static/docs/models/dcim/consoleport.html +1427 -174
  721. nautobot/project-static/docs/models/dcim/consoleporttemplate.html +1427 -174
  722. nautobot/project-static/docs/models/dcim/consoleserverport.html +1427 -174
  723. nautobot/project-static/docs/models/dcim/consoleserverporttemplate.html +1427 -174
  724. nautobot/project-static/docs/models/dcim/device.html +1431 -174
  725. nautobot/project-static/docs/models/dcim/devicebay.html +1427 -174
  726. nautobot/project-static/docs/models/dcim/devicebaytemplate.html +1427 -174
  727. nautobot/project-static/docs/models/dcim/deviceredundancygroup.html +1522 -177
  728. nautobot/project-static/docs/models/dcim/devicetype.html +1427 -174
  729. nautobot/project-static/docs/models/dcim/frontport.html +1427 -174
  730. nautobot/project-static/docs/models/dcim/frontporttemplate.html +1427 -174
  731. nautobot/project-static/docs/models/dcim/interface.html +1427 -174
  732. nautobot/project-static/docs/models/dcim/interfacetemplate.html +1427 -174
  733. nautobot/project-static/docs/models/dcim/inventoryitem.html +1427 -174
  734. nautobot/project-static/docs/models/dcim/location.html +1427 -174
  735. nautobot/project-static/docs/models/dcim/locationtype.html +1427 -174
  736. nautobot/project-static/docs/models/dcim/manufacturer.html +1427 -174
  737. nautobot/project-static/docs/models/dcim/platform.html +1427 -174
  738. nautobot/project-static/docs/models/dcim/powerfeed.html +1425 -172
  739. nautobot/project-static/docs/models/dcim/poweroutlet.html +1427 -174
  740. nautobot/project-static/docs/models/dcim/poweroutlettemplate.html +1427 -174
  741. nautobot/project-static/docs/models/dcim/powerpanel.html +1425 -172
  742. nautobot/project-static/docs/models/dcim/powerport.html +1427 -174
  743. nautobot/project-static/docs/models/dcim/powerporttemplate.html +1427 -174
  744. nautobot/project-static/docs/models/dcim/rack.html +1427 -174
  745. nautobot/project-static/docs/models/dcim/rackgroup.html +1427 -174
  746. nautobot/project-static/docs/models/dcim/rackreservation.html +1427 -174
  747. nautobot/project-static/docs/models/dcim/rearport.html +1427 -174
  748. nautobot/project-static/docs/models/dcim/rearporttemplate.html +1427 -174
  749. nautobot/project-static/docs/models/dcim/region.html +1401 -170
  750. nautobot/project-static/docs/models/dcim/site.html +1401 -170
  751. nautobot/project-static/docs/models/dcim/virtualchassis.html +1425 -172
  752. nautobot/project-static/docs/models/extras/computedfield.html +1393 -194
  753. nautobot/project-static/docs/models/extras/configcontext.html +1465 -174
  754. nautobot/project-static/docs/models/extras/configcontextschema.html +1421 -168
  755. nautobot/project-static/docs/models/extras/customfield.html +1389 -190
  756. nautobot/project-static/docs/models/extras/customlink.html +1389 -190
  757. nautobot/project-static/docs/models/extras/dynamicgroup.html +1398 -199
  758. nautobot/project-static/docs/models/extras/exporttemplate.html +1389 -190
  759. nautobot/project-static/docs/models/extras/gitrepository.html +1393 -190
  760. nautobot/project-static/docs/models/extras/graphqlquery.html +1469 -171
  761. nautobot/project-static/docs/models/extras/imageattachment.html +1434 -181
  762. nautobot/project-static/docs/models/extras/job.html +1411 -157
  763. nautobot/project-static/docs/models/extras/jobbutton.html +1410 -207
  764. nautobot/project-static/docs/models/extras/jobhook.html +1397 -194
  765. nautobot/project-static/docs/models/extras/joblogentry.html +1408 -155
  766. nautobot/project-static/docs/models/extras/jobresult.html +1417 -159
  767. nautobot/project-static/docs/models/extras/note.html +1389 -190
  768. nautobot/project-static/docs/models/extras/relationship.html +1391 -192
  769. nautobot/project-static/docs/models/extras/role.html +1495 -198
  770. nautobot/project-static/docs/models/extras/secret.html +1492 -201
  771. nautobot/project-static/docs/models/extras/secretsgroup.html +1410 -157
  772. nautobot/project-static/docs/models/extras/status.html +1381 -221
  773. nautobot/project-static/docs/models/extras/tag.html +1389 -190
  774. nautobot/project-static/docs/models/extras/webhook.html +1389 -190
  775. nautobot/project-static/docs/models/ipam/ipaddress.html +1488 -200
  776. nautobot/project-static/docs/models/ipam/prefix.html +1410 -157
  777. nautobot/project-static/docs/models/ipam/rir.html +1410 -157
  778. nautobot/project-static/docs/models/ipam/routetarget.html +1410 -157
  779. nautobot/project-static/docs/models/ipam/service.html +1410 -157
  780. nautobot/project-static/docs/models/ipam/vlan.html +1410 -157
  781. nautobot/project-static/docs/models/ipam/vlangroup.html +1410 -157
  782. nautobot/project-static/docs/models/ipam/vrf.html +1410 -161
  783. nautobot/project-static/docs/models/tenancy/tenant.html +1412 -159
  784. nautobot/project-static/docs/models/tenancy/tenantgroup.html +1412 -159
  785. nautobot/project-static/docs/models/users/objectpermission.html +1462 -171
  786. nautobot/project-static/docs/models/users/token.html +1410 -157
  787. nautobot/project-static/docs/models/virtualization/cluster.html +1410 -157
  788. nautobot/project-static/docs/models/virtualization/clustergroup.html +1410 -157
  789. nautobot/project-static/docs/models/virtualization/clustertype.html +1410 -157
  790. nautobot/project-static/docs/models/virtualization/virtualmachine.html +1414 -157
  791. nautobot/project-static/docs/models/virtualization/vminterface.html +1410 -157
  792. nautobot/project-static/docs/objects.inv +0 -0
  793. nautobot/project-static/docs/plugins/development.html +1916 -646
  794. nautobot/project-static/docs/plugins/index.html +1389 -190
  795. nautobot/project-static/docs/plugins/porting-from-netbox.html +1389 -190
  796. nautobot/project-static/docs/release-notes/index.html +1389 -190
  797. nautobot/project-static/docs/release-notes/version-1.0.html +1389 -190
  798. nautobot/project-static/docs/release-notes/version-1.1.html +1389 -190
  799. nautobot/project-static/docs/release-notes/version-1.2.html +1389 -190
  800. nautobot/project-static/docs/release-notes/version-1.3.html +1389 -190
  801. nautobot/project-static/docs/release-notes/version-1.4.html +1389 -190
  802. nautobot/project-static/docs/release-notes/version-1.5.html +2016 -397
  803. nautobot/project-static/docs/release-notes/version-2.0.html +1935 -287
  804. nautobot/project-static/docs/requirements.txt +5 -4
  805. nautobot/project-static/docs/rest-api/authentication.html +1389 -190
  806. nautobot/project-static/docs/rest-api/filtering.html +1389 -190
  807. nautobot/project-static/docs/rest-api/overview.html +2002 -576
  808. nautobot/project-static/docs/rest-api/ui-related-endpoints.html +4057 -0
  809. nautobot/project-static/docs/search/search_index.json +1 -1
  810. nautobot/project-static/docs/sitemap.xml +197 -187
  811. nautobot/project-static/docs/sitemap.xml.gz +0 -0
  812. nautobot/project-static/docs/user-guides/custom-fields.html +1390 -191
  813. nautobot/project-static/docs/user-guides/getting-started/creating-devices.html +1392 -193
  814. nautobot/project-static/docs/user-guides/getting-started/index.html +1388 -189
  815. nautobot/project-static/docs/user-guides/getting-started/interfaces.html +1388 -189
  816. nautobot/project-static/docs/user-guides/getting-started/ipam.html +1386 -187
  817. nautobot/project-static/docs/user-guides/getting-started/platforms.html +1448 -249
  818. nautobot/project-static/docs/user-guides/getting-started/regions.html +1411 -212
  819. nautobot/project-static/docs/user-guides/getting-started/search-bar.html +1395 -196
  820. nautobot/project-static/docs/user-guides/getting-started/tenants.html +1448 -249
  821. nautobot/project-static/docs/user-guides/getting-started/vlans-and-vlan-groups.html +1448 -249
  822. nautobot/project-static/docs/user-guides/git-data-source.html +1405 -206
  823. nautobot/project-static/docs/user-guides/graphql.html +1402 -203
  824. nautobot/project-static/docs/user-guides/relationships.html +1448 -249
  825. nautobot/project-static/docs/user-guides/s3-django-storage.html +1448 -249
  826. nautobot/project-static/js/forms.js +16 -9
  827. nautobot/project-static/js/theme.js +5 -0
  828. nautobot/tenancy/api/serializers.py +4 -34
  829. nautobot/tenancy/api/urls.py +1 -1
  830. nautobot/tenancy/filters/__init__.py +9 -7
  831. nautobot/tenancy/filters/mixins.py +3 -2
  832. nautobot/tenancy/forms.py +3 -36
  833. nautobot/tenancy/migrations/0001_initial.py +0 -1
  834. nautobot/tenancy/migrations/0002_auto_slug.py +0 -1
  835. nautobot/tenancy/migrations/0003_mptt_to_tree_queries.py +0 -1
  836. nautobot/tenancy/migrations/0004_change_tree_manager_on_tree_models.py +0 -1
  837. nautobot/tenancy/migrations/0005_rename_foreign_keys_and_related_names.py +0 -1
  838. nautobot/tenancy/migrations/0006_created_datetime.py +0 -1
  839. nautobot/tenancy/migrations/0007_remove_tenant_tenantgroup_slug.py +20 -0
  840. nautobot/tenancy/migrations/0008_tagsfield.py +19 -0
  841. nautobot/tenancy/models.py +0 -30
  842. nautobot/tenancy/navigation.py +6 -39
  843. nautobot/tenancy/tables.py +4 -4
  844. nautobot/tenancy/templates/tenancy/tenant.html +12 -12
  845. nautobot/tenancy/templates/tenancy/tenant_edit.html +0 -1
  846. nautobot/tenancy/templates/tenancy/tenantgroup.html +1 -1
  847. nautobot/tenancy/tests/test_api.py +1 -12
  848. nautobot/tenancy/tests/test_filters.py +20 -12
  849. nautobot/tenancy/tests/test_views.py +11 -29
  850. nautobot/tenancy/urls.py +10 -10
  851. nautobot/tenancy/views.py +0 -3
  852. nautobot/ui/.eslintignore +6 -0
  853. nautobot/ui/.gitignore +10 -0
  854. nautobot/ui/.prettierignore +9 -0
  855. nautobot/ui/.prettierrc +4 -0
  856. nautobot/ui/README.md +33 -0
  857. nautobot/ui/app_imports.js.j2 +7 -0
  858. nautobot/ui/craco.config.js +46 -0
  859. nautobot/ui/jsconfig-base.json +11 -0
  860. nautobot/ui/jsconfig.json +5 -0
  861. nautobot/ui/lib/nautobot-craco-alias-plugin.js +40 -0
  862. nautobot/ui/package-lock.json +21451 -0
  863. nautobot/ui/package.json +70 -0
  864. nautobot/ui/public/index.html +47 -0
  865. nautobot/ui/public/logo192.png +0 -0
  866. nautobot/ui/public/logo512.png +0 -0
  867. nautobot/ui/public/manifest.json +25 -0
  868. nautobot/ui/public/nautobot_logo.svg +131 -0
  869. nautobot/ui/public/robots.txt +3 -0
  870. nautobot/ui/src/App.js +71 -0
  871. nautobot/ui/src/components/AppFullWidthComponents.js +8 -0
  872. nautobot/ui/src/components/AppTab.js +40 -0
  873. nautobot/ui/src/components/Apps.js +60 -0
  874. nautobot/ui/src/components/HomeChangelogPanel.js +98 -0
  875. nautobot/ui/src/components/HomePanel.js +58 -0
  876. nautobot/ui/src/components/JobHistoryTable.js +78 -0
  877. nautobot/ui/src/components/Layout.js +53 -0
  878. nautobot/ui/src/components/LoadingWidget.js +25 -0
  879. nautobot/ui/src/components/Navbar.js +116 -0
  880. nautobot/ui/src/components/NotificationPopover.js +27 -0
  881. nautobot/ui/src/components/ObjectListTable.js +209 -0
  882. nautobot/ui/src/components/ReferenceDataTag.js +35 -0
  883. nautobot/ui/src/components/RouterButton.js +10 -0
  884. nautobot/ui/src/components/RouterLink.js +10 -0
  885. nautobot/ui/src/components/SidebarNav.js +147 -0
  886. nautobot/ui/src/components/Table.js +48 -0
  887. nautobot/ui/src/components/TableItem.js +71 -0
  888. nautobot/ui/src/components/__tests__/AppFullWidthComponents.test.js +16 -0
  889. nautobot/ui/src/components/__tests__/AppTab.test.js +21 -0
  890. nautobot/ui/src/components/__tests__/Apps.test.js +14 -0
  891. nautobot/ui/src/components/__tests__/Layout.test.js +33 -0
  892. nautobot/ui/src/components/__tests__/Table.test.js +36 -0
  893. nautobot/ui/src/components/__tests__/TableItem.test.js +37 -0
  894. nautobot/ui/src/components/__tests__/paginator.test.js +43 -0
  895. nautobot/ui/src/components/__tests__/paginator_form.test.js +13 -0
  896. nautobot/ui/src/components/pagination.js +93 -0
  897. nautobot/ui/src/components/paginator.js +79 -0
  898. nautobot/ui/src/components/paginator_form.js +43 -0
  899. nautobot/ui/src/components/usePagination.js +57 -0
  900. nautobot/ui/src/constants/apiPath.js +10 -0
  901. nautobot/ui/src/constants/icons.js +15 -0
  902. nautobot/ui/src/constants/size.js +15 -0
  903. nautobot/ui/src/index.js +65 -0
  904. nautobot/ui/src/reportWebVitals.js +15 -0
  905. nautobot/ui/src/router.js +77 -0
  906. nautobot/ui/src/utils/api.js +131 -0
  907. nautobot/ui/src/utils/app-import.js +15 -0
  908. nautobot/ui/src/utils/color.js +15 -0
  909. nautobot/ui/src/utils/date.js +14 -0
  910. nautobot/ui/src/utils/index.js +15 -0
  911. nautobot/ui/src/utils/navigation.js +32 -0
  912. nautobot/ui/src/utils/session.js +64 -0
  913. nautobot/ui/src/utils/store.js +242 -0
  914. nautobot/ui/src/utils/string.js +6 -0
  915. nautobot/ui/src/utils/url.js +4 -0
  916. nautobot/ui/src/views/Home.js +138 -0
  917. nautobot/ui/src/views/InstalledApps.js +80 -0
  918. nautobot/ui/src/views/Login.js +48 -0
  919. nautobot/ui/src/views/Logout.js +20 -0
  920. nautobot/ui/src/views/__tests__/BSCreateViewTemplate.test.js +11 -0
  921. nautobot/ui/src/views/__tests__/BSListViewTemplate.test.js +107 -0
  922. nautobot/ui/src/views/__tests__/Login.test.js +15 -0
  923. nautobot/ui/src/views/generic/GenericView.js +142 -0
  924. nautobot/ui/src/views/generic/ObjectCreate.js +96 -0
  925. nautobot/ui/src/views/generic/ObjectList.js +127 -0
  926. nautobot/ui/src/views/generic/ObjectRetrieve.js +551 -0
  927. nautobot/users/admin.py +1 -1
  928. nautobot/users/api/serializers.py +51 -61
  929. nautobot/users/api/urls.py +1 -1
  930. nautobot/users/api/views.py +53 -2
  931. nautobot/users/migrations/0001_initial.py +0 -1
  932. nautobot/users/migrations/0002_token_ordering_by_created.py +0 -1
  933. nautobot/users/migrations/0003_alter_user_options.py +0 -1
  934. nautobot/users/migrations/0004_alter_user_managers.py +0 -1
  935. nautobot/users/tests/test_api.py +109 -28
  936. nautobot/users/tests/test_filters.py +0 -4
  937. nautobot/users/tests/test_models.py +0 -1
  938. nautobot/users/views.py +0 -7
  939. nautobot/virtualization/api/serializers.py +18 -132
  940. nautobot/virtualization/api/urls.py +1 -1
  941. nautobot/virtualization/api/views.py +1 -22
  942. nautobot/virtualization/choices.py +0 -2
  943. nautobot/virtualization/filters.py +12 -7
  944. nautobot/virtualization/forms.py +21 -117
  945. nautobot/virtualization/migrations/0001_initial.py +0 -1
  946. nautobot/virtualization/migrations/0002_virtualmachine_local_context_schema.py +0 -1
  947. nautobot/virtualization/migrations/0003_vminterface_verbose_name.py +0 -1
  948. nautobot/virtualization/migrations/0004_auto_slug.py +0 -1
  949. nautobot/virtualization/migrations/0005_add_natural_indexing.py +0 -1
  950. nautobot/virtualization/migrations/0006_vminterface_status.py +0 -1
  951. nautobot/virtualization/migrations/0007_vminterface_status_data_migration.py +0 -1
  952. nautobot/virtualization/migrations/0008_vminterface_parent.py +0 -1
  953. nautobot/virtualization/migrations/0009_cluster_location.py +0 -1
  954. nautobot/virtualization/migrations/0010_vminterface_mac_address_data_migration.py +0 -1
  955. nautobot/virtualization/migrations/0011_alter_vminterface_mac_address.py +0 -1
  956. nautobot/virtualization/migrations/0012_alter_virtualmachine_role_add_new_role.py +1 -2
  957. nautobot/virtualization/migrations/0013_migrate_virtualmachine_role_data.py +18 -12
  958. nautobot/virtualization/migrations/0014_rename_virtualmachine_roles.py +0 -1
  959. nautobot/virtualization/migrations/0015_rename_foreignkey_fields.py +1 -2
  960. nautobot/virtualization/migrations/0016_remove_site_foreign_key_from_cluster_class.py +0 -1
  961. nautobot/virtualization/migrations/0017_created_datetime.py +0 -1
  962. nautobot/virtualization/migrations/0018_related_name_changes.py +1 -2
  963. nautobot/virtualization/migrations/0019_vminterface_ip_addresses_m2m.py +0 -1
  964. nautobot/virtualization/migrations/0020_remove_clustergroup_clustertype_slug.py +20 -0
  965. nautobot/virtualization/migrations/0021_tagsfield_and_vminterface_to_primarymodel.py +39 -0
  966. nautobot/virtualization/migrations/0022_vminterface_timestamps_data_migration.py +17 -0
  967. nautobot/virtualization/migrations/0023_ipam__namespaces.py +25 -0
  968. nautobot/virtualization/migrations/0024_fixup_null_statuses.py +25 -0
  969. nautobot/virtualization/migrations/0025_status_nonnullable.py +29 -0
  970. nautobot/virtualization/models.py +39 -131
  971. nautobot/virtualization/navigation.py +18 -99
  972. nautobot/virtualization/tables.py +4 -4
  973. nautobot/virtualization/templates/virtualization/virtualmachine.html +13 -2
  974. nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +6 -0
  975. nautobot/virtualization/tests/test_api.py +42 -52
  976. nautobot/virtualization/tests/test_filters.py +98 -75
  977. nautobot/virtualization/tests/test_models.py +36 -13
  978. nautobot/virtualization/tests/test_views.py +68 -73
  979. nautobot/virtualization/urls.py +10 -10
  980. nautobot/virtualization/views.py +8 -14
  981. {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/METADATA +15 -22
  982. {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/RECORD +987 -834
  983. {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/WHEEL +1 -1
  984. nautobot/circuits/api/nested_serializers.py +0 -69
  985. nautobot/core/templates/plugin_template/navigation.py-tpl +0 -22
  986. nautobot/dcim/api/nested_serializers.py +0 -356
  987. nautobot/dcim/templates/dcim/device_import.html +0 -5
  988. nautobot/dcim/templates/dcim/device_import_child.html +0 -5
  989. nautobot/dcim/templates/dcim/inc/device_import_header.html +0 -4
  990. nautobot/extras/api/nested_serializers.py +0 -353
  991. nautobot/extras/migrations/0064_configcontext_data_migrations.py +0 -42
  992. nautobot/extras/migrations/0071_job__unique_name_data_migration.py +0 -47
  993. nautobot/extras/reports.py +0 -60
  994. nautobot/extras/scripts.py +0 -72
  995. nautobot/extras/tests/example_jobs/script_variables.py +0 -67
  996. nautobot/extras/tests/example_jobs/test_duplicate_name2.py +0 -5
  997. nautobot/extras/tests/example_jobs/test_fail.py +0 -16
  998. nautobot/extras/tests/example_jobs/test_file_upload_pass.py +0 -20
  999. nautobot/extras/tests/example_jobs/test_ipaddress_vars.py +0 -52
  1000. nautobot/extras/tests/example_jobs/test_job_button_receiver.py +0 -21
  1001. nautobot/extras/tests/example_jobs/test_job_hook_receiver.py +0 -20
  1002. nautobot/extras/tests/example_jobs/test_location_with_custom_field.py +0 -35
  1003. nautobot/extras/tests/example_jobs/test_log_redaction.py +0 -14
  1004. nautobot/extras/tests/example_jobs/test_modify_db.py +0 -19
  1005. nautobot/extras/tests/example_jobs/test_object_var_optional.py +0 -14
  1006. nautobot/extras/tests/example_jobs/test_object_var_required.py +0 -14
  1007. nautobot/extras/tests/example_jobs/test_object_vars.py +0 -29
  1008. nautobot/extras/tests/example_jobs/test_pass.py +0 -19
  1009. nautobot/extras/tests/example_jobs/test_read_only_fail.py +0 -24
  1010. nautobot/extras/tests/example_jobs/test_read_only_no_commit_field.py +0 -10
  1011. nautobot/extras/tests/example_jobs/test_read_only_pass.py +0 -22
  1012. nautobot/ipam/api/nested_serializers.py +0 -143
  1013. nautobot/project-static/docs/assets/javascripts/bundle.5a2dcb6a.min.js +0 -29
  1014. nautobot/project-static/docs/assets/javascripts/bundle.5a2dcb6a.min.js.map +0 -8
  1015. nautobot/project-static/docs/assets/javascripts/extra/bundle.5f09fbc3.min.js +0 -18
  1016. nautobot/project-static/docs/assets/javascripts/extra/bundle.5f09fbc3.min.js.map +0 -8
  1017. nautobot/project-static/docs/assets/stylesheets/extra.0d2c79a8.min.css +0 -1
  1018. nautobot/project-static/docs/assets/stylesheets/extra.0d2c79a8.min.css.map +0 -1
  1019. nautobot/project-static/docs/assets/stylesheets/main.975780f9.min.css +0 -1
  1020. nautobot/project-static/docs/assets/stylesheets/main.975780f9.min.css.map +0 -1
  1021. nautobot/project-static/docs/assets/stylesheets/palette.2505c338.min.css +0 -1
  1022. nautobot/project-static/docs/assets/stylesheets/palette.2505c338.min.css.map +0 -1
  1023. nautobot/tenancy/api/nested_serializers.py +0 -31
  1024. nautobot/users/api/nested_serializers.py +0 -67
  1025. nautobot/virtualization/api/nested_serializers.py +0 -65
  1026. /nautobot/extras/{tests/example_jobs → test_jobs}/__init__.py +0 -0
  1027. /nautobot/{dcim/models/sites.py → ipam/management/__init__.py} +0 -0
  1028. {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/LICENSE.txt +0 -0
  1029. {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/entry_points.txt +0 -0
@@ -10,8 +10,12 @@
10
10
 
11
11
  <link rel="canonical" href="https://docs.nautobot.com/projects/core/en/stable/index.html">
12
12
 
13
+
14
+
15
+ <link rel="next" href="installation/index.html">
16
+
13
17
  <link rel="icon" href="assets/favicon.ico">
14
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-8.5.10">
18
+ <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.6">
15
19
 
16
20
 
17
21
 
@@ -19,11 +23,10 @@
19
23
 
20
24
 
21
25
 
22
- <link rel="stylesheet" href="assets/stylesheets/main.975780f9.min.css">
26
+ <link rel="stylesheet" href="assets/stylesheets/main.ded33207.min.css">
23
27
 
24
28
 
25
- <link rel="stylesheet" href="assets/stylesheets/palette.2505c338.min.css">
26
-
29
+ <link rel="stylesheet" href="assets/stylesheets/palette.a0c5b2b5.min.css">
27
30
 
28
31
 
29
32
 
@@ -86,7 +89,7 @@
86
89
 
87
90
 
88
91
 
89
- <header class="md-header md-header--lifted" data-md-component="header">
92
+ <header class="md-header md-header--shadow md-header--lifted" data-md-component="header">
90
93
  <nav class="md-header__inner md-grid" aria-label="Header">
91
94
  <a href="index.html" title="Nautobot Documentation" class="md-header__button md-logo" aria-label="Nautobot Documentation" data-md-component="logo">
92
95
 
@@ -116,8 +119,6 @@
116
119
  <form class="md-header__option" data-md-component="palette">
117
120
 
118
121
 
119
-
120
-
121
122
  <input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="black" data-md-color-accent="" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
122
123
 
123
124
  <label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
@@ -126,8 +127,6 @@
126
127
 
127
128
 
128
129
 
129
-
130
-
131
130
  <input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_2">
132
131
 
133
132
  <label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
@@ -171,7 +170,7 @@
171
170
  <div class="md-search-result__meta">
172
171
  Initializing search
173
172
  </div>
174
- <ol class="md-search-result__list"></ol>
173
+ <ol class="md-search-result__list" role="presentation"></ol>
175
174
  </div>
176
175
  </div>
177
176
  </div>
@@ -183,7 +182,7 @@
183
182
  <a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
184
183
  <div class="md-source__icon md-icon">
185
184
 
186
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
185
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
187
186
  </div>
188
187
  <div class="md-source__repository">
189
188
  GitHub
@@ -196,7 +195,7 @@
196
195
 
197
196
 
198
197
  <nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
199
- <div class="md-tabs__inner md-grid">
198
+ <div class="md-grid">
200
199
  <ul class="md-tabs__list">
201
200
 
202
201
 
@@ -353,7 +352,7 @@
353
352
  <a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
354
353
  <div class="md-source__icon md-icon">
355
354
 
356
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
355
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
357
356
  </div>
358
357
  <div class="md-source__repository">
359
358
  GitHub
@@ -374,7 +373,7 @@
374
373
 
375
374
  <li class="md-nav__item md-nav__item--active">
376
375
 
377
- <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
376
+ <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
378
377
 
379
378
 
380
379
 
@@ -506,17 +505,18 @@
506
505
  <li class="md-nav__item md-nav__item--nested">
507
506
 
508
507
 
509
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2" type="checkbox" id="__nav_2" >
510
508
 
511
509
 
510
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
512
511
 
513
512
 
514
- <label class="md-nav__link" for="__nav_2">
513
+
514
+ <label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
515
515
  Documentation
516
516
  <span class="md-nav__icon md-icon"></span>
517
517
  </label>
518
518
 
519
- <nav class="md-nav" aria-label="Documentation" data-md-level="1">
519
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
520
520
  <label class="md-nav__title" for="__nav_2">
521
521
  <span class="md-nav__icon md-icon"></span>
522
522
  Documentation
@@ -532,17 +532,18 @@
532
532
  <li class="md-nav__item md-nav__item--nested">
533
533
 
534
534
 
535
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_1" type="checkbox" id="__nav_2_1" >
536
535
 
537
536
 
537
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1" >
538
+
538
539
 
539
540
 
540
- <label class="md-nav__link" for="__nav_2_1">
541
+ <label class="md-nav__link" for="__nav_2_1" id="__nav_2_1_label" tabindex="0">
541
542
  Installation
542
543
  <span class="md-nav__icon md-icon"></span>
543
544
  </label>
544
545
 
545
- <nav class="md-nav" aria-label="Installation" data-md-level="2">
546
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_1_label" aria-expanded="false">
546
547
  <label class="md-nav__title" for="__nav_2_1">
547
548
  <span class="md-nav__icon md-icon"></span>
548
549
  Installation
@@ -649,17 +650,18 @@
649
650
  <li class="md-nav__item md-nav__item--nested">
650
651
 
651
652
 
652
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_2" type="checkbox" id="__nav_2_2" >
653
653
 
654
654
 
655
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2" >
655
656
 
656
657
 
657
- <label class="md-nav__link" for="__nav_2_2">
658
+
659
+ <label class="md-nav__link" for="__nav_2_2" id="__nav_2_2_label" tabindex="0">
658
660
  Migration
659
661
  <span class="md-nav__icon md-icon"></span>
660
662
  </label>
661
663
 
662
- <nav class="md-nav" aria-label="Migration" data-md-level="2">
664
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_2_label" aria-expanded="false">
663
665
  <label class="md-nav__title" for="__nav_2_2">
664
666
  <span class="md-nav__icon md-icon"></span>
665
667
  Migration
@@ -752,17 +754,18 @@
752
754
  <li class="md-nav__item md-nav__item--nested">
753
755
 
754
756
 
755
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_3" type="checkbox" id="__nav_2_3" >
756
757
 
757
758
 
759
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_3" >
760
+
758
761
 
759
762
 
760
- <label class="md-nav__link" for="__nav_2_3">
763
+ <label class="md-nav__link" for="__nav_2_3" id="__nav_2_3_label" tabindex="0">
761
764
  Configuration
762
765
  <span class="md-nav__icon md-icon"></span>
763
766
  </label>
764
767
 
765
- <nav class="md-nav" aria-label="Configuration" data-md-level="2">
768
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_3_label" aria-expanded="false">
766
769
  <label class="md-nav__title" for="__nav_2_3">
767
770
  <span class="md-nav__icon md-icon"></span>
768
771
  Configuration
@@ -827,17 +830,18 @@
827
830
  <li class="md-nav__item md-nav__item--nested">
828
831
 
829
832
 
830
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_4" type="checkbox" id="__nav_2_4" >
831
833
 
832
834
 
835
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4" >
833
836
 
834
837
 
835
- <label class="md-nav__link" for="__nav_2_4">
838
+
839
+ <label class="md-nav__link" for="__nav_2_4" id="__nav_2_4_label" tabindex="0">
836
840
  External Authentication
837
841
  <span class="md-nav__icon md-icon"></span>
838
842
  </label>
839
843
 
840
- <nav class="md-nav" aria-label="External Authentication" data-md-level="2">
844
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_4_label" aria-expanded="false">
841
845
  <label class="md-nav__title" for="__nav_2_4">
842
846
  <span class="md-nav__icon md-icon"></span>
843
847
  External Authentication
@@ -902,17 +906,18 @@
902
906
  <li class="md-nav__item md-nav__item--nested">
903
907
 
904
908
 
905
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_5" type="checkbox" id="__nav_2_5" >
906
909
 
907
910
 
911
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5" >
912
+
908
913
 
909
914
 
910
- <label class="md-nav__link" for="__nav_2_5">
915
+ <label class="md-nav__link" for="__nav_2_5" id="__nav_2_5_label" tabindex="0">
911
916
  Administration
912
917
  <span class="md-nav__icon md-icon"></span>
913
918
  </label>
914
919
 
915
- <nav class="md-nav" aria-label="Administration" data-md-level="2">
920
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_5_label" aria-expanded="false">
916
921
  <label class="md-nav__title" for="__nav_2_5">
917
922
  <span class="md-nav__icon md-icon"></span>
918
923
  Administration
@@ -1005,17 +1010,18 @@
1005
1010
  <li class="md-nav__item md-nav__item--nested">
1006
1011
 
1007
1012
 
1008
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_6" type="checkbox" id="__nav_2_6" >
1009
1013
 
1010
1014
 
1015
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_6" >
1011
1016
 
1012
1017
 
1013
- <label class="md-nav__link" for="__nav_2_6">
1018
+
1019
+ <label class="md-nav__link" for="__nav_2_6" id="__nav_2_6_label" tabindex="0">
1014
1020
  User Guides
1015
1021
  <span class="md-nav__icon md-icon"></span>
1016
1022
  </label>
1017
1023
 
1018
- <nav class="md-nav" aria-label="User Guides" data-md-level="2">
1024
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_6_label" aria-expanded="false">
1019
1025
  <label class="md-nav__title" for="__nav_2_6">
1020
1026
  <span class="md-nav__icon md-icon"></span>
1021
1027
  User Guides
@@ -1028,8 +1034,1081 @@
1028
1034
 
1029
1035
 
1030
1036
  <li class="md-nav__item">
1031
- <a href="user-guides/getting-started/creating-devices.html" class="md-nav__link">
1032
- Creating Devices
1037
+ <a href="user-guides/getting-started/creating-devices.html" class="md-nav__link">
1038
+ Creating Devices
1039
+ </a>
1040
+ </li>
1041
+
1042
+
1043
+
1044
+
1045
+
1046
+
1047
+
1048
+
1049
+
1050
+ <li class="md-nav__item">
1051
+ <a href="user-guides/custom-fields.html" class="md-nav__link">
1052
+ Custom Fields
1053
+ </a>
1054
+ </li>
1055
+
1056
+
1057
+
1058
+
1059
+
1060
+
1061
+
1062
+
1063
+
1064
+ <li class="md-nav__item">
1065
+ <a href="user-guides/getting-started/index.html" class="md-nav__link">
1066
+ Getting Started In the Web UI
1067
+ </a>
1068
+ </li>
1069
+
1070
+
1071
+
1072
+
1073
+
1074
+
1075
+
1076
+
1077
+
1078
+ <li class="md-nav__item">
1079
+ <a href="user-guides/git-data-source.html" class="md-nav__link">
1080
+ Git as a Data Source
1081
+ </a>
1082
+ </li>
1083
+
1084
+
1085
+
1086
+
1087
+
1088
+
1089
+
1090
+
1091
+
1092
+ <li class="md-nav__item">
1093
+ <a href="user-guides/graphql.html" class="md-nav__link">
1094
+ GraphQL
1095
+ </a>
1096
+ </li>
1097
+
1098
+
1099
+
1100
+
1101
+
1102
+
1103
+
1104
+
1105
+
1106
+ <li class="md-nav__item">
1107
+ <a href="user-guides/getting-started/interfaces.html" class="md-nav__link">
1108
+ Interfaces
1109
+ </a>
1110
+ </li>
1111
+
1112
+
1113
+
1114
+
1115
+
1116
+
1117
+
1118
+
1119
+
1120
+ <li class="md-nav__item">
1121
+ <a href="user-guides/getting-started/ipam.html" class="md-nav__link">
1122
+ IP Address Management
1123
+ </a>
1124
+ </li>
1125
+
1126
+
1127
+
1128
+
1129
+
1130
+
1131
+
1132
+
1133
+
1134
+ <li class="md-nav__item">
1135
+ <a href="user-guides/getting-started/platforms.html" class="md-nav__link">
1136
+ Platforms
1137
+ </a>
1138
+ </li>
1139
+
1140
+
1141
+
1142
+
1143
+
1144
+
1145
+
1146
+
1147
+
1148
+ <li class="md-nav__item">
1149
+ <a href="user-guides/getting-started/regions.html" class="md-nav__link">
1150
+ Regions
1151
+ </a>
1152
+ </li>
1153
+
1154
+
1155
+
1156
+
1157
+
1158
+
1159
+
1160
+
1161
+
1162
+ <li class="md-nav__item">
1163
+ <a href="user-guides/getting-started/tenants.html" class="md-nav__link">
1164
+ Tenants
1165
+ </a>
1166
+ </li>
1167
+
1168
+
1169
+
1170
+
1171
+
1172
+
1173
+
1174
+
1175
+
1176
+ <li class="md-nav__item">
1177
+ <a href="user-guides/getting-started/search-bar.html" class="md-nav__link">
1178
+ The Search Bar
1179
+ </a>
1180
+ </li>
1181
+
1182
+
1183
+
1184
+
1185
+
1186
+
1187
+
1188
+
1189
+
1190
+ <li class="md-nav__item">
1191
+ <a href="user-guides/git-data-source.html" class="md-nav__link">
1192
+ Git as a Data Source
1193
+ </a>
1194
+ </li>
1195
+
1196
+
1197
+
1198
+
1199
+
1200
+
1201
+
1202
+
1203
+
1204
+ <li class="md-nav__item">
1205
+ <a href="user-guides/graphql.html" class="md-nav__link">
1206
+ GraphQL
1207
+ </a>
1208
+ </li>
1209
+
1210
+
1211
+
1212
+
1213
+
1214
+
1215
+
1216
+
1217
+
1218
+ <li class="md-nav__item">
1219
+ <a href="user-guides/relationships.html" class="md-nav__link">
1220
+ Relationships
1221
+ </a>
1222
+ </li>
1223
+
1224
+
1225
+
1226
+
1227
+
1228
+
1229
+
1230
+
1231
+
1232
+ <li class="md-nav__item">
1233
+ <a href="user-guides/s3-django-storage.html" class="md-nav__link">
1234
+ Django Storages with S3
1235
+ </a>
1236
+ </li>
1237
+
1238
+
1239
+
1240
+
1241
+
1242
+
1243
+
1244
+
1245
+
1246
+ <li class="md-nav__item">
1247
+ <a href="user-guides/getting-started/vlans-and-vlan-groups.html" class="md-nav__link">
1248
+ VLANS and VLAN Groups
1249
+ </a>
1250
+ </li>
1251
+
1252
+
1253
+
1254
+
1255
+ </ul>
1256
+ </nav>
1257
+ </li>
1258
+
1259
+
1260
+
1261
+
1262
+
1263
+
1264
+
1265
+
1266
+
1267
+
1268
+ <li class="md-nav__item md-nav__item--nested">
1269
+
1270
+
1271
+
1272
+
1273
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_7" >
1274
+
1275
+
1276
+
1277
+ <label class="md-nav__link" for="__nav_2_7" id="__nav_2_7_label" tabindex="0">
1278
+ Core Functionality
1279
+ <span class="md-nav__icon md-icon"></span>
1280
+ </label>
1281
+
1282
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_7_label" aria-expanded="false">
1283
+ <label class="md-nav__title" for="__nav_2_7">
1284
+ <span class="md-nav__icon md-icon"></span>
1285
+ Core Functionality
1286
+ </label>
1287
+ <ul class="md-nav__list" data-md-scrollfix>
1288
+
1289
+
1290
+
1291
+
1292
+
1293
+
1294
+ <li class="md-nav__item">
1295
+ <a href="core-functionality/circuits.html" class="md-nav__link">
1296
+ Circuits
1297
+ </a>
1298
+ </li>
1299
+
1300
+
1301
+
1302
+
1303
+
1304
+
1305
+
1306
+
1307
+
1308
+ <li class="md-nav__item">
1309
+ <a href="core-functionality/devices.html" class="md-nav__link">
1310
+ Devices and Cabling
1311
+ </a>
1312
+ </li>
1313
+
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+
1320
+
1321
+
1322
+ <li class="md-nav__item">
1323
+ <a href="core-functionality/device-types.html" class="md-nav__link">
1324
+ Device Types
1325
+ </a>
1326
+ </li>
1327
+
1328
+
1329
+
1330
+
1331
+
1332
+
1333
+
1334
+
1335
+
1336
+ <li class="md-nav__item">
1337
+ <a href="core-functionality/ipam.html" class="md-nav__link">
1338
+ IP Address Management
1339
+ </a>
1340
+ </li>
1341
+
1342
+
1343
+
1344
+
1345
+
1346
+
1347
+
1348
+
1349
+
1350
+ <li class="md-nav__item">
1351
+ <a href="core-functionality/power.html" class="md-nav__link">
1352
+ Power Tracking
1353
+ </a>
1354
+ </li>
1355
+
1356
+
1357
+
1358
+
1359
+
1360
+
1361
+
1362
+
1363
+
1364
+ <li class="md-nav__item">
1365
+ <a href="core-functionality/secrets.html" class="md-nav__link">
1366
+ Secrets
1367
+ </a>
1368
+ </li>
1369
+
1370
+
1371
+
1372
+
1373
+
1374
+
1375
+
1376
+
1377
+
1378
+ <li class="md-nav__item">
1379
+ <a href="core-functionality/services.html" class="md-nav__link">
1380
+ Service Mapping
1381
+ </a>
1382
+ </li>
1383
+
1384
+
1385
+
1386
+
1387
+
1388
+
1389
+
1390
+
1391
+
1392
+ <li class="md-nav__item">
1393
+ <a href="core-functionality/sites-and-racks.html" class="md-nav__link">
1394
+ Sites, Locations, and Racks
1395
+ </a>
1396
+ </li>
1397
+
1398
+
1399
+
1400
+
1401
+
1402
+
1403
+
1404
+
1405
+
1406
+ <li class="md-nav__item">
1407
+ <a href="core-functionality/tenancy.html" class="md-nav__link">
1408
+ Tenancy
1409
+ </a>
1410
+ </li>
1411
+
1412
+
1413
+
1414
+
1415
+
1416
+
1417
+
1418
+
1419
+
1420
+ <li class="md-nav__item">
1421
+ <a href="core-functionality/virtualization.html" class="md-nav__link">
1422
+ Virtualization
1423
+ </a>
1424
+ </li>
1425
+
1426
+
1427
+
1428
+
1429
+
1430
+
1431
+
1432
+
1433
+
1434
+ <li class="md-nav__item">
1435
+ <a href="core-functionality/vlans.html" class="md-nav__link">
1436
+ VLAN Management
1437
+ </a>
1438
+ </li>
1439
+
1440
+
1441
+
1442
+
1443
+ </ul>
1444
+ </nav>
1445
+ </li>
1446
+
1447
+
1448
+
1449
+
1450
+
1451
+
1452
+
1453
+
1454
+
1455
+
1456
+ <li class="md-nav__item md-nav__item--nested">
1457
+
1458
+
1459
+
1460
+
1461
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8" >
1462
+
1463
+
1464
+
1465
+ <label class="md-nav__link" for="__nav_2_8" id="__nav_2_8_label" tabindex="0">
1466
+ Model Details
1467
+ <span class="md-nav__icon md-icon"></span>
1468
+ </label>
1469
+
1470
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_8_label" aria-expanded="false">
1471
+ <label class="md-nav__title" for="__nav_2_8">
1472
+ <span class="md-nav__icon md-icon"></span>
1473
+ Model Details
1474
+ </label>
1475
+ <ul class="md-nav__list" data-md-scrollfix>
1476
+
1477
+
1478
+
1479
+
1480
+
1481
+
1482
+
1483
+ <li class="md-nav__item md-nav__item--nested">
1484
+
1485
+
1486
+
1487
+
1488
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_1" >
1489
+
1490
+
1491
+
1492
+ <label class="md-nav__link" for="__nav_2_8_1" id="__nav_2_8_1_label" tabindex="0">
1493
+ Circuits
1494
+ <span class="md-nav__icon md-icon"></span>
1495
+ </label>
1496
+
1497
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_1_label" aria-expanded="false">
1498
+ <label class="md-nav__title" for="__nav_2_8_1">
1499
+ <span class="md-nav__icon md-icon"></span>
1500
+ Circuits
1501
+ </label>
1502
+ <ul class="md-nav__list" data-md-scrollfix>
1503
+
1504
+
1505
+
1506
+
1507
+
1508
+
1509
+ <li class="md-nav__item">
1510
+ <a href="models/circuits/circuit.html" class="md-nav__link">
1511
+ Circuit
1512
+ </a>
1513
+ </li>
1514
+
1515
+
1516
+
1517
+
1518
+
1519
+
1520
+
1521
+
1522
+
1523
+ <li class="md-nav__item">
1524
+ <a href="models/circuits/circuittermination.html" class="md-nav__link">
1525
+ Circuit Termination
1526
+ </a>
1527
+ </li>
1528
+
1529
+
1530
+
1531
+
1532
+
1533
+
1534
+
1535
+
1536
+
1537
+ <li class="md-nav__item">
1538
+ <a href="models/circuits/circuittype.html" class="md-nav__link">
1539
+ Circuit Type
1540
+ </a>
1541
+ </li>
1542
+
1543
+
1544
+
1545
+
1546
+
1547
+
1548
+
1549
+
1550
+
1551
+ <li class="md-nav__item">
1552
+ <a href="models/circuits/provider.html" class="md-nav__link">
1553
+ Circuit Provider
1554
+ </a>
1555
+ </li>
1556
+
1557
+
1558
+
1559
+
1560
+
1561
+
1562
+
1563
+
1564
+
1565
+ <li class="md-nav__item">
1566
+ <a href="models/circuits/providernetwork.html" class="md-nav__link">
1567
+ Circuit Provider Network
1568
+ </a>
1569
+ </li>
1570
+
1571
+
1572
+
1573
+
1574
+ </ul>
1575
+ </nav>
1576
+ </li>
1577
+
1578
+
1579
+
1580
+
1581
+
1582
+
1583
+
1584
+
1585
+
1586
+
1587
+ <li class="md-nav__item md-nav__item--nested">
1588
+
1589
+
1590
+
1591
+
1592
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_2" >
1593
+
1594
+
1595
+
1596
+ <label class="md-nav__link" for="__nav_2_8_2" id="__nav_2_8_2_label" tabindex="0">
1597
+ DCIM
1598
+ <span class="md-nav__icon md-icon"></span>
1599
+ </label>
1600
+
1601
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_2_label" aria-expanded="false">
1602
+ <label class="md-nav__title" for="__nav_2_8_2">
1603
+ <span class="md-nav__icon md-icon"></span>
1604
+ DCIM
1605
+ </label>
1606
+ <ul class="md-nav__list" data-md-scrollfix>
1607
+
1608
+
1609
+
1610
+
1611
+
1612
+
1613
+ <li class="md-nav__item">
1614
+ <a href="models/dcim/cable.html" class="md-nav__link">
1615
+ Cable
1616
+ </a>
1617
+ </li>
1618
+
1619
+
1620
+
1621
+
1622
+
1623
+
1624
+
1625
+
1626
+
1627
+ <li class="md-nav__item">
1628
+ <a href="models/dcim/consoleport.html" class="md-nav__link">
1629
+ Console Port
1630
+ </a>
1631
+ </li>
1632
+
1633
+
1634
+
1635
+
1636
+
1637
+
1638
+
1639
+
1640
+
1641
+ <li class="md-nav__item">
1642
+ <a href="models/dcim/consoleporttemplate.html" class="md-nav__link">
1643
+ Console Port Template
1644
+ </a>
1645
+ </li>
1646
+
1647
+
1648
+
1649
+
1650
+
1651
+
1652
+
1653
+
1654
+
1655
+ <li class="md-nav__item">
1656
+ <a href="models/dcim/consoleserverport.html" class="md-nav__link">
1657
+ Console Server Port
1658
+ </a>
1659
+ </li>
1660
+
1661
+
1662
+
1663
+
1664
+
1665
+
1666
+
1667
+
1668
+
1669
+ <li class="md-nav__item">
1670
+ <a href="models/dcim/consoleserverporttemplate.html" class="md-nav__link">
1671
+ Console Server Port Template
1672
+ </a>
1673
+ </li>
1674
+
1675
+
1676
+
1677
+
1678
+
1679
+
1680
+
1681
+
1682
+
1683
+ <li class="md-nav__item">
1684
+ <a href="models/dcim/device.html" class="md-nav__link">
1685
+ Device
1686
+ </a>
1687
+ </li>
1688
+
1689
+
1690
+
1691
+
1692
+
1693
+
1694
+
1695
+
1696
+
1697
+ <li class="md-nav__item">
1698
+ <a href="models/dcim/devicebay.html" class="md-nav__link">
1699
+ Device Bay
1700
+ </a>
1701
+ </li>
1702
+
1703
+
1704
+
1705
+
1706
+
1707
+
1708
+
1709
+
1710
+
1711
+ <li class="md-nav__item">
1712
+ <a href="models/dcim/devicebaytemplate.html" class="md-nav__link">
1713
+ Device Bay Template
1714
+ </a>
1715
+ </li>
1716
+
1717
+
1718
+
1719
+
1720
+
1721
+
1722
+
1723
+
1724
+
1725
+ <li class="md-nav__item">
1726
+ <a href="models/dcim/deviceredundancygroup.html" class="md-nav__link">
1727
+ Device Redundancy Group
1728
+ </a>
1729
+ </li>
1730
+
1731
+
1732
+
1733
+
1734
+
1735
+
1736
+
1737
+
1738
+
1739
+ <li class="md-nav__item">
1740
+ <a href="models/dcim/devicetype.html" class="md-nav__link">
1741
+ Device Type
1742
+ </a>
1743
+ </li>
1744
+
1745
+
1746
+
1747
+
1748
+
1749
+
1750
+
1751
+
1752
+
1753
+ <li class="md-nav__item">
1754
+ <a href="models/dcim/frontport.html" class="md-nav__link">
1755
+ Front Port
1756
+ </a>
1757
+ </li>
1758
+
1759
+
1760
+
1761
+
1762
+
1763
+
1764
+
1765
+
1766
+
1767
+ <li class="md-nav__item">
1768
+ <a href="models/dcim/frontporttemplate.html" class="md-nav__link">
1769
+ Front Port Template
1770
+ </a>
1771
+ </li>
1772
+
1773
+
1774
+
1775
+
1776
+
1777
+
1778
+
1779
+
1780
+
1781
+ <li class="md-nav__item">
1782
+ <a href="models/dcim/interface.html" class="md-nav__link">
1783
+ Interface
1784
+ </a>
1785
+ </li>
1786
+
1787
+
1788
+
1789
+
1790
+
1791
+
1792
+
1793
+
1794
+
1795
+ <li class="md-nav__item">
1796
+ <a href="models/dcim/interfacetemplate.html" class="md-nav__link">
1797
+ Interface Template
1798
+ </a>
1799
+ </li>
1800
+
1801
+
1802
+
1803
+
1804
+
1805
+
1806
+
1807
+
1808
+
1809
+ <li class="md-nav__item">
1810
+ <a href="models/dcim/inventoryitem.html" class="md-nav__link">
1811
+ Inventory Item
1812
+ </a>
1813
+ </li>
1814
+
1815
+
1816
+
1817
+
1818
+
1819
+
1820
+
1821
+
1822
+
1823
+ <li class="md-nav__item">
1824
+ <a href="models/dcim/location.html" class="md-nav__link">
1825
+ Location
1826
+ </a>
1827
+ </li>
1828
+
1829
+
1830
+
1831
+
1832
+
1833
+
1834
+
1835
+
1836
+
1837
+ <li class="md-nav__item">
1838
+ <a href="models/dcim/locationtype.html" class="md-nav__link">
1839
+ Location Type
1840
+ </a>
1841
+ </li>
1842
+
1843
+
1844
+
1845
+
1846
+
1847
+
1848
+
1849
+
1850
+
1851
+ <li class="md-nav__item">
1852
+ <a href="models/dcim/manufacturer.html" class="md-nav__link">
1853
+ Manufacturer
1854
+ </a>
1855
+ </li>
1856
+
1857
+
1858
+
1859
+
1860
+
1861
+
1862
+
1863
+
1864
+
1865
+ <li class="md-nav__item">
1866
+ <a href="models/dcim/platform.html" class="md-nav__link">
1867
+ Platform
1868
+ </a>
1869
+ </li>
1870
+
1871
+
1872
+
1873
+
1874
+
1875
+
1876
+
1877
+
1878
+
1879
+ <li class="md-nav__item">
1880
+ <a href="models/dcim/powerfeed.html" class="md-nav__link">
1881
+ Power Feed
1882
+ </a>
1883
+ </li>
1884
+
1885
+
1886
+
1887
+
1888
+
1889
+
1890
+
1891
+
1892
+
1893
+ <li class="md-nav__item">
1894
+ <a href="models/dcim/poweroutlet.html" class="md-nav__link">
1895
+ Power Outlet
1896
+ </a>
1897
+ </li>
1898
+
1899
+
1900
+
1901
+
1902
+
1903
+
1904
+
1905
+
1906
+
1907
+ <li class="md-nav__item">
1908
+ <a href="models/dcim/poweroutlettemplate.html" class="md-nav__link">
1909
+ Power Outlet Template
1910
+ </a>
1911
+ </li>
1912
+
1913
+
1914
+
1915
+
1916
+
1917
+
1918
+
1919
+
1920
+
1921
+ <li class="md-nav__item">
1922
+ <a href="models/dcim/powerpanel.html" class="md-nav__link">
1923
+ Power Panel
1924
+ </a>
1925
+ </li>
1926
+
1927
+
1928
+
1929
+
1930
+
1931
+
1932
+
1933
+
1934
+
1935
+ <li class="md-nav__item">
1936
+ <a href="models/dcim/powerport.html" class="md-nav__link">
1937
+ Power Port
1938
+ </a>
1939
+ </li>
1940
+
1941
+
1942
+
1943
+
1944
+
1945
+
1946
+
1947
+
1948
+
1949
+ <li class="md-nav__item">
1950
+ <a href="models/dcim/powerporttemplate.html" class="md-nav__link">
1951
+ Power Port Template
1952
+ </a>
1953
+ </li>
1954
+
1955
+
1956
+
1957
+
1958
+
1959
+
1960
+
1961
+
1962
+
1963
+ <li class="md-nav__item">
1964
+ <a href="models/dcim/rack.html" class="md-nav__link">
1965
+ Rack
1966
+ </a>
1967
+ </li>
1968
+
1969
+
1970
+
1971
+
1972
+
1973
+
1974
+
1975
+
1976
+
1977
+ <li class="md-nav__item">
1978
+ <a href="models/dcim/rackgroup.html" class="md-nav__link">
1979
+ Rack Group
1980
+ </a>
1981
+ </li>
1982
+
1983
+
1984
+
1985
+
1986
+
1987
+
1988
+
1989
+
1990
+
1991
+ <li class="md-nav__item">
1992
+ <a href="models/dcim/rackreservation.html" class="md-nav__link">
1993
+ Rack Reservation
1994
+ </a>
1995
+ </li>
1996
+
1997
+
1998
+
1999
+
2000
+
2001
+
2002
+
2003
+
2004
+
2005
+ <li class="md-nav__item">
2006
+ <a href="models/dcim/rearport.html" class="md-nav__link">
2007
+ Rear Port
2008
+ </a>
2009
+ </li>
2010
+
2011
+
2012
+
2013
+
2014
+
2015
+
2016
+
2017
+
2018
+
2019
+ <li class="md-nav__item">
2020
+ <a href="models/dcim/rearporttemplate.html" class="md-nav__link">
2021
+ Rear Port Template
2022
+ </a>
2023
+ </li>
2024
+
2025
+
2026
+
2027
+
2028
+
2029
+
2030
+
2031
+
2032
+
2033
+ <li class="md-nav__item">
2034
+ <a href="models/dcim/virtualchassis.html" class="md-nav__link">
2035
+ Virtual Chassis
2036
+ </a>
2037
+ </li>
2038
+
2039
+
2040
+
2041
+
2042
+ </ul>
2043
+ </nav>
2044
+ </li>
2045
+
2046
+
2047
+
2048
+
2049
+
2050
+
2051
+
2052
+
2053
+
2054
+
2055
+ <li class="md-nav__item md-nav__item--nested">
2056
+
2057
+
2058
+
2059
+
2060
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_3" >
2061
+
2062
+
2063
+
2064
+ <label class="md-nav__link" for="__nav_2_8_3" id="__nav_2_8_3_label" tabindex="0">
2065
+ Extras
2066
+ <span class="md-nav__icon md-icon"></span>
2067
+ </label>
2068
+
2069
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_3_label" aria-expanded="false">
2070
+ <label class="md-nav__title" for="__nav_2_8_3">
2071
+ <span class="md-nav__icon md-icon"></span>
2072
+ Extras
2073
+ </label>
2074
+ <ul class="md-nav__list" data-md-scrollfix>
2075
+
2076
+
2077
+
2078
+
2079
+
2080
+
2081
+ <li class="md-nav__item">
2082
+ <a href="models/extras/configcontext.html" class="md-nav__link">
2083
+ Config Context
2084
+ </a>
2085
+ </li>
2086
+
2087
+
2088
+
2089
+
2090
+
2091
+
2092
+
2093
+
2094
+
2095
+ <li class="md-nav__item">
2096
+ <a href="models/extras/configcontextschema.html" class="md-nav__link">
2097
+ Config Context Schema
2098
+ </a>
2099
+ </li>
2100
+
2101
+
2102
+
2103
+
2104
+
2105
+
2106
+
2107
+
2108
+
2109
+ <li class="md-nav__item">
2110
+ <a href="models/extras/graphqlquery.html" class="md-nav__link">
2111
+ GraphQL Query
1033
2112
  </a>
1034
2113
  </li>
1035
2114
 
@@ -1042,8 +2121,8 @@
1042
2121
 
1043
2122
 
1044
2123
  <li class="md-nav__item">
1045
- <a href="user-guides/custom-fields.html" class="md-nav__link">
1046
- Custom Fields
2124
+ <a href="models/extras/imageattachment.html" class="md-nav__link">
2125
+ Image Attachment
1047
2126
  </a>
1048
2127
  </li>
1049
2128
 
@@ -1056,8 +2135,8 @@
1056
2135
 
1057
2136
 
1058
2137
  <li class="md-nav__item">
1059
- <a href="user-guides/getting-started/index.html" class="md-nav__link">
1060
- Getting Started In the Web UI
2138
+ <a href="models/extras/job.html" class="md-nav__link">
2139
+ Job
1061
2140
  </a>
1062
2141
  </li>
1063
2142
 
@@ -1070,8 +2149,8 @@
1070
2149
 
1071
2150
 
1072
2151
  <li class="md-nav__item">
1073
- <a href="user-guides/git-data-source.html" class="md-nav__link">
1074
- Git as a Data Source
2152
+ <a href="models/extras/joblogentry.html" class="md-nav__link">
2153
+ Job Log Entry
1075
2154
  </a>
1076
2155
  </li>
1077
2156
 
@@ -1084,8 +2163,8 @@
1084
2163
 
1085
2164
 
1086
2165
  <li class="md-nav__item">
1087
- <a href="user-guides/graphql.html" class="md-nav__link">
1088
- GraphQL
2166
+ <a href="models/extras/jobresult.html" class="md-nav__link">
2167
+ Job Result
1089
2168
  </a>
1090
2169
  </li>
1091
2170
 
@@ -1098,8 +2177,8 @@
1098
2177
 
1099
2178
 
1100
2179
  <li class="md-nav__item">
1101
- <a href="user-guides/getting-started/interfaces.html" class="md-nav__link">
1102
- Interfaces
2180
+ <a href="models/extras/role.html" class="md-nav__link">
2181
+ Role
1103
2182
  </a>
1104
2183
  </li>
1105
2184
 
@@ -1112,8 +2191,8 @@
1112
2191
 
1113
2192
 
1114
2193
  <li class="md-nav__item">
1115
- <a href="user-guides/getting-started/ipam.html" class="md-nav__link">
1116
- IP Address Management
2194
+ <a href="models/extras/secret.html" class="md-nav__link">
2195
+ Secret
1117
2196
  </a>
1118
2197
  </li>
1119
2198
 
@@ -1126,22 +2205,56 @@
1126
2205
 
1127
2206
 
1128
2207
  <li class="md-nav__item">
1129
- <a href="user-guides/getting-started/platforms.html" class="md-nav__link">
1130
- Platforms
2208
+ <a href="models/extras/secretsgroup.html" class="md-nav__link">
2209
+ Secrets group
1131
2210
  </a>
1132
2211
  </li>
1133
2212
 
1134
2213
 
1135
2214
 
1136
2215
 
2216
+ </ul>
2217
+ </nav>
2218
+ </li>
2219
+
2220
+
2221
+
2222
+
2223
+
2224
+
2225
+
2226
+
2227
+
2228
+
2229
+ <li class="md-nav__item md-nav__item--nested">
2230
+
2231
+
2232
+
2233
+
2234
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_4" >
2235
+
2236
+
2237
+
2238
+ <label class="md-nav__link" for="__nav_2_8_4" id="__nav_2_8_4_label" tabindex="0">
2239
+ IPAM
2240
+ <span class="md-nav__icon md-icon"></span>
2241
+ </label>
2242
+
2243
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_4_label" aria-expanded="false">
2244
+ <label class="md-nav__title" for="__nav_2_8_4">
2245
+ <span class="md-nav__icon md-icon"></span>
2246
+ IPAM
2247
+ </label>
2248
+ <ul class="md-nav__list" data-md-scrollfix>
2249
+
1137
2250
 
1138
2251
 
1139
2252
 
1140
2253
 
1141
2254
 
1142
2255
  <li class="md-nav__item">
1143
- <a href="user-guides/getting-started/regions.html" class="md-nav__link">
1144
- Regions
2256
+ <a href="models/ipam/ipaddress.html" class="md-nav__link">
2257
+ IP Address
1145
2258
  </a>
1146
2259
  </li>
1147
2260
 
@@ -1154,8 +2267,8 @@
1154
2267
 
1155
2268
 
1156
2269
  <li class="md-nav__item">
1157
- <a href="user-guides/getting-started/tenants.html" class="md-nav__link">
1158
- Tenants
2270
+ <a href="models/ipam/prefix.html" class="md-nav__link">
2271
+ Prefix
1159
2272
  </a>
1160
2273
  </li>
1161
2274
 
@@ -1168,8 +2281,8 @@
1168
2281
 
1169
2282
 
1170
2283
  <li class="md-nav__item">
1171
- <a href="user-guides/getting-started/search-bar.html" class="md-nav__link">
1172
- The Search Bar
2284
+ <a href="models/ipam/rir.html" class="md-nav__link">
2285
+ Rir
1173
2286
  </a>
1174
2287
  </li>
1175
2288
 
@@ -1182,8 +2295,8 @@
1182
2295
 
1183
2296
 
1184
2297
  <li class="md-nav__item">
1185
- <a href="user-guides/git-data-source.html" class="md-nav__link">
1186
- Git as a Data Source
2298
+ <a href="models/ipam/routetarget.html" class="md-nav__link">
2299
+ Route Target
1187
2300
  </a>
1188
2301
  </li>
1189
2302
 
@@ -1196,8 +2309,8 @@
1196
2309
 
1197
2310
 
1198
2311
  <li class="md-nav__item">
1199
- <a href="user-guides/graphql.html" class="md-nav__link">
1200
- GraphQL
2312
+ <a href="models/ipam/service.html" class="md-nav__link">
2313
+ Service
1201
2314
  </a>
1202
2315
  </li>
1203
2316
 
@@ -1210,8 +2323,8 @@
1210
2323
 
1211
2324
 
1212
2325
  <li class="md-nav__item">
1213
- <a href="user-guides/relationships.html" class="md-nav__link">
1214
- Relationships
2326
+ <a href="models/ipam/vlan.html" class="md-nav__link">
2327
+ VLAN
1215
2328
  </a>
1216
2329
  </li>
1217
2330
 
@@ -1224,8 +2337,8 @@
1224
2337
 
1225
2338
 
1226
2339
  <li class="md-nav__item">
1227
- <a href="user-guides/s3-django-storage.html" class="md-nav__link">
1228
- Django Storages with S3
2340
+ <a href="models/ipam/vlangroup.html" class="md-nav__link">
2341
+ VLAN Group
1229
2342
  </a>
1230
2343
  </li>
1231
2344
 
@@ -1238,8 +2351,8 @@
1238
2351
 
1239
2352
 
1240
2353
  <li class="md-nav__item">
1241
- <a href="user-guides/getting-started/vlans-and-vlan-groups.html" class="md-nav__link">
1242
- VLANS and VLAN Groups
2354
+ <a href="models/ipam/vrf.html" class="md-nav__link">
2355
+ VRF
1243
2356
  </a>
1244
2357
  </li>
1245
2358
 
@@ -1262,20 +2375,21 @@
1262
2375
  <li class="md-nav__item md-nav__item--nested">
1263
2376
 
1264
2377
 
1265
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_7" type="checkbox" id="__nav_2_7" >
1266
2378
 
1267
2379
 
2380
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_5" >
1268
2381
 
1269
2382
 
1270
- <label class="md-nav__link" for="__nav_2_7">
1271
- Core Functionality
2383
+
2384
+ <label class="md-nav__link" for="__nav_2_8_5" id="__nav_2_8_5_label" tabindex="0">
2385
+ Tenancy
1272
2386
  <span class="md-nav__icon md-icon"></span>
1273
2387
  </label>
1274
2388
 
1275
- <nav class="md-nav" aria-label="Core Functionality" data-md-level="2">
1276
- <label class="md-nav__title" for="__nav_2_7">
2389
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_5_label" aria-expanded="false">
2390
+ <label class="md-nav__title" for="__nav_2_8_5">
1277
2391
  <span class="md-nav__icon md-icon"></span>
1278
- Core Functionality
2392
+ Tenancy
1279
2393
  </label>
1280
2394
  <ul class="md-nav__list" data-md-scrollfix>
1281
2395
 
@@ -1285,8 +2399,8 @@
1285
2399
 
1286
2400
 
1287
2401
  <li class="md-nav__item">
1288
- <a href="core-functionality/circuits.html" class="md-nav__link">
1289
- Circuits
2402
+ <a href="models/tenancy/tenant.html" class="md-nav__link">
2403
+ Tenant
1290
2404
  </a>
1291
2405
  </li>
1292
2406
 
@@ -1299,27 +2413,47 @@
1299
2413
 
1300
2414
 
1301
2415
  <li class="md-nav__item">
1302
- <a href="core-functionality/devices.html" class="md-nav__link">
1303
- Devices and Cabling
2416
+ <a href="models/tenancy/tenantgroup.html" class="md-nav__link">
2417
+ Tenant Group
1304
2418
  </a>
1305
2419
  </li>
1306
2420
 
1307
2421
 
1308
2422
 
1309
2423
 
2424
+ </ul>
2425
+ </nav>
2426
+ </li>
2427
+
2428
+
2429
+
2430
+
1310
2431
 
1311
2432
 
1312
2433
 
1313
2434
 
1314
2435
 
1315
- <li class="md-nav__item">
1316
- <a href="core-functionality/device-types.html" class="md-nav__link">
1317
- Device Types
1318
- </a>
1319
- </li>
1320
-
1321
-
1322
-
2436
+
2437
+ <li class="md-nav__item md-nav__item--nested">
2438
+
2439
+
2440
+
2441
+
2442
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_6" >
2443
+
2444
+
2445
+
2446
+ <label class="md-nav__link" for="__nav_2_8_6" id="__nav_2_8_6_label" tabindex="0">
2447
+ Users
2448
+ <span class="md-nav__icon md-icon"></span>
2449
+ </label>
2450
+
2451
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_6_label" aria-expanded="false">
2452
+ <label class="md-nav__title" for="__nav_2_8_6">
2453
+ <span class="md-nav__icon md-icon"></span>
2454
+ Users
2455
+ </label>
2456
+ <ul class="md-nav__list" data-md-scrollfix>
1323
2457
 
1324
2458
 
1325
2459
 
@@ -1327,8 +2461,8 @@
1327
2461
 
1328
2462
 
1329
2463
  <li class="md-nav__item">
1330
- <a href="core-functionality/ipam.html" class="md-nav__link">
1331
- IP Address Management
2464
+ <a href="models/users/objectpermission.html" class="md-nav__link">
2465
+ Object Permission
1332
2466
  </a>
1333
2467
  </li>
1334
2468
 
@@ -1341,27 +2475,47 @@
1341
2475
 
1342
2476
 
1343
2477
  <li class="md-nav__item">
1344
- <a href="core-functionality/power.html" class="md-nav__link">
1345
- Power Tracking
2478
+ <a href="models/users/token.html" class="md-nav__link">
2479
+ Token
1346
2480
  </a>
1347
2481
  </li>
1348
2482
 
1349
2483
 
1350
2484
 
1351
2485
 
2486
+ </ul>
2487
+ </nav>
2488
+ </li>
2489
+
2490
+
2491
+
2492
+
1352
2493
 
1353
2494
 
1354
2495
 
1355
2496
 
1356
2497
 
1357
- <li class="md-nav__item">
1358
- <a href="core-functionality/secrets.html" class="md-nav__link">
1359
- Secrets
1360
- </a>
1361
- </li>
1362
-
1363
-
1364
-
2498
+
2499
+ <li class="md-nav__item md-nav__item--nested">
2500
+
2501
+
2502
+
2503
+
2504
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_7" >
2505
+
2506
+
2507
+
2508
+ <label class="md-nav__link" for="__nav_2_8_7" id="__nav_2_8_7_label" tabindex="0">
2509
+ Virtualization
2510
+ <span class="md-nav__icon md-icon"></span>
2511
+ </label>
2512
+
2513
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_7_label" aria-expanded="false">
2514
+ <label class="md-nav__title" for="__nav_2_8_7">
2515
+ <span class="md-nav__icon md-icon"></span>
2516
+ Virtualization
2517
+ </label>
2518
+ <ul class="md-nav__list" data-md-scrollfix>
1365
2519
 
1366
2520
 
1367
2521
 
@@ -1369,8 +2523,8 @@
1369
2523
 
1370
2524
 
1371
2525
  <li class="md-nav__item">
1372
- <a href="core-functionality/services.html" class="md-nav__link">
1373
- Service Mapping
2526
+ <a href="models/virtualization/cluster.html" class="md-nav__link">
2527
+ Cluster
1374
2528
  </a>
1375
2529
  </li>
1376
2530
 
@@ -1383,8 +2537,8 @@
1383
2537
 
1384
2538
 
1385
2539
  <li class="md-nav__item">
1386
- <a href="core-functionality/sites-and-racks.html" class="md-nav__link">
1387
- Sites, Locations, and Racks
2540
+ <a href="models/virtualization/clustergroup.html" class="md-nav__link">
2541
+ Cluster Group
1388
2542
  </a>
1389
2543
  </li>
1390
2544
 
@@ -1397,8 +2551,8 @@
1397
2551
 
1398
2552
 
1399
2553
  <li class="md-nav__item">
1400
- <a href="core-functionality/tenancy.html" class="md-nav__link">
1401
- Tenancy
2554
+ <a href="models/virtualization/clustertype.html" class="md-nav__link">
2555
+ Cluster Type
1402
2556
  </a>
1403
2557
  </li>
1404
2558
 
@@ -1411,8 +2565,8 @@
1411
2565
 
1412
2566
 
1413
2567
  <li class="md-nav__item">
1414
- <a href="core-functionality/virtualization.html" class="md-nav__link">
1415
- Virtualization
2568
+ <a href="models/virtualization/virtualmachine.html" class="md-nav__link">
2569
+ Virtual Machine
1416
2570
  </a>
1417
2571
  </li>
1418
2572
 
@@ -1425,8 +2579,8 @@
1425
2579
 
1426
2580
 
1427
2581
  <li class="md-nav__item">
1428
- <a href="core-functionality/vlans.html" class="md-nav__link">
1429
- VLAN Management
2582
+ <a href="models/virtualization/vminterface.html" class="md-nav__link">
2583
+ VM Interface
1430
2584
  </a>
1431
2585
  </li>
1432
2586
 
@@ -1440,6 +2594,13 @@
1440
2594
 
1441
2595
 
1442
2596
 
2597
+ </ul>
2598
+ </nav>
2599
+ </li>
2600
+
2601
+
2602
+
2603
+
1443
2604
 
1444
2605
 
1445
2606
 
@@ -1449,18 +2610,19 @@
1449
2610
  <li class="md-nav__item md-nav__item--nested">
1450
2611
 
1451
2612
 
1452
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_8" type="checkbox" id="__nav_2_8" >
1453
2613
 
1454
2614
 
2615
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_9" >
2616
+
1455
2617
 
1456
2618
 
1457
- <label class="md-nav__link" for="__nav_2_8">
2619
+ <label class="md-nav__link" for="__nav_2_9" id="__nav_2_9_label" tabindex="0">
1458
2620
  Additional Features
1459
2621
  <span class="md-nav__icon md-icon"></span>
1460
2622
  </label>
1461
2623
 
1462
- <nav class="md-nav" aria-label="Additional Features" data-md-level="2">
1463
- <label class="md-nav__title" for="__nav_2_8">
2624
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_9_label" aria-expanded="false">
2625
+ <label class="md-nav__title" for="__nav_2_9">
1464
2626
  <span class="md-nav__icon md-icon"></span>
1465
2627
  Additional Features
1466
2628
  </label>
@@ -1790,18 +2952,19 @@
1790
2952
  <li class="md-nav__item md-nav__item--nested">
1791
2953
 
1792
2954
 
1793
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_9" type="checkbox" id="__nav_2_9" >
1794
2955
 
1795
2956
 
2957
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_10" >
1796
2958
 
1797
2959
 
1798
- <label class="md-nav__link" for="__nav_2_9">
2960
+
2961
+ <label class="md-nav__link" for="__nav_2_10" id="__nav_2_10_label" tabindex="0">
1799
2962
  REST API
1800
2963
  <span class="md-nav__icon md-icon"></span>
1801
2964
  </label>
1802
2965
 
1803
- <nav class="md-nav" aria-label="REST API" data-md-level="2">
1804
- <label class="md-nav__title" for="__nav_2_9">
2966
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_10_label" aria-expanded="false">
2967
+ <label class="md-nav__title" for="__nav_2_10">
1805
2968
  <span class="md-nav__icon md-icon"></span>
1806
2969
  REST API
1807
2970
  </label>
@@ -1849,6 +3012,20 @@
1849
3012
 
1850
3013
 
1851
3014
 
3015
+
3016
+
3017
+
3018
+
3019
+
3020
+ <li class="md-nav__item">
3021
+ <a href="rest-api/ui-related-endpoints.html" class="md-nav__link">
3022
+ UI Endpoints
3023
+ </a>
3024
+ </li>
3025
+
3026
+
3027
+
3028
+
1852
3029
  </ul>
1853
3030
  </nav>
1854
3031
  </li>
@@ -1865,18 +3042,19 @@
1865
3042
  <li class="md-nav__item md-nav__item--nested">
1866
3043
 
1867
3044
 
1868
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_10" type="checkbox" id="__nav_2_10" >
1869
3045
 
1870
3046
 
3047
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_11" >
3048
+
1871
3049
 
1872
3050
 
1873
- <label class="md-nav__link" for="__nav_2_10">
3051
+ <label class="md-nav__link" for="__nav_2_11" id="__nav_2_11_label" tabindex="0">
1874
3052
  GraphQL API
1875
3053
  <span class="md-nav__icon md-icon"></span>
1876
3054
  </label>
1877
3055
 
1878
- <nav class="md-nav" aria-label="GraphQL API" data-md-level="2">
1879
- <label class="md-nav__title" for="__nav_2_10">
3056
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_11_label" aria-expanded="false">
3057
+ <label class="md-nav__title" for="__nav_2_11">
1880
3058
  <span class="md-nav__icon md-icon"></span>
1881
3059
  GraphQL API
1882
3060
  </label>
@@ -1934,17 +3112,18 @@
1934
3112
  <li class="md-nav__item md-nav__item--nested">
1935
3113
 
1936
3114
 
1937
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3" type="checkbox" id="__nav_3" >
1938
3115
 
1939
3116
 
3117
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
3118
+
1940
3119
 
1941
3120
 
1942
- <label class="md-nav__link" for="__nav_3">
3121
+ <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
1943
3122
  App Developer Guide
1944
3123
  <span class="md-nav__icon md-icon"></span>
1945
3124
  </label>
1946
3125
 
1947
- <nav class="md-nav" aria-label="App Developer Guide" data-md-level="1">
3126
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
1948
3127
  <label class="md-nav__title" for="__nav_3">
1949
3128
  <span class="md-nav__icon md-icon"></span>
1950
3129
  App Developer Guide
@@ -1988,17 +3167,18 @@
1988
3167
  <li class="md-nav__item md-nav__item--nested">
1989
3168
 
1990
3169
 
1991
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3_3" type="checkbox" id="__nav_3_3" >
1992
3170
 
1993
3171
 
3172
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_3" >
1994
3173
 
1995
3174
 
1996
- <label class="md-nav__link" for="__nav_3_3">
3175
+
3176
+ <label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
1997
3177
  Code Reference
1998
3178
  <span class="md-nav__icon md-icon"></span>
1999
3179
  </label>
2000
3180
 
2001
- <nav class="md-nav" aria-label="Code Reference" data-md-level="2">
3181
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
2002
3182
  <label class="md-nav__title" for="__nav_3_3">
2003
3183
  <span class="md-nav__icon md-icon"></span>
2004
3184
  Code Reference
@@ -2225,17 +3405,18 @@
2225
3405
  <li class="md-nav__item md-nav__item--nested">
2226
3406
 
2227
3407
 
2228
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_4" type="checkbox" id="__nav_4" >
2229
3408
 
2230
3409
 
3410
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
3411
+
2231
3412
 
2232
3413
 
2233
- <label class="md-nav__link" for="__nav_4">
3414
+ <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
2234
3415
  Core Developer Guide
2235
3416
  <span class="md-nav__icon md-icon"></span>
2236
3417
  </label>
2237
3418
 
2238
- <nav class="md-nav" aria-label="Core Developer Guide" data-md-level="1">
3419
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
2239
3420
  <label class="md-nav__title" for="__nav_4">
2240
3421
  <span class="md-nav__icon md-icon"></span>
2241
3422
  Core Developer Guide
@@ -2469,17 +3650,18 @@
2469
3650
  <li class="md-nav__item md-nav__item--nested">
2470
3651
 
2471
3652
 
2472
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5" type="checkbox" id="__nav_5" >
2473
3653
 
2474
3654
 
3655
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
2475
3656
 
2476
3657
 
2477
- <label class="md-nav__link" for="__nav_5">
3658
+
3659
+ <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
2478
3660
  Release Notes
2479
3661
  <span class="md-nav__icon md-icon"></span>
2480
3662
  </label>
2481
3663
 
2482
- <nav class="md-nav" aria-label="Release Notes" data-md-level="1">
3664
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
2483
3665
  <label class="md-nav__title" for="__nav_5">
2484
3666
  <span class="md-nav__icon md-icon"></span>
2485
3667
  Release Notes
@@ -2615,17 +3797,18 @@
2615
3797
  <li class="md-nav__item md-nav__item--nested">
2616
3798
 
2617
3799
 
2618
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6" type="checkbox" id="__nav_6" >
2619
3800
 
2620
3801
 
3802
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
3803
+
2621
3804
 
2622
3805
 
2623
- <label class="md-nav__link" for="__nav_6">
3806
+ <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
2624
3807
  Nautobot Apps
2625
3808
  <span class="md-nav__icon md-icon"></span>
2626
3809
  </label>
2627
3810
 
2628
- <nav class="md-nav" aria-label="Nautobot Apps" data-md-level="1">
3811
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
2629
3812
  <label class="md-nav__title" for="__nav_6">
2630
3813
  <span class="md-nav__icon md-icon"></span>
2631
3814
  Nautobot Apps
@@ -2655,17 +3838,18 @@
2655
3838
  <li class="md-nav__item md-nav__item--nested">
2656
3839
 
2657
3840
 
2658
- <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6_2" type="checkbox" id="__nav_6_2" >
2659
3841
 
2660
3842
 
3843
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_2" >
2661
3844
 
2662
3845
 
2663
- <label class="md-nav__link" for="__nav_6_2">
3846
+
3847
+ <label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
2664
3848
  Network to Code App Docs
2665
3849
  <span class="md-nav__icon md-icon"></span>
2666
3850
  </label>
2667
3851
 
2668
- <nav class="md-nav" aria-label="Network to Code App Docs" data-md-level="2">
3852
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
2669
3853
  <label class="md-nav__title" for="__nav_6_2">
2670
3854
  <span class="md-nav__icon md-icon"></span>
2671
3855
  Network to Code App Docs
@@ -2692,8 +3876,8 @@
2692
3876
 
2693
3877
 
2694
3878
  <li class="md-nav__item">
2695
- <a href="https://nautobot-plugin-firewall-models.readthedocs.io/en/latest/" class="md-nav__link">
2696
- Nautobot Firewall Models
3879
+ <a href="https://docs.nautobot.com/projects/circuit-maintenance/en/latest/" class="md-nav__link">
3880
+ Nautobot Circuit Maintenance
2697
3881
  </a>
2698
3882
  </li>
2699
3883
 
@@ -2706,8 +3890,36 @@
2706
3890
 
2707
3891
 
2708
3892
  <li class="md-nav__item">
2709
- <a href="https://docs.nautobot.com/projects/plugin-nornir/en/latest/" class="md-nav__link">
2710
- Nautobot Plugin Nornir
3893
+ <a href="https://docs.nautobot.com/projects/device-lifecycle/en/latest/" class="md-nav__link">
3894
+ Nautobot Device LifeCycle Management
3895
+ </a>
3896
+ </li>
3897
+
3898
+
3899
+
3900
+
3901
+
3902
+
3903
+
3904
+
3905
+
3906
+ <li class="md-nav__item">
3907
+ <a href="https://docs.nautobot.com/projects/device-onboarding/en/latest/" class="md-nav__link">
3908
+ Nautobot Device Onboarding
3909
+ </a>
3910
+ </li>
3911
+
3912
+
3913
+
3914
+
3915
+
3916
+
3917
+
3918
+
3919
+
3920
+ <li class="md-nav__item">
3921
+ <a href="https://nautobot-plugin-firewall-models.readthedocs.io/en/latest/" class="md-nav__link">
3922
+ Nautobot Firewall Models
2711
3923
  </a>
2712
3924
  </li>
2713
3925
 
@@ -2734,7 +3946,21 @@
2734
3946
 
2735
3947
 
2736
3948
  <li class="md-nav__item">
2737
- <a href="https://nautobot-plugin-ssot.readthedocs.io/en/latest/" class="md-nav__link">
3949
+ <a href="https://docs.nautobot.com/projects/plugin-nornir/en/latest/" class="md-nav__link">
3950
+ Nautobot Plugin Nornir
3951
+ </a>
3952
+ </li>
3953
+
3954
+
3955
+
3956
+
3957
+
3958
+
3959
+
3960
+
3961
+
3962
+ <li class="md-nav__item">
3963
+ <a href="https://docs.nautobot.com/projects/ssot/en/latest/" class="md-nav__link">
2738
3964
  Nautobot Single Source of Truth
2739
3965
  </a>
2740
3966
  </li>
@@ -2909,10 +4135,8 @@
2909
4135
 
2910
4136
 
2911
4137
 
2912
- <a href="https://github.com/nautobot/nautobot/edit/main/nautobot/docs/index.md" title="Edit this page" class="md-content__button md-icon">
2913
-
2914
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25Z"/></svg>
2915
- </a>
4138
+
4139
+
2916
4140
 
2917
4141
 
2918
4142
  <h1 id="overview">Overview<a class="headerlink" href="#overview" title="Permanent link">&para;</a></h1>
@@ -2991,7 +4215,7 @@
2991
4215
  </tr>
2992
4216
  <tr>
2993
4217
  <td>Cache</td>
2994
- <td>Redis/django-cacheops</td>
4218
+ <td>Django/Redis</td>
2995
4219
  </tr>
2996
4220
  <tr>
2997
4221
  <td>Task queuing</td>
@@ -3009,12 +4233,15 @@
3009
4233
  </div>
3010
4234
  <div class="admonition version-removed">
3011
4235
  <p class="admonition-title">Removed in version 2.0.0</p>
3012
- <p>django-rq support was removed.</p>
4236
+ <ul>
4237
+ <li><code>django-rq</code> support was removed.</li>
4238
+ <li><code>django-cacheops</code> usage was removed and replaced with Django's native caching features.</li>
4239
+ </ul>
3013
4240
  </div>
3014
4241
  <p>The following diagram displays how data travels through Nautobot's application stack.</p>
3015
4242
  <p><img alt="Application stack diagram" src="media/nautobot_application_stack_low_level.png" title="Application stack diagram" /></p>
3016
4243
  <h2 id="supported-python-versions">Supported Python Versions<a class="headerlink" href="#supported-python-versions" title="Permanent link">&para;</a></h2>
3017
- <p>Nautobot supports Python 3.7, 3.8, 3.9, and 3.10.</p>
4244
+ <p>Nautobot supports Python 3.8, 3.9, and 3.10.</p>
3018
4245
  <div class="admonition version-added">
3019
4246
  <p class="admonition-title">Added in version 1.3.0</p>
3020
4247
  <p>Python 3.10 support was added.</p>
@@ -3023,6 +4250,10 @@
3023
4250
  <p class="admonition-title">Removed in version 1.3.0</p>
3024
4251
  <p>Python 3.6 support was removed.</p>
3025
4252
  </div>
4253
+ <div class="admonition version-removed">
4254
+ <p class="admonition-title">Removed in version 2.0.0</p>
4255
+ <p>Python 3.7 support was removed.</p>
4256
+ </div>
3026
4257
  <h2 id="getting-started">Getting Started<a class="headerlink" href="#getting-started" title="Permanent link">&para;</a></h2>
3027
4258
  <p>See the <a href="installation/index.html">installation guide</a> for help getting Nautobot up and running quickly.</p>
3028
4259
 
@@ -3043,29 +4274,6 @@
3043
4274
 
3044
4275
  <footer class="md-footer">
3045
4276
 
3046
-
3047
-
3048
-
3049
- <nav class="md-footer__inner md-grid" aria-label="Footer" >
3050
-
3051
-
3052
-
3053
- <a href="installation/index.html" class="md-footer__link md-footer__link--next" aria-label="Next: Installing Prerequisites" rel="next">
3054
- <div class="md-footer__title">
3055
- <div class="md-ellipsis">
3056
- <span class="md-footer__direction">
3057
- Next
3058
- </span>
3059
- Installing Prerequisites
3060
- </div>
3061
- </div>
3062
- <div class="md-footer__button md-icon">
3063
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4Z"/></svg>
3064
- </div>
3065
- </a>
3066
-
3067
- </nav>
3068
-
3069
4277
  <div class="md-footer-meta md-typeset">
3070
4278
  <div class="md-footer-meta__inner md-grid">
3071
4279
  <div class="md-copyright">
@@ -3093,32 +4301,42 @@
3093
4301
 
3094
4302
 
3095
4303
 
4304
+
4305
+
3096
4306
  <a href="https://blog.networktocode.com/blog/tags/nautobot" target="_blank" rel="noopener" title="Network to Code Blog" class="md-social__link">
3097
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M0 64c0-17.7 14.3-32 32-32 229.8 0 416 186.2 416 416 0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96 14.3 96 0 81.7 0 64zm128 352c0 35.3-28.7 64-64 64S0 451.3 0 416s28.7-64 64-64 64 28.7 64 64zM32 160c159.1 0 288 128.9 288 288 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224-17.7 0-32-14.3-32-32s14.3-32 32-32z"/></svg>
4307
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M0 64c0-17.7 14.3-32 32-32 229.8 0 416 186.2 416 416 0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96 14.3 96 0 81.7 0 64zm0 352a64 64 0 1 1 128 0 64 64 0 1 1-128 0zm32-256c159.1 0 288 128.9 288 288 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224-17.7 0-32-14.3-32-32s14.3-32 32-32z"/></svg>
3098
4308
  </a>
3099
4309
 
3100
4310
 
3101
4311
 
4312
+
4313
+
3102
4314
  <a href="https://www.youtube.com/playlist?list=PLjA0bhxgryJ2Ts4GJMDA-tPzVWEncv4pb" target="_blank" rel="noopener" title="Nautobot Videos" class="md-social__link">
3103
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>
4315
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>
3104
4316
  </a>
3105
4317
 
3106
4318
 
3107
4319
 
4320
+
4321
+
3108
4322
  <a href="https://www.networktocode.com/community/" target="_blank" rel="noopener" title="Network to Code Community" class="md-social__link">
3109
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"/></svg>
4323
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"/></svg>
3110
4324
  </a>
3111
4325
 
3112
4326
 
3113
4327
 
4328
+
4329
+
3114
4330
  <a href="https://github.com/nautobot/nautobot" target="_blank" rel="noopener" title="GitHub Repo" class="md-social__link">
3115
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
4331
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
3116
4332
  </a>
3117
4333
 
3118
4334
 
3119
4335
 
4336
+
4337
+
3120
4338
  <a href="https://twitter.com/networktocode" target="_blank" rel="noopener" title="Network to Code Twitter" class="md-social__link">
3121
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>
4339
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>
3122
4340
  </a>
3123
4341
 
3124
4342
  </div>
@@ -3132,14 +4350,13 @@
3132
4350
  <div class="md-dialog__inner md-typeset"></div>
3133
4351
  </div>
3134
4352
 
3135
- <script id="__config" type="application/json">{"base": ".", "features": ["navigation.tracking", "navigation.tabs", "navigation.tabs.sticky", "search.suggest", "search.highlight", "search.share"], "search": "assets/javascripts/workers/search.16e2a7d4.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
4353
+ <script id="__config" type="application/json">{"base": ".", "features": ["navigation.tracking", "navigation.tabs", "navigation.tabs.sticky", "search.suggest", "search.highlight", "search.share"], "search": "assets/javascripts/workers/search.208ed371.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
3136
4354
 
3137
4355
 
3138
- <script src="assets/javascripts/bundle.5a2dcb6a.min.js"></script>
4356
+ <script src="assets/javascripts/bundle.51198bba.min.js"></script>
3139
4357
 
3140
4358
  <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
3141
4359
 
3142
4360
 
3143
-
3144
4361
  </body>
3145
4362
  </html>