nautobot 2.0.5__py3-none-any.whl → 2.1.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.

Potentially problematic release.


This version of nautobot might be problematic. Click here for more details.

Files changed (376) hide show
  1. nautobot/circuits/navigation.py +0 -25
  2. nautobot/circuits/templates/circuits/circuit_retrieve.html +0 -9
  3. nautobot/circuits/templates/circuits/providernetwork_retrieve.html +0 -2
  4. nautobot/circuits/tests/test_filters.py +1 -0
  5. nautobot/core/api/serializers.py +15 -5
  6. nautobot/core/api/views.py +18 -19
  7. nautobot/core/choices.py +1 -1
  8. nautobot/core/filters.py +12 -4
  9. nautobot/core/jobs/__init__.py +125 -3
  10. nautobot/core/management/commands/generate_test_data.py +4 -1
  11. nautobot/core/models/fields.py +12 -2
  12. nautobot/core/settings.py +8 -7
  13. nautobot/core/templates/base_django.html +2 -2
  14. nautobot/core/templates/buttons/export.html +57 -30
  15. nautobot/core/templates/generic/object_list.html +2 -2
  16. nautobot/core/templates/generic/object_retrieve.html +8 -1
  17. nautobot/core/templates/home.html +5 -5
  18. nautobot/core/templates/inc/created_updated.html +2 -2
  19. nautobot/core/templates/inc/footer.html +2 -2
  20. nautobot/core/templates/inc/javascript.html +0 -10
  21. nautobot/core/templates/inc/media.html +2 -0
  22. nautobot/core/templates/inc/nav_menu.html +66 -68
  23. nautobot/core/templates/inc/object_details_advanced_panel.html +19 -0
  24. nautobot/core/templates/nautobot_config.py.j2 +10 -4
  25. nautobot/core/templates/panel_table.html +1 -1
  26. nautobot/core/templates/template.css +89 -0
  27. nautobot/core/templates/utilities/templatetags/table_config_form.html +1 -0
  28. nautobot/core/templatetags/buttons.py +7 -2
  29. nautobot/core/testing/views.py +34 -4
  30. nautobot/core/tests/integration/test_home.py +1 -43
  31. nautobot/core/tests/integration/test_navbar.py +10 -64
  32. nautobot/core/tests/integration/test_plugin_home.py +4 -5
  33. nautobot/core/tests/integration/test_plugin_navbar.py +20 -16
  34. nautobot/core/tests/integration/test_theme.py +4 -0
  35. nautobot/core/tests/test_api.py +14 -66
  36. nautobot/core/tests/test_filters.py +127 -0
  37. nautobot/core/tests/test_forms.py +1 -1
  38. nautobot/core/tests/test_graphql.py +165 -2
  39. nautobot/core/tests/test_jobs.py +112 -0
  40. nautobot/core/tests/test_openapi.py +6 -0
  41. nautobot/core/tests/test_views.py +11 -85
  42. nautobot/core/urls.py +6 -1
  43. nautobot/core/utils/lookup.py +28 -0
  44. nautobot/core/utils/requests.py +2 -3
  45. nautobot/core/views/__init__.py +3 -4
  46. nautobot/core/views/generic.py +9 -4
  47. nautobot/core/views/mixins.py +4 -2
  48. nautobot/core/views/renderers.py +5 -0
  49. nautobot/dcim/models/device_components.py +1 -0
  50. nautobot/dcim/navigation.py +10 -165
  51. nautobot/dcim/templates/dcim/location.html +1 -1
  52. nautobot/dcim/tests/features/locations.feature +143 -0
  53. nautobot/dcim/tests/test_api.py +1 -1
  54. nautobot/dcim/tests/test_filters.py +11 -3
  55. nautobot/extras/admin.py +1 -1
  56. nautobot/extras/api/serializers.py +33 -0
  57. nautobot/extras/api/urls.py +6 -0
  58. nautobot/extras/api/views.py +45 -6
  59. nautobot/extras/factory.py +28 -2
  60. nautobot/extras/filters/__init__.py +52 -0
  61. nautobot/extras/filters/mixins.py +4 -29
  62. nautobot/extras/forms/forms.py +43 -0
  63. nautobot/extras/jobs.py +31 -9
  64. nautobot/extras/migrations/0100_fileproxy_job_result.py +32 -0
  65. nautobot/extras/migrations/0101_externalintegration.py +61 -0
  66. nautobot/extras/migrations/0102_set_null_objectchange_contenttype.py +32 -0
  67. nautobot/extras/models/__init__.py +2 -0
  68. nautobot/extras/models/change_logging.py +2 -2
  69. nautobot/extras/models/models.py +96 -16
  70. nautobot/extras/navigation.py +17 -29
  71. nautobot/extras/signals.py +15 -0
  72. nautobot/extras/tables.py +27 -0
  73. nautobot/extras/templates/extras/externalintegration_retrieve.html +37 -0
  74. nautobot/extras/templates/extras/inc/jobresult.html +24 -0
  75. nautobot/extras/templates/extras/jobresult.html +24 -0
  76. nautobot/extras/test_jobs/file_output.py +16 -0
  77. nautobot/extras/tests/test_api.py +92 -0
  78. nautobot/extras/tests/test_filters.py +64 -2
  79. nautobot/extras/tests/test_jobs.py +39 -0
  80. nautobot/extras/tests/test_models.py +34 -0
  81. nautobot/extras/tests/test_views.py +22 -2
  82. nautobot/extras/urls.py +1 -0
  83. nautobot/extras/views.py +15 -0
  84. nautobot/ipam/forms.py +16 -0
  85. nautobot/ipam/models.py +3 -0
  86. nautobot/ipam/navigation.py +2 -59
  87. nautobot/ipam/templates/ipam/ipaddress.html +0 -9
  88. nautobot/ipam/templates/ipam/prefix.html +0 -9
  89. nautobot/ipam/tests/features/prefixes.feature +134 -0
  90. nautobot/ipam/tests/test_filters.py +5 -10
  91. nautobot/ipam/tests/test_views.py +8 -1
  92. nautobot/ipam/views.py +3 -0
  93. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css +191 -191
  94. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css.map +1 -1
  95. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css +1 -1
  96. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css.map +1 -1
  97. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css +874 -881
  98. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css.map +1 -1
  99. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css +1 -1
  100. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css.map +1 -1
  101. nautobot/project-static/css/base.css +135 -99
  102. nautobot/project-static/css/dark.css +65 -6
  103. nautobot/project-static/docs/404.html +44 -16
  104. nautobot/project-static/docs/apps/index.html +44 -16
  105. nautobot/project-static/docs/apps/nautobot-apps.html +44 -16
  106. nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +44 -16
  107. nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +44 -16
  108. nautobot/project-static/docs/code-reference/nautobot/apps/api.html +1597 -1457
  109. nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +44 -16
  110. nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +45 -17
  111. nautobot/project-static/docs/code-reference/nautobot/apps/config.html +44 -16
  112. nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +44 -16
  113. nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +44 -16
  114. nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +44 -16
  115. nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +353 -432
  116. nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +66 -38
  117. nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +44 -16
  118. nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +2154 -2307
  119. nautobot/project-static/docs/code-reference/nautobot/apps/models.html +807 -691
  120. nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +44 -16
  121. nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +44 -16
  122. nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +58 -30
  123. nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +3600 -3456
  124. nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +44 -16
  125. nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +44 -16
  126. nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +101 -75
  127. nautobot/project-static/docs/code-reference/nautobot/apps/views.html +3083 -3019
  128. nautobot/project-static/docs/development/apps/api/configuration-view.html +44 -16
  129. nautobot/project-static/docs/development/apps/api/database-backend-config.html +44 -16
  130. nautobot/project-static/docs/development/apps/api/models/django-admin.html +44 -16
  131. nautobot/project-static/docs/development/apps/api/models/global-search.html +44 -16
  132. nautobot/project-static/docs/development/apps/api/models/graphql.html +44 -16
  133. nautobot/project-static/docs/development/apps/api/models/index.html +44 -16
  134. nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +44 -16
  135. nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +44 -16
  136. nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +44 -16
  137. nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +44 -16
  138. nautobot/project-static/docs/development/apps/api/platform-features/index.html +44 -16
  139. nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +44 -16
  140. nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +44 -16
  141. nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +44 -16
  142. nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +44 -16
  143. nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +44 -16
  144. nautobot/project-static/docs/development/apps/api/prometheus.html +44 -16
  145. nautobot/project-static/docs/development/apps/api/setup.html +44 -16
  146. nautobot/project-static/docs/development/apps/api/testing.html +44 -16
  147. nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +44 -16
  148. nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +44 -16
  149. nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +44 -16
  150. nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +44 -16
  151. nautobot/project-static/docs/development/apps/api/ui-extensions/object-detail-views.html +44 -16
  152. nautobot/project-static/docs/development/apps/api/ui-extensions/tabs.html +44 -16
  153. nautobot/project-static/docs/development/apps/api/views/base-template.html +44 -16
  154. nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +44 -16
  155. nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +44 -16
  156. nautobot/project-static/docs/development/apps/api/views/help-documentation.html +44 -16
  157. nautobot/project-static/docs/development/apps/api/views/index.html +44 -16
  158. nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +44 -16
  159. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +44 -16
  160. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +44 -16
  161. nautobot/project-static/docs/development/apps/api/views/notes.html +44 -16
  162. nautobot/project-static/docs/development/apps/api/views/rest-api.html +44 -16
  163. nautobot/project-static/docs/development/apps/api/views/urls.html +44 -16
  164. nautobot/project-static/docs/development/apps/api/views/view-overrides.html +44 -16
  165. nautobot/project-static/docs/development/apps/index.html +44 -16
  166. nautobot/project-static/docs/development/apps/migration/code-updates.html +44 -16
  167. nautobot/project-static/docs/development/apps/migration/dependency-updates.html +44 -16
  168. nautobot/project-static/docs/development/apps/migration/from-v1.html +44 -16
  169. nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +44 -16
  170. nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +44 -16
  171. nautobot/project-static/docs/development/apps/migration/model-updates/global.html +44 -16
  172. nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +44 -16
  173. nautobot/project-static/docs/development/apps/porting-from-netbox.html +44 -16
  174. nautobot/project-static/docs/development/core/application-registry.html +44 -16
  175. nautobot/project-static/docs/development/core/best-practices.html +44 -16
  176. nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +44 -16
  177. nautobot/project-static/docs/development/core/extending-models.html +44 -16
  178. nautobot/project-static/docs/development/core/generic-views.html +44 -16
  179. nautobot/project-static/docs/development/core/getting-started.html +44 -16
  180. nautobot/project-static/docs/development/core/homepage.html +44 -16
  181. nautobot/project-static/docs/development/core/index.html +44 -16
  182. nautobot/project-static/docs/development/core/model-features.html +44 -16
  183. nautobot/project-static/docs/development/core/natural-keys.html +44 -16
  184. nautobot/project-static/docs/development/core/navigation-menu.html +44 -21
  185. nautobot/project-static/docs/development/core/react-ui.html +44 -16
  186. nautobot/project-static/docs/development/core/release-checklist.html +44 -16
  187. nautobot/project-static/docs/development/core/role-internals.html +44 -16
  188. nautobot/project-static/docs/development/core/style-guide.html +44 -16
  189. nautobot/project-static/docs/development/core/templates.html +44 -16
  190. nautobot/project-static/docs/development/core/testing.html +44 -16
  191. nautobot/project-static/docs/development/core/user-preferences.html +44 -16
  192. nautobot/project-static/docs/development/index.html +44 -16
  193. nautobot/project-static/docs/development/jobs/index.html +280 -234
  194. nautobot/project-static/docs/development/jobs/migration/from-v1.html +44 -16
  195. nautobot/project-static/docs/index.html +44 -16
  196. nautobot/project-static/docs/objects.inv +0 -0
  197. nautobot/project-static/docs/release-notes/index.html +47 -19
  198. nautobot/project-static/docs/release-notes/version-1.0.html +44 -16
  199. nautobot/project-static/docs/release-notes/version-1.1.html +44 -16
  200. nautobot/project-static/docs/release-notes/version-1.2.html +44 -16
  201. nautobot/project-static/docs/release-notes/version-1.3.html +44 -16
  202. nautobot/project-static/docs/release-notes/version-1.4.html +44 -16
  203. nautobot/project-static/docs/release-notes/version-1.5.html +44 -16
  204. nautobot/project-static/docs/release-notes/version-1.6.html +44 -16
  205. nautobot/project-static/docs/release-notes/version-2.0.html +47 -19
  206. nautobot/project-static/docs/release-notes/version-2.1.html +5724 -0
  207. nautobot/project-static/docs/search/search_index.json +1 -1
  208. nautobot/project-static/docs/sitemap.xml +247 -237
  209. nautobot/project-static/docs/sitemap.xml.gz +0 -0
  210. nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +44 -16
  211. nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +44 -16
  212. nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +44 -16
  213. nautobot/project-static/docs/user-guide/administration/configuration/index.html +44 -16
  214. nautobot/project-static/docs/user-guide/administration/configuration/node-configuration.html +44 -16
  215. nautobot/project-static/docs/user-guide/administration/configuration/optional-settings.html +109 -43
  216. nautobot/project-static/docs/user-guide/administration/configuration/required-settings.html +44 -16
  217. nautobot/project-static/docs/user-guide/administration/guides/caching.html +44 -16
  218. nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +44 -16
  219. nautobot/project-static/docs/user-guide/administration/guides/healthcheck.html +44 -16
  220. nautobot/project-static/docs/user-guide/administration/guides/permissions.html +44 -16
  221. nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +44 -16
  222. nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +44 -16
  223. nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +48 -19
  224. nautobot/project-static/docs/user-guide/administration/installation/app-install.html +44 -16
  225. nautobot/project-static/docs/user-guide/administration/installation/docker.html +44 -16
  226. nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +44 -16
  227. nautobot/project-static/docs/user-guide/administration/installation/http-server.html +44 -16
  228. nautobot/project-static/docs/user-guide/administration/installation/index.html +44 -16
  229. nautobot/project-static/docs/user-guide/administration/installation/install_system.html +44 -16
  230. nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +44 -16
  231. nautobot/project-static/docs/user-guide/administration/installation/selinux-troubleshooting.html +44 -16
  232. nautobot/project-static/docs/user-guide/administration/installation/services.html +44 -16
  233. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +44 -16
  234. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +44 -16
  235. nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +44 -16
  236. nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +44 -16
  237. nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +44 -16
  238. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +44 -16
  239. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +44 -16
  240. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +44 -16
  241. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +44 -16
  242. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +44 -16
  243. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +44 -16
  244. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +44 -16
  245. nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +44 -16
  246. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +44 -16
  247. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +44 -16
  248. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +44 -16
  249. nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +44 -16
  250. nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +44 -16
  251. nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +44 -16
  252. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +44 -16
  253. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +44 -16
  254. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +44 -16
  255. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +44 -16
  256. nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +44 -16
  257. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +44 -16
  258. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +44 -16
  259. nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +44 -16
  260. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +44 -16
  261. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +44 -16
  262. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +44 -16
  263. nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +44 -16
  264. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +44 -16
  265. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +44 -16
  266. nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +44 -16
  267. nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +44 -16
  268. nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +44 -16
  269. nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +44 -16
  270. nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +44 -16
  271. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +44 -16
  272. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +44 -16
  273. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +44 -16
  274. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +44 -16
  275. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +44 -16
  276. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +44 -16
  277. nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +44 -16
  278. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +44 -16
  279. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +44 -16
  280. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +44 -16
  281. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +44 -16
  282. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +44 -16
  283. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +44 -16
  284. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +44 -16
  285. nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +44 -16
  286. nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +44 -16
  287. nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +44 -16
  288. nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +44 -16
  289. nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +44 -16
  290. nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +44 -16
  291. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +44 -16
  292. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +44 -16
  293. nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +44 -16
  294. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +44 -16
  295. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +44 -16
  296. nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +44 -16
  297. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +44 -16
  298. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +44 -16
  299. nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +44 -16
  300. nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +44 -16
  301. nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +44 -16
  302. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +44 -16
  303. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +44 -16
  304. nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +44 -16
  305. nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +44 -16
  306. nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +44 -16
  307. nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +44 -16
  308. nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +44 -16
  309. nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +44 -16
  310. nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +44 -16
  311. nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +44 -16
  312. nautobot/project-static/docs/user-guide/feature-guides/graphql.html +44 -16
  313. nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +44 -16
  314. nautobot/project-static/docs/user-guide/feature-guides/relationships.html +44 -16
  315. nautobot/project-static/docs/user-guide/index.html +44 -16
  316. nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +110 -16
  317. nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +44 -16
  318. nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +44 -16
  319. nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +44 -16
  320. nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +44 -16
  321. nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +47 -19
  322. nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +5359 -0
  323. nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +47 -19
  324. nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +44 -16
  325. nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +44 -16
  326. nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +44 -16
  327. nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +44 -16
  328. nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +44 -16
  329. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +44 -16
  330. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +44 -16
  331. nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +44 -16
  332. nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +44 -16
  333. nautobot/project-static/docs/user-guide/platform-functionality/note.html +44 -16
  334. nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +44 -16
  335. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +44 -16
  336. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +113 -44
  337. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +44 -16
  338. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +44 -16
  339. nautobot/project-static/docs/user-guide/platform-functionality/role.html +44 -16
  340. nautobot/project-static/docs/user-guide/platform-functionality/secret.html +44 -16
  341. nautobot/project-static/docs/user-guide/platform-functionality/status.html +44 -16
  342. nautobot/project-static/docs/user-guide/platform-functionality/tag.html +44 -16
  343. nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +44 -16
  344. nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +44 -16
  345. nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +44 -16
  346. nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +44 -16
  347. nautobot/project-static/fonts/UFL.txt +96 -0
  348. nautobot/project-static/fonts/Ubuntu-Bold.woff2 +0 -0
  349. nautobot/project-static/fonts/Ubuntu-BoldItalic.woff2 +0 -0
  350. nautobot/project-static/fonts/Ubuntu-Italic.woff2 +0 -0
  351. nautobot/project-static/fonts/Ubuntu-Medium.woff2 +0 -0
  352. nautobot/project-static/fonts/Ubuntu-MediumItalic.woff2 +0 -0
  353. nautobot/project-static/fonts/Ubuntu-Regular.woff2 +0 -0
  354. nautobot/project-static/fonts/UbuntuMono-Bold.woff2 +0 -0
  355. nautobot/project-static/fonts/UbuntuMono-BoldItalic.woff2 +0 -0
  356. nautobot/project-static/fonts/UbuntuMono-Italic.woff2 +0 -0
  357. nautobot/project-static/fonts/UbuntuMono-Regular.woff2 +0 -0
  358. nautobot/project-static/img/dark-theme.png +0 -0
  359. nautobot/project-static/img/light-theme.png +0 -0
  360. nautobot/project-static/img/nautobot_chevron.svg +5 -0
  361. nautobot/project-static/img/nautobot_chevron_header.svg +5 -0
  362. nautobot/project-static/img/system-theme.png +0 -0
  363. nautobot/tenancy/navigation.py +0 -13
  364. nautobot/ui/package-lock.json +2 -2
  365. nautobot/ui/package.json +1 -1
  366. nautobot/users/admin.py +44 -0
  367. nautobot/users/migrations/0007_alter_objectpermission_object_types.py +33 -0
  368. nautobot/users/models.py +3 -2
  369. nautobot/virtualization/navigation.py +1 -33
  370. nautobot/virtualization/tests/test_api.py +1 -1
  371. nautobot/virtualization/tests/test_filters.py +1 -1
  372. {nautobot-2.0.5.dist-info → nautobot-2.1.0b1.dist-info}/METADATA +1 -1
  373. {nautobot-2.0.5.dist-info → nautobot-2.1.0b1.dist-info}/RECORD +376 -351
  374. {nautobot-2.0.5.dist-info → nautobot-2.1.0b1.dist-info}/LICENSE.txt +0 -0
  375. {nautobot-2.0.5.dist-info → nautobot-2.1.0b1.dist-info}/WHEEL +0 -0
  376. {nautobot-2.0.5.dist-info → nautobot-2.1.0b1.dist-info}/entry_points.txt +0 -0
@@ -2720,6 +2720,20 @@
2720
2720
 
2721
2721
 
2722
2722
 
2723
+ <li class="md-nav__item">
2724
+ <a href="../../platform-functionality/externalintegration.html" class="md-nav__link">
2725
+ External Integrations
2726
+ </a>
2727
+ </li>
2728
+
2729
+
2730
+
2731
+
2732
+
2733
+
2734
+
2735
+
2736
+
2723
2737
  <li class="md-nav__item">
2724
2738
  <a href="../../platform-functionality/gitrepository.html" class="md-nav__link">
2725
2739
  Git Repositories
@@ -2740,7 +2754,7 @@
2740
2754
 
2741
2755
 
2742
2756
 
2743
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_8" >
2757
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_9" >
2744
2758
 
2745
2759
 
2746
2760
 
@@ -2749,14 +2763,14 @@
2749
2763
  <div class="md-nav__link md-nav__link--index ">
2750
2764
  <a href="../../platform-functionality/graphql.html">GraphQL</a>
2751
2765
 
2752
- <label for="__nav_2_4_8">
2766
+ <label for="__nav_2_4_9">
2753
2767
  <span class="md-nav__icon md-icon"></span>
2754
2768
  </label>
2755
2769
 
2756
2770
  </div>
2757
2771
 
2758
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_8_label" aria-expanded="false">
2759
- <label class="md-nav__title" for="__nav_2_4_8">
2772
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_9_label" aria-expanded="false">
2773
+ <label class="md-nav__title" for="__nav_2_4_9">
2760
2774
  <span class="md-nav__icon md-icon"></span>
2761
2775
  GraphQL
2762
2776
  </label>
@@ -2808,7 +2822,7 @@
2808
2822
 
2809
2823
 
2810
2824
 
2811
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_10" >
2825
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_11" >
2812
2826
 
2813
2827
 
2814
2828
 
@@ -2817,14 +2831,14 @@
2817
2831
  <div class="md-nav__link md-nav__link--index ">
2818
2832
  <a href="../../platform-functionality/jobs/index.html">Jobs</a>
2819
2833
 
2820
- <label for="__nav_2_4_10">
2834
+ <label for="__nav_2_4_11">
2821
2835
  <span class="md-nav__icon md-icon"></span>
2822
2836
  </label>
2823
2837
 
2824
2838
  </div>
2825
2839
 
2826
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_10_label" aria-expanded="false">
2827
- <label class="md-nav__title" for="__nav_2_4_10">
2840
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_11_label" aria-expanded="false">
2841
+ <label class="md-nav__title" for="__nav_2_4_11">
2828
2842
  <span class="md-nav__icon md-icon"></span>
2829
2843
  Jobs
2830
2844
  </label>
@@ -2946,7 +2960,7 @@
2946
2960
 
2947
2961
 
2948
2962
 
2949
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_14" >
2963
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_15" >
2950
2964
 
2951
2965
 
2952
2966
 
@@ -2955,14 +2969,14 @@
2955
2969
  <div class="md-nav__link md-nav__link--index ">
2956
2970
  <a href="../../platform-functionality/rest-api/overview.html">REST API</a>
2957
2971
 
2958
- <label for="__nav_2_4_14">
2972
+ <label for="__nav_2_4_15">
2959
2973
  <span class="md-nav__icon md-icon"></span>
2960
2974
  </label>
2961
2975
 
2962
2976
  </div>
2963
2977
 
2964
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_14_label" aria-expanded="false">
2965
- <label class="md-nav__title" for="__nav_2_4_14">
2978
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_15_label" aria-expanded="false">
2979
+ <label class="md-nav__title" for="__nav_2_4_15">
2966
2980
  <span class="md-nav__icon md-icon"></span>
2967
2981
  REST API
2968
2982
  </label>
@@ -3098,17 +3112,17 @@
3098
3112
 
3099
3113
 
3100
3114
 
3101
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_20" >
3115
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_21" >
3102
3116
 
3103
3117
 
3104
3118
 
3105
- <label class="md-nav__link" for="__nav_2_4_20" id="__nav_2_4_20_label" tabindex="0">
3119
+ <label class="md-nav__link" for="__nav_2_4_21" id="__nav_2_4_21_label" tabindex="0">
3106
3120
  Users
3107
3121
  <span class="md-nav__icon md-icon"></span>
3108
3122
  </label>
3109
3123
 
3110
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_20_label" aria-expanded="false">
3111
- <label class="md-nav__title" for="__nav_2_4_20">
3124
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_21_label" aria-expanded="false">
3125
+ <label class="md-nav__title" for="__nav_2_4_21">
3112
3126
  <span class="md-nav__icon md-icon"></span>
3113
3127
  Users
3114
3128
  </label>
@@ -4841,6 +4855,20 @@
4841
4855
 
4842
4856
 
4843
4857
 
4858
+ <li class="md-nav__item">
4859
+ <a href="../../../release-notes/version-2.1.html" class="md-nav__link">
4860
+ Version 2.1
4861
+ </a>
4862
+ </li>
4863
+
4864
+
4865
+
4866
+
4867
+
4868
+
4869
+
4870
+
4871
+
4844
4872
  <li class="md-nav__item">
4845
4873
  <a href="../../../release-notes/version-2.0.html" class="md-nav__link">
4846
4874
  Version 2.0
@@ -2760,6 +2760,20 @@
2760
2760
 
2761
2761
 
2762
2762
 
2763
+ <li class="md-nav__item">
2764
+ <a href="../../platform-functionality/externalintegration.html" class="md-nav__link">
2765
+ External Integrations
2766
+ </a>
2767
+ </li>
2768
+
2769
+
2770
+
2771
+
2772
+
2773
+
2774
+
2775
+
2776
+
2763
2777
  <li class="md-nav__item">
2764
2778
  <a href="../../platform-functionality/gitrepository.html" class="md-nav__link">
2765
2779
  Git Repositories
@@ -2780,7 +2794,7 @@
2780
2794
 
2781
2795
 
2782
2796
 
2783
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_8" >
2797
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_9" >
2784
2798
 
2785
2799
 
2786
2800
 
@@ -2789,14 +2803,14 @@
2789
2803
  <div class="md-nav__link md-nav__link--index ">
2790
2804
  <a href="../../platform-functionality/graphql.html">GraphQL</a>
2791
2805
 
2792
- <label for="__nav_2_4_8">
2806
+ <label for="__nav_2_4_9">
2793
2807
  <span class="md-nav__icon md-icon"></span>
2794
2808
  </label>
2795
2809
 
2796
2810
  </div>
2797
2811
 
2798
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_8_label" aria-expanded="false">
2799
- <label class="md-nav__title" for="__nav_2_4_8">
2812
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_9_label" aria-expanded="false">
2813
+ <label class="md-nav__title" for="__nav_2_4_9">
2800
2814
  <span class="md-nav__icon md-icon"></span>
2801
2815
  GraphQL
2802
2816
  </label>
@@ -2848,7 +2862,7 @@
2848
2862
 
2849
2863
 
2850
2864
 
2851
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_10" >
2865
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_11" >
2852
2866
 
2853
2867
 
2854
2868
 
@@ -2857,14 +2871,14 @@
2857
2871
  <div class="md-nav__link md-nav__link--index ">
2858
2872
  <a href="../../platform-functionality/jobs/index.html">Jobs</a>
2859
2873
 
2860
- <label for="__nav_2_4_10">
2874
+ <label for="__nav_2_4_11">
2861
2875
  <span class="md-nav__icon md-icon"></span>
2862
2876
  </label>
2863
2877
 
2864
2878
  </div>
2865
2879
 
2866
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_10_label" aria-expanded="false">
2867
- <label class="md-nav__title" for="__nav_2_4_10">
2880
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_11_label" aria-expanded="false">
2881
+ <label class="md-nav__title" for="__nav_2_4_11">
2868
2882
  <span class="md-nav__icon md-icon"></span>
2869
2883
  Jobs
2870
2884
  </label>
@@ -2986,7 +3000,7 @@
2986
3000
 
2987
3001
 
2988
3002
 
2989
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_14" >
3003
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_15" >
2990
3004
 
2991
3005
 
2992
3006
 
@@ -2995,14 +3009,14 @@
2995
3009
  <div class="md-nav__link md-nav__link--index ">
2996
3010
  <a href="../../platform-functionality/rest-api/overview.html">REST API</a>
2997
3011
 
2998
- <label for="__nav_2_4_14">
3012
+ <label for="__nav_2_4_15">
2999
3013
  <span class="md-nav__icon md-icon"></span>
3000
3014
  </label>
3001
3015
 
3002
3016
  </div>
3003
3017
 
3004
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_14_label" aria-expanded="false">
3005
- <label class="md-nav__title" for="__nav_2_4_14">
3018
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_15_label" aria-expanded="false">
3019
+ <label class="md-nav__title" for="__nav_2_4_15">
3006
3020
  <span class="md-nav__icon md-icon"></span>
3007
3021
  REST API
3008
3022
  </label>
@@ -3138,17 +3152,17 @@
3138
3152
 
3139
3153
 
3140
3154
 
3141
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_20" >
3155
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_21" >
3142
3156
 
3143
3157
 
3144
3158
 
3145
- <label class="md-nav__link" for="__nav_2_4_20" id="__nav_2_4_20_label" tabindex="0">
3159
+ <label class="md-nav__link" for="__nav_2_4_21" id="__nav_2_4_21_label" tabindex="0">
3146
3160
  Users
3147
3161
  <span class="md-nav__icon md-icon"></span>
3148
3162
  </label>
3149
3163
 
3150
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_20_label" aria-expanded="false">
3151
- <label class="md-nav__title" for="__nav_2_4_20">
3164
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_21_label" aria-expanded="false">
3165
+ <label class="md-nav__title" for="__nav_2_4_21">
3152
3166
  <span class="md-nav__icon md-icon"></span>
3153
3167
  Users
3154
3168
  </label>
@@ -4881,6 +4895,20 @@
4881
4895
 
4882
4896
 
4883
4897
 
4898
+ <li class="md-nav__item">
4899
+ <a href="../../../release-notes/version-2.1.html" class="md-nav__link">
4900
+ Version 2.1
4901
+ </a>
4902
+ </li>
4903
+
4904
+
4905
+
4906
+
4907
+
4908
+
4909
+
4910
+
4911
+
4884
4912
  <li class="md-nav__item">
4885
4913
  <a href="../../../release-notes/version-2.0.html" class="md-nav__link">
4886
4914
  Version 2.0
@@ -2727,6 +2727,20 @@
2727
2727
 
2728
2728
 
2729
2729
 
2730
+ <li class="md-nav__item">
2731
+ <a href="../../platform-functionality/externalintegration.html" class="md-nav__link">
2732
+ External Integrations
2733
+ </a>
2734
+ </li>
2735
+
2736
+
2737
+
2738
+
2739
+
2740
+
2741
+
2742
+
2743
+
2730
2744
  <li class="md-nav__item">
2731
2745
  <a href="../../platform-functionality/gitrepository.html" class="md-nav__link">
2732
2746
  Git Repositories
@@ -2747,7 +2761,7 @@
2747
2761
 
2748
2762
 
2749
2763
 
2750
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_8" >
2764
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_9" >
2751
2765
 
2752
2766
 
2753
2767
 
@@ -2756,14 +2770,14 @@
2756
2770
  <div class="md-nav__link md-nav__link--index ">
2757
2771
  <a href="../../platform-functionality/graphql.html">GraphQL</a>
2758
2772
 
2759
- <label for="__nav_2_4_8">
2773
+ <label for="__nav_2_4_9">
2760
2774
  <span class="md-nav__icon md-icon"></span>
2761
2775
  </label>
2762
2776
 
2763
2777
  </div>
2764
2778
 
2765
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_8_label" aria-expanded="false">
2766
- <label class="md-nav__title" for="__nav_2_4_8">
2779
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_9_label" aria-expanded="false">
2780
+ <label class="md-nav__title" for="__nav_2_4_9">
2767
2781
  <span class="md-nav__icon md-icon"></span>
2768
2782
  GraphQL
2769
2783
  </label>
@@ -2815,7 +2829,7 @@
2815
2829
 
2816
2830
 
2817
2831
 
2818
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_10" >
2832
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_11" >
2819
2833
 
2820
2834
 
2821
2835
 
@@ -2824,14 +2838,14 @@
2824
2838
  <div class="md-nav__link md-nav__link--index ">
2825
2839
  <a href="../../platform-functionality/jobs/index.html">Jobs</a>
2826
2840
 
2827
- <label for="__nav_2_4_10">
2841
+ <label for="__nav_2_4_11">
2828
2842
  <span class="md-nav__icon md-icon"></span>
2829
2843
  </label>
2830
2844
 
2831
2845
  </div>
2832
2846
 
2833
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_10_label" aria-expanded="false">
2834
- <label class="md-nav__title" for="__nav_2_4_10">
2847
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_11_label" aria-expanded="false">
2848
+ <label class="md-nav__title" for="__nav_2_4_11">
2835
2849
  <span class="md-nav__icon md-icon"></span>
2836
2850
  Jobs
2837
2851
  </label>
@@ -2953,7 +2967,7 @@
2953
2967
 
2954
2968
 
2955
2969
 
2956
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_14" >
2970
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_15" >
2957
2971
 
2958
2972
 
2959
2973
 
@@ -2962,14 +2976,14 @@
2962
2976
  <div class="md-nav__link md-nav__link--index ">
2963
2977
  <a href="../../platform-functionality/rest-api/overview.html">REST API</a>
2964
2978
 
2965
- <label for="__nav_2_4_14">
2979
+ <label for="__nav_2_4_15">
2966
2980
  <span class="md-nav__icon md-icon"></span>
2967
2981
  </label>
2968
2982
 
2969
2983
  </div>
2970
2984
 
2971
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_14_label" aria-expanded="false">
2972
- <label class="md-nav__title" for="__nav_2_4_14">
2985
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_15_label" aria-expanded="false">
2986
+ <label class="md-nav__title" for="__nav_2_4_15">
2973
2987
  <span class="md-nav__icon md-icon"></span>
2974
2988
  REST API
2975
2989
  </label>
@@ -3105,17 +3119,17 @@
3105
3119
 
3106
3120
 
3107
3121
 
3108
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_20" >
3122
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_21" >
3109
3123
 
3110
3124
 
3111
3125
 
3112
- <label class="md-nav__link" for="__nav_2_4_20" id="__nav_2_4_20_label" tabindex="0">
3126
+ <label class="md-nav__link" for="__nav_2_4_21" id="__nav_2_4_21_label" tabindex="0">
3113
3127
  Users
3114
3128
  <span class="md-nav__icon md-icon"></span>
3115
3129
  </label>
3116
3130
 
3117
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_20_label" aria-expanded="false">
3118
- <label class="md-nav__title" for="__nav_2_4_20">
3131
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_21_label" aria-expanded="false">
3132
+ <label class="md-nav__title" for="__nav_2_4_21">
3119
3133
  <span class="md-nav__icon md-icon"></span>
3120
3134
  Users
3121
3135
  </label>
@@ -4848,6 +4862,20 @@
4848
4862
 
4849
4863
 
4850
4864
 
4865
+ <li class="md-nav__item">
4866
+ <a href="../../../release-notes/version-2.1.html" class="md-nav__link">
4867
+ Version 2.1
4868
+ </a>
4869
+ </li>
4870
+
4871
+
4872
+
4873
+
4874
+
4875
+
4876
+
4877
+
4878
+
4851
4879
  <li class="md-nav__item">
4852
4880
  <a href="../../../release-notes/version-2.0.html" class="md-nav__link">
4853
4881
  Version 2.0
@@ -5264,12 +5292,12 @@
5264
5292
 
5265
5293
 
5266
5294
  <h1 id="aws-s3-using-django-storage-backend">AWS S3 using Django-Storage Backend<a class="headerlink" href="#aws-s3-using-django-storage-backend" title="Permanent link">&para;</a></h1>
5267
- <p>The backend storage engine is used for Nautobot to handle uploaded files (e.g. image attachments), as well as static files (e.g. css, js). Nautobot supports integration with the django-storages package, which provides backends for several popular file storage services. If not configured, local filesystem storage will be used; however this user-guide will demonstrate how to use AWS S3 buckets to store these files.</p>
5295
+ <p>The backend storage engine is used for Nautobot to handle uploaded files (e.g. image attachments), as well as static files (e.g. css, js), and optionally also generated files (e.g. Job output files). Nautobot supports integration with the <code>django-storages</code> package, which provides backends for several popular file storage services. This user-guide will demonstrate how to use AWS S3 buckets to store these files.</p>
5268
5296
  <h2 id="installation">Installation<a class="headerlink" href="#installation" title="Permanent link">&para;</a></h2>
5269
5297
  <p>Nautobot can use <a href="https://django-storages.readthedocs.io/en/stable/"><code>django-storages</code></a> to publish files to S3 -- see the <a href="../installation/nautobot.html#remote-file-storage">installation docs</a> for more information on installing this optional dependency.</p>
5270
5298
  <p>TLDR:</p>
5271
5299
  <div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a>$<span class="w"> </span><span class="nb">echo</span><span class="w"> </span><span class="s2">&quot;nautobot[remote_storage]&quot;</span><span class="w"> </span>&gt;&gt;<span class="w"> </span><span class="nv">$NAUTOBOT_ROOT</span>/local_requirements.txt
5272
- <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a>$<span class="w"> </span>pip3<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;nautobot[remote_storage]&quot;</span>
5300
+ <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a>$<span class="w"> </span>pip3<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;nautobot[remote_storage]&quot;</span><span class="w"> </span>boto3
5273
5301
  </code></pre></div>
5274
5302
  <h2 id="bucket-creation-terraform">Bucket Creation Terraform<a class="headerlink" href="#bucket-creation-terraform" title="Permanent link">&para;</a></h2>
5275
5303
  <p>The AWS S3 bucket will be hosting Nautobot static files and needs some specific configuration to allow anonymous HTTP access. The following is an example of Terraform configuration to create the S3 bucket appropriately, the same values can be configured manually:</p>
@@ -5306,7 +5334,8 @@
5306
5334
  <a id="__codelineno-2-9" name="__codelineno-2-9" href="#__codelineno-2-9"></a> <span class="s2">&quot;AWS_QUERYSTRING_AUTH&quot;</span><span class="p">:</span> <span class="kc">False</span><span class="p">,</span>
5307
5335
  <a id="__codelineno-2-10" name="__codelineno-2-10" href="#__codelineno-2-10"></a> <span class="s2">&quot;AWS_LOCATION&quot;</span><span class="p">:</span> <span class="s2">&quot;subfolder/name/static/&quot;</span>
5308
5336
  <a id="__codelineno-2-11" name="__codelineno-2-11" href="#__codelineno-2-11"></a><span class="p">}</span>
5309
- <a id="__codelineno-2-12" name="__codelineno-2-12" href="#__codelineno-2-12"></a><span class="n">STATICFILES_STORAGE</span> <span class="o">=</span> <span class="n">STORAGE_BACKEND</span>
5337
+ <a id="__codelineno-2-12" name="__codelineno-2-12" href="#__codelineno-2-12"></a><span class="n">JOB_FILE_IO_STORAGE</span> <span class="o">=</span> <span class="n">STORAGE_BACKEND</span>
5338
+ <a id="__codelineno-2-13" name="__codelineno-2-13" href="#__codelineno-2-13"></a><span class="n">STATICFILES_STORAGE</span> <span class="o">=</span> <span class="n">STORAGE_BACKEND</span>
5310
5339
  </code></pre></div>
5311
5340
  <p>If <code>AWS_ACCESS_KEY_ID</code> and <code>AWS_SECRET_ACCESS_KEY</code> are not set, <code>boto3</code> <a href="https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html">internally looks up IAM credentials</a>. Using an <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html?icmpid=docs_ec2_console">IAM Role for EC2</a> is highly recommended.</p>
5312
5341
  <p>The <code>STORAGE_CONFIG</code> has some valuable pieces of information.</p>
@@ -2741,6 +2741,20 @@
2741
2741
 
2742
2742
 
2743
2743
 
2744
+ <li class="md-nav__item">
2745
+ <a href="../../platform-functionality/externalintegration.html" class="md-nav__link">
2746
+ External Integrations
2747
+ </a>
2748
+ </li>
2749
+
2750
+
2751
+
2752
+
2753
+
2754
+
2755
+
2756
+
2757
+
2744
2758
  <li class="md-nav__item">
2745
2759
  <a href="../../platform-functionality/gitrepository.html" class="md-nav__link">
2746
2760
  Git Repositories
@@ -2761,7 +2775,7 @@
2761
2775
 
2762
2776
 
2763
2777
 
2764
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_8" >
2778
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_9" >
2765
2779
 
2766
2780
 
2767
2781
 
@@ -2770,14 +2784,14 @@
2770
2784
  <div class="md-nav__link md-nav__link--index ">
2771
2785
  <a href="../../platform-functionality/graphql.html">GraphQL</a>
2772
2786
 
2773
- <label for="__nav_2_4_8">
2787
+ <label for="__nav_2_4_9">
2774
2788
  <span class="md-nav__icon md-icon"></span>
2775
2789
  </label>
2776
2790
 
2777
2791
  </div>
2778
2792
 
2779
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_8_label" aria-expanded="false">
2780
- <label class="md-nav__title" for="__nav_2_4_8">
2793
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_9_label" aria-expanded="false">
2794
+ <label class="md-nav__title" for="__nav_2_4_9">
2781
2795
  <span class="md-nav__icon md-icon"></span>
2782
2796
  GraphQL
2783
2797
  </label>
@@ -2829,7 +2843,7 @@
2829
2843
 
2830
2844
 
2831
2845
 
2832
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_10" >
2846
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_11" >
2833
2847
 
2834
2848
 
2835
2849
 
@@ -2838,14 +2852,14 @@
2838
2852
  <div class="md-nav__link md-nav__link--index ">
2839
2853
  <a href="../../platform-functionality/jobs/index.html">Jobs</a>
2840
2854
 
2841
- <label for="__nav_2_4_10">
2855
+ <label for="__nav_2_4_11">
2842
2856
  <span class="md-nav__icon md-icon"></span>
2843
2857
  </label>
2844
2858
 
2845
2859
  </div>
2846
2860
 
2847
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_10_label" aria-expanded="false">
2848
- <label class="md-nav__title" for="__nav_2_4_10">
2861
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_11_label" aria-expanded="false">
2862
+ <label class="md-nav__title" for="__nav_2_4_11">
2849
2863
  <span class="md-nav__icon md-icon"></span>
2850
2864
  Jobs
2851
2865
  </label>
@@ -2967,7 +2981,7 @@
2967
2981
 
2968
2982
 
2969
2983
 
2970
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_14" >
2984
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_15" >
2971
2985
 
2972
2986
 
2973
2987
 
@@ -2976,14 +2990,14 @@
2976
2990
  <div class="md-nav__link md-nav__link--index ">
2977
2991
  <a href="../../platform-functionality/rest-api/overview.html">REST API</a>
2978
2992
 
2979
- <label for="__nav_2_4_14">
2993
+ <label for="__nav_2_4_15">
2980
2994
  <span class="md-nav__icon md-icon"></span>
2981
2995
  </label>
2982
2996
 
2983
2997
  </div>
2984
2998
 
2985
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_14_label" aria-expanded="false">
2986
- <label class="md-nav__title" for="__nav_2_4_14">
2999
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_15_label" aria-expanded="false">
3000
+ <label class="md-nav__title" for="__nav_2_4_15">
2987
3001
  <span class="md-nav__icon md-icon"></span>
2988
3002
  REST API
2989
3003
  </label>
@@ -3119,17 +3133,17 @@
3119
3133
 
3120
3134
 
3121
3135
 
3122
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_20" >
3136
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_21" >
3123
3137
 
3124
3138
 
3125
3139
 
3126
- <label class="md-nav__link" for="__nav_2_4_20" id="__nav_2_4_20_label" tabindex="0">
3140
+ <label class="md-nav__link" for="__nav_2_4_21" id="__nav_2_4_21_label" tabindex="0">
3127
3141
  Users
3128
3142
  <span class="md-nav__icon md-icon"></span>
3129
3143
  </label>
3130
3144
 
3131
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_20_label" aria-expanded="false">
3132
- <label class="md-nav__title" for="__nav_2_4_20">
3145
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_21_label" aria-expanded="false">
3146
+ <label class="md-nav__title" for="__nav_2_4_21">
3133
3147
  <span class="md-nav__icon md-icon"></span>
3134
3148
  Users
3135
3149
  </label>
@@ -4862,6 +4876,20 @@
4862
4876
 
4863
4877
 
4864
4878
 
4879
+ <li class="md-nav__item">
4880
+ <a href="../../../release-notes/version-2.1.html" class="md-nav__link">
4881
+ Version 2.1
4882
+ </a>
4883
+ </li>
4884
+
4885
+
4886
+
4887
+
4888
+
4889
+
4890
+
4891
+
4892
+
4865
4893
  <li class="md-nav__item">
4866
4894
  <a href="../../../release-notes/version-2.0.html" class="md-nav__link">
4867
4895
  Version 2.0