nautobot 2.2.3__py3-none-any.whl → 2.2.4__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 (301) hide show
  1. nautobot/core/settings.py +6 -4
  2. nautobot/core/settings.yaml +51 -16
  3. nautobot/core/templates/admin/base.html +2 -2
  4. nautobot/core/templates/base_django.html +2 -2
  5. nautobot/core/templates/buttons/export.html +47 -47
  6. nautobot/core/templates/inc/javascript.html +3 -0
  7. nautobot/core/templates/inc/media.html +3 -0
  8. nautobot/core/templates/login.html +2 -2
  9. nautobot/core/templates/nautobot_config.py.j2 +2 -0
  10. nautobot/core/tests/test_jobs.py +79 -2
  11. nautobot/core/tests/test_views.py +33 -0
  12. nautobot/core/views/mixins.py +4 -0
  13. nautobot/dcim/tests/test_views.py +239 -55
  14. nautobot/dcim/views.py +23 -20
  15. nautobot/extras/api/serializers.py +17 -6
  16. nautobot/extras/tests/test_context_managers.py +18 -0
  17. nautobot/extras/utils.py +2 -1
  18. nautobot/extras/views.py +35 -21
  19. nautobot/ipam/views.py +6 -6
  20. nautobot/project-static/docs/404.html +107 -51
  21. nautobot/project-static/docs/apps/index.html +107 -51
  22. nautobot/project-static/docs/apps/nautobot-apps.html +107 -51
  23. nautobot/project-static/docs/assets/_mkdocstrings.css +6 -1
  24. nautobot/project-static/docs/assets/extra.css +7 -0
  25. nautobot/project-static/docs/assets/javascripts/bundle.3220b9d7.min.js +29 -0
  26. nautobot/project-static/docs/assets/javascripts/bundle.3220b9d7.min.js.map +7 -0
  27. nautobot/project-static/docs/assets/stylesheets/main.66ac8b77.min.css +1 -0
  28. nautobot/project-static/docs/assets/stylesheets/main.66ac8b77.min.css.map +1 -0
  29. nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +107 -51
  30. nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +107 -51
  31. nautobot/project-static/docs/code-reference/nautobot/apps/api.html +107 -51
  32. nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +107 -51
  33. nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +107 -51
  34. nautobot/project-static/docs/code-reference/nautobot/apps/config.html +107 -51
  35. nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +107 -51
  36. nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +107 -51
  37. nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +107 -51
  38. nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +107 -51
  39. nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +107 -51
  40. nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +107 -51
  41. nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +107 -51
  42. nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +107 -51
  43. nautobot/project-static/docs/code-reference/nautobot/apps/models.html +107 -51
  44. nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +107 -51
  45. nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +107 -51
  46. nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +107 -51
  47. nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +107 -51
  48. nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +107 -51
  49. nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +107 -51
  50. nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +107 -51
  51. nautobot/project-static/docs/code-reference/nautobot/apps/views.html +107 -51
  52. nautobot/project-static/docs/development/apps/api/configuration-view.html +110 -54
  53. nautobot/project-static/docs/development/apps/api/database-backend-config.html +110 -54
  54. nautobot/project-static/docs/development/apps/api/models/django-admin.html +107 -51
  55. nautobot/project-static/docs/development/apps/api/models/global-search.html +110 -54
  56. nautobot/project-static/docs/development/apps/api/models/graphql.html +113 -57
  57. nautobot/project-static/docs/development/apps/api/models/index.html +107 -51
  58. nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +113 -57
  59. nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +107 -51
  60. nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +110 -54
  61. nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +107 -51
  62. nautobot/project-static/docs/development/apps/api/platform-features/index.html +107 -51
  63. nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +110 -54
  64. nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +110 -54
  65. nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +110 -54
  66. nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +110 -54
  67. nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +107 -51
  68. nautobot/project-static/docs/development/apps/api/prometheus.html +110 -54
  69. nautobot/project-static/docs/development/apps/api/setup.html +107 -51
  70. nautobot/project-static/docs/development/apps/api/testing.html +113 -57
  71. nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +110 -54
  72. nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +110 -54
  73. nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +107 -51
  74. nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +107 -51
  75. nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +113 -57
  76. nautobot/project-static/docs/development/apps/api/views/base-template.html +107 -51
  77. nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +110 -54
  78. nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +107 -51
  79. nautobot/project-static/docs/development/apps/api/views/help-documentation.html +110 -54
  80. nautobot/project-static/docs/development/apps/api/views/index.html +107 -51
  81. nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +113 -57
  82. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +122 -66
  83. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +110 -54
  84. nautobot/project-static/docs/development/apps/api/views/notes.html +110 -54
  85. nautobot/project-static/docs/development/apps/api/views/rest-api.html +107 -51
  86. nautobot/project-static/docs/development/apps/api/views/urls.html +107 -51
  87. nautobot/project-static/docs/development/apps/index.html +128 -72
  88. nautobot/project-static/docs/development/apps/migration/code-updates.html +107 -51
  89. nautobot/project-static/docs/development/apps/migration/dependency-updates.html +107 -51
  90. nautobot/project-static/docs/development/apps/migration/from-v1.html +107 -51
  91. nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +107 -51
  92. nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +107 -51
  93. nautobot/project-static/docs/development/apps/migration/model-updates/global.html +107 -51
  94. nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +107 -51
  95. nautobot/project-static/docs/development/apps/porting-from-netbox.html +110 -54
  96. nautobot/project-static/docs/development/core/application-registry.html +119 -63
  97. nautobot/project-static/docs/development/core/best-practices.html +122 -66
  98. nautobot/project-static/docs/development/core/bootstrap-ui.html +107 -51
  99. nautobot/project-static/docs/development/core/caching.html +107 -51
  100. nautobot/project-static/docs/development/core/controllers.html +107 -51
  101. nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +113 -57
  102. nautobot/project-static/docs/development/core/generic-views.html +110 -54
  103. nautobot/project-static/docs/development/core/getting-started.html +135 -79
  104. nautobot/project-static/docs/development/core/homepage.html +110 -54
  105. nautobot/project-static/docs/development/core/index.html +107 -51
  106. nautobot/project-static/docs/development/core/model-checklist.html +107 -51
  107. nautobot/project-static/docs/development/core/model-features.html +107 -51
  108. nautobot/project-static/docs/development/core/natural-keys.html +110 -54
  109. nautobot/project-static/docs/development/core/navigation-menu.html +107 -51
  110. nautobot/project-static/docs/development/core/release-checklist.html +107 -51
  111. nautobot/project-static/docs/development/core/role-internals.html +107 -51
  112. nautobot/project-static/docs/development/core/settings.html +107 -51
  113. nautobot/project-static/docs/development/core/style-guide.html +110 -54
  114. nautobot/project-static/docs/development/core/templates.html +113 -57
  115. nautobot/project-static/docs/development/core/testing.html +125 -69
  116. nautobot/project-static/docs/development/core/user-preferences.html +107 -51
  117. nautobot/project-static/docs/development/index.html +107 -51
  118. nautobot/project-static/docs/development/jobs/index.html +173 -117
  119. nautobot/project-static/docs/development/jobs/migration/from-v1.html +110 -54
  120. nautobot/project-static/docs/docker/index.html +3 -3
  121. nautobot/project-static/docs/index.html +125 -69
  122. nautobot/project-static/docs/installation/selinux-troubleshooting.html +3 -3
  123. nautobot/project-static/docs/release-notes/index.html +107 -51
  124. nautobot/project-static/docs/release-notes/version-1.0.html +107 -51
  125. nautobot/project-static/docs/release-notes/version-1.1.html +107 -51
  126. nautobot/project-static/docs/release-notes/version-1.2.html +107 -51
  127. nautobot/project-static/docs/release-notes/version-1.3.html +107 -51
  128. nautobot/project-static/docs/release-notes/version-1.4.html +107 -51
  129. nautobot/project-static/docs/release-notes/version-1.5.html +116 -60
  130. nautobot/project-static/docs/release-notes/version-1.6.html +107 -51
  131. nautobot/project-static/docs/release-notes/version-2.0.html +110 -54
  132. nautobot/project-static/docs/release-notes/version-2.1.html +107 -51
  133. nautobot/project-static/docs/release-notes/version-2.2.html +321 -117
  134. nautobot/project-static/docs/requirements.txt +2 -2
  135. nautobot/project-static/docs/search/search_index.json +1 -1
  136. nautobot/project-static/docs/sitemap.xml +262 -262
  137. nautobot/project-static/docs/sitemap.xml.gz +0 -0
  138. nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +107 -51
  139. nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +107 -51
  140. nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +107 -51
  141. nautobot/project-static/docs/user-guide/administration/configuration/index.html +107 -51
  142. nautobot/project-static/docs/user-guide/administration/configuration/optional-settings.html +251 -164
  143. nautobot/project-static/docs/user-guide/administration/configuration/required-settings.html +113 -57
  144. nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +107 -51
  145. nautobot/project-static/docs/user-guide/administration/guides/caching.html +113 -57
  146. nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +107 -51
  147. nautobot/project-static/docs/user-guide/administration/guides/healthcheck.html +107 -51
  148. nautobot/project-static/docs/user-guide/administration/guides/permissions.html +107 -51
  149. nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +113 -57
  150. nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +107 -51
  151. nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +107 -51
  152. nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +107 -51
  153. nautobot/project-static/docs/user-guide/administration/installation/app-install.html +171 -112
  154. nautobot/project-static/docs/user-guide/administration/installation/docker.html +13 -8626
  155. nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +117 -61
  156. nautobot/project-static/docs/user-guide/administration/installation/health-checks.html +13 -8614
  157. nautobot/project-static/docs/user-guide/administration/installation/http-server.html +252 -165
  158. nautobot/project-static/docs/user-guide/administration/installation/index.html +165 -192
  159. nautobot/project-static/docs/user-guide/administration/installation/install_system.html +411 -691
  160. nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +248 -229
  161. nautobot/project-static/docs/user-guide/administration/installation/selinux-troubleshooting.html +13 -8118
  162. nautobot/project-static/docs/user-guide/administration/installation/services.html +350 -240
  163. nautobot/project-static/docs/user-guide/administration/installation-extras/docker.html +8684 -0
  164. nautobot/project-static/docs/user-guide/administration/installation-extras/health-checks.html +8672 -0
  165. nautobot/project-static/docs/user-guide/administration/installation-extras/selinux-troubleshooting.html +8176 -0
  166. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +110 -54
  167. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +110 -54
  168. nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +155 -99
  169. nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +107 -51
  170. nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +109 -53
  171. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +107 -51
  172. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +107 -51
  173. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +107 -51
  174. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +107 -51
  175. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +107 -51
  176. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +107 -51
  177. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +113 -57
  178. nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +113 -57
  179. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +107 -51
  180. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +107 -51
  181. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +107 -51
  182. nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +107 -51
  183. nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +110 -54
  184. nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +107 -51
  185. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +110 -54
  186. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +110 -54
  187. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +110 -54
  188. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +110 -54
  189. nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +107 -51
  190. nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +107 -51
  191. nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +113 -57
  192. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +110 -54
  193. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +110 -54
  194. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +110 -54
  195. nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +110 -54
  196. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +116 -60
  197. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +110 -54
  198. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +110 -54
  199. nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +119 -63
  200. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +110 -54
  201. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +110 -54
  202. nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +113 -57
  203. nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +113 -57
  204. nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +113 -57
  205. nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +107 -51
  206. nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +113 -57
  207. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +107 -51
  208. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +110 -54
  209. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +110 -54
  210. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +107 -51
  211. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +110 -54
  212. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +110 -54
  213. nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +107 -51
  214. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +107 -51
  215. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +107 -51
  216. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +110 -54
  217. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +110 -54
  218. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +110 -54
  219. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +110 -54
  220. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +107 -51
  221. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +113 -57
  222. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +110 -54
  223. nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +110 -54
  224. nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +110 -54
  225. nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +125 -69
  226. nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +113 -57
  227. nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +128 -72
  228. nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +110 -54
  229. nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +107 -51
  230. nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +110 -54
  231. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +116 -60
  232. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +107 -51
  233. nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +113 -57
  234. nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +107 -51
  235. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +110 -54
  236. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +107 -51
  237. nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +107 -51
  238. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +107 -51
  239. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +107 -51
  240. nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +113 -57
  241. nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +113 -57
  242. nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +107 -51
  243. nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +113 -57
  244. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +107 -51
  245. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +107 -51
  246. nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +107 -51
  247. nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +107 -51
  248. nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +107 -51
  249. nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +107 -51
  250. nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +107 -51
  251. nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +107 -51
  252. nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +107 -51
  253. nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +110 -54
  254. nautobot/project-static/docs/user-guide/feature-guides/graphql.html +113 -57
  255. nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +107 -51
  256. nautobot/project-static/docs/user-guide/feature-guides/relationships.html +110 -54
  257. nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +107 -51
  258. nautobot/project-static/docs/user-guide/index.html +109 -53
  259. nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +107 -51
  260. nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +113 -57
  261. nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +128 -72
  262. nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +107 -51
  263. nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +125 -69
  264. nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +107 -51
  265. nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +110 -54
  266. nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +125 -69
  267. nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +110 -54
  268. nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +107 -51
  269. nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +107 -51
  270. nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +128 -72
  271. nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +113 -57
  272. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +113 -57
  273. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +110 -54
  274. nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +119 -63
  275. nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +107 -51
  276. nautobot/project-static/docs/user-guide/platform-functionality/note.html +110 -54
  277. nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +116 -60
  278. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +110 -54
  279. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +131 -75
  280. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +149 -93
  281. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +110 -54
  282. nautobot/project-static/docs/user-guide/platform-functionality/role.html +107 -51
  283. nautobot/project-static/docs/user-guide/platform-functionality/secret.html +116 -60
  284. nautobot/project-static/docs/user-guide/platform-functionality/status.html +119 -63
  285. nautobot/project-static/docs/user-guide/platform-functionality/tag.html +110 -54
  286. nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +137 -81
  287. nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +110 -54
  288. nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +107 -51
  289. nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +110 -54
  290. nautobot/tenancy/views.py +2 -6
  291. nautobot/virtualization/views.py +5 -9
  292. {nautobot-2.2.3.dist-info → nautobot-2.2.4.dist-info}/METADATA +2 -2
  293. {nautobot-2.2.3.dist-info → nautobot-2.2.4.dist-info}/RECORD +297 -294
  294. nautobot/project-static/docs/assets/javascripts/bundle.bd41221c.min.js +0 -29
  295. nautobot/project-static/docs/assets/javascripts/bundle.bd41221c.min.js.map +0 -7
  296. nautobot/project-static/docs/assets/stylesheets/main.bcfcd587.min.css +0 -1
  297. nautobot/project-static/docs/assets/stylesheets/main.bcfcd587.min.css.map +0 -1
  298. {nautobot-2.2.3.dist-info → nautobot-2.2.4.dist-info}/LICENSE.txt +0 -0
  299. {nautobot-2.2.3.dist-info → nautobot-2.2.4.dist-info}/NOTICE +0 -0
  300. {nautobot-2.2.3.dist-info → nautobot-2.2.4.dist-info}/WHEEL +0 -0
  301. {nautobot-2.2.3.dist-info → nautobot-2.2.4.dist-info}/entry_points.txt +0 -0
@@ -14,11 +14,11 @@
14
14
  <link rel="prev" href="services.html">
15
15
 
16
16
 
17
- <link rel="next" href="external-authentication.html">
17
+ <link rel="next" href="app-install.html">
18
18
 
19
19
 
20
20
  <link rel="icon" href="../../../assets/favicon.ico">
21
- <meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.16">
21
+ <meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.18">
22
22
 
23
23
 
24
24
 
@@ -26,12 +26,20 @@
26
26
 
27
27
 
28
28
 
29
- <link rel="stylesheet" href="../../../assets/stylesheets/main.bcfcd587.min.css">
29
+ <link rel="stylesheet" href="../../../assets/stylesheets/main.66ac8b77.min.css">
30
30
 
31
31
 
32
32
  <link rel="stylesheet" href="../../../assets/stylesheets/palette.06af60db.min.css">
33
33
 
34
34
 
35
+
36
+
37
+
38
+
39
+
40
+
41
+ <style>:root{--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 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 2024 Fonticons, Inc.--><path d="M288 0H128c-17.7 0-32 14.3-32 32s14.3 32 32 32v132.8c0 11.8-3.3 23.5-9.5 33.5L10.3 406.2C3.6 417.2 0 429.7 0 442.6 0 480.9 31.1 512 69.4 512h309.2c38.3 0 69.4-31.1 69.4-69.4 0-12.8-3.6-25.4-10.3-36.4L329.5 230.4c-6.2-10.1-9.5-21.7-9.5-33.5V64c17.7 0 32-14.3 32-32S337.7 0 320 0h-32zm-96 196.8V64h64v132.8c0 23.7 6.6 46.9 19 67.1l34.5 56.1h-171l34.5-56.1c12.4-20.2 19-43.4 19-67.1z"/></svg>');}</style>
42
+
35
43
 
36
44
 
37
45
 
@@ -200,7 +208,7 @@
200
208
  <a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
201
209
  <div class="md-source__icon md-icon">
202
210
 
203
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.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 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>
211
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 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 2024 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>
204
212
  </div>
205
213
  <div class="md-source__repository">
206
214
  GitHub
@@ -360,7 +368,7 @@
360
368
  <a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
361
369
  <div class="md-source__icon md-icon">
362
370
 
363
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.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 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>
371
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 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 2024 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>
364
372
  </div>
365
373
  <div class="md-source__repository">
366
374
  GitHub
@@ -532,7 +540,7 @@
532
540
 
533
541
 
534
542
  <span class="md-ellipsis">
535
- Prerequisites
543
+ Getting Started
536
544
  </span>
537
545
 
538
546
 
@@ -808,11 +816,11 @@
808
816
 
809
817
 
810
818
  <li class="md-nav__item">
811
- <a href="external-authentication.html" class="md-nav__link">
819
+ <a href="app-install.html" class="md-nav__link">
812
820
 
813
821
 
814
822
  <span class="md-ellipsis">
815
- External Authentication (Optional)
823
+ Installing and Using Apps
816
824
  </span>
817
825
 
818
826
 
@@ -829,11 +837,11 @@
829
837
 
830
838
 
831
839
  <li class="md-nav__item">
832
- <a href="app-install.html" class="md-nav__link">
840
+ <a href="external-authentication.html" class="md-nav__link">
833
841
 
834
842
 
835
843
  <span class="md-ellipsis">
836
- Installing and Using Plugins
844
+ External Authentication (Optional)
837
845
  </span>
838
846
 
839
847
 
@@ -843,6 +851,52 @@
843
851
 
844
852
 
845
853
 
854
+ </ul>
855
+ </nav>
856
+
857
+ </li>
858
+
859
+
860
+
861
+
862
+
863
+
864
+
865
+
866
+
867
+
868
+
869
+
870
+
871
+
872
+
873
+
874
+
875
+ <li class="md-nav__item md-nav__item--nested">
876
+
877
+
878
+
879
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_2" >
880
+
881
+
882
+ <label class="md-nav__link" for="__nav_2_1_2" id="__nav_2_1_2_label" tabindex="0">
883
+
884
+
885
+ <span class="md-ellipsis">
886
+ Installation Extras
887
+ </span>
888
+
889
+
890
+ <span class="md-nav__icon md-icon"></span>
891
+ </label>
892
+
893
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_2_label" aria-expanded="false">
894
+ <label class="md-nav__title" for="__nav_2_1_2">
895
+ <span class="md-nav__icon md-icon"></span>
896
+ Installation Extras
897
+ </label>
898
+ <ul class="md-nav__list" data-md-scrollfix>
899
+
846
900
 
847
901
 
848
902
 
@@ -850,7 +904,7 @@
850
904
 
851
905
 
852
906
  <li class="md-nav__item">
853
- <a href="docker.html" class="md-nav__link">
907
+ <a href="../installation-extras/docker.html" class="md-nav__link">
854
908
 
855
909
 
856
910
  <span class="md-ellipsis">
@@ -871,7 +925,7 @@
871
925
 
872
926
 
873
927
  <li class="md-nav__item">
874
- <a href="health-checks.html" class="md-nav__link">
928
+ <a href="../installation-extras/health-checks.html" class="md-nav__link">
875
929
 
876
930
 
877
931
  <span class="md-ellipsis">
@@ -892,7 +946,7 @@
892
946
 
893
947
 
894
948
  <li class="md-nav__item">
895
- <a href="selinux-troubleshooting.html" class="md-nav__link">
949
+ <a href="../installation-extras/selinux-troubleshooting.html" class="md-nav__link">
896
950
 
897
951
 
898
952
  <span class="md-ellipsis">
@@ -931,10 +985,10 @@
931
985
 
932
986
 
933
987
 
934
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_2" >
988
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_3" >
935
989
 
936
990
 
937
- <label class="md-nav__link" for="__nav_2_1_2" id="__nav_2_1_2_label" tabindex="0">
991
+ <label class="md-nav__link" for="__nav_2_1_3" id="__nav_2_1_3_label" tabindex="0">
938
992
 
939
993
 
940
994
  <span class="md-ellipsis">
@@ -945,8 +999,8 @@
945
999
  <span class="md-nav__icon md-icon"></span>
946
1000
  </label>
947
1001
 
948
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_2_label" aria-expanded="false">
949
- <label class="md-nav__title" for="__nav_2_1_2">
1002
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_3_label" aria-expanded="false">
1003
+ <label class="md-nav__title" for="__nav_2_1_3">
950
1004
  <span class="md-nav__icon md-icon"></span>
951
1005
  Upgrading
952
1006
  </label>
@@ -1011,7 +1065,7 @@
1011
1065
 
1012
1066
 
1013
1067
 
1014
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_2_3" >
1068
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_3_3" >
1015
1069
 
1016
1070
 
1017
1071
 
@@ -1027,14 +1081,14 @@
1027
1081
  </a>
1028
1082
 
1029
1083
 
1030
- <label class="md-nav__link " for="__nav_2_1_2_3" id="__nav_2_1_2_3_label" tabindex="0">
1084
+ <label class="md-nav__link " for="__nav_2_1_3_3" id="__nav_2_1_3_3_label" tabindex="0">
1031
1085
  <span class="md-nav__icon md-icon"></span>
1032
1086
  </label>
1033
1087
 
1034
1088
  </div>
1035
1089
 
1036
- <nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_1_2_3_label" aria-expanded="false">
1037
- <label class="md-nav__title" for="__nav_2_1_2_3">
1090
+ <nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_1_3_3_label" aria-expanded="false">
1091
+ <label class="md-nav__title" for="__nav_2_1_3_3">
1038
1092
  <span class="md-nav__icon md-icon"></span>
1039
1093
  Upgrading Nautobot from v1.X to v2.0
1040
1094
  </label>
@@ -1078,7 +1132,7 @@
1078
1132
 
1079
1133
 
1080
1134
 
1081
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_2_3_2" >
1135
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_3_3_2" >
1082
1136
 
1083
1137
 
1084
1138
 
@@ -1094,14 +1148,14 @@
1094
1148
  </a>
1095
1149
 
1096
1150
 
1097
- <label class="md-nav__link " for="__nav_2_1_2_3_2" id="__nav_2_1_2_3_2_label" tabindex="0">
1151
+ <label class="md-nav__link " for="__nav_2_1_3_3_2" id="__nav_2_1_3_3_2_label" tabindex="0">
1098
1152
  <span class="md-nav__icon md-icon"></span>
1099
1153
  </label>
1100
1154
 
1101
1155
  </div>
1102
1156
 
1103
- <nav class="md-nav" data-md-level="5" aria-labelledby="__nav_2_1_2_3_2_label" aria-expanded="false">
1104
- <label class="md-nav__title" for="__nav_2_1_2_3_2">
1157
+ <nav class="md-nav" data-md-level="5" aria-labelledby="__nav_2_1_3_3_2_label" aria-expanded="false">
1158
+ <label class="md-nav__title" for="__nav_2_1_3_3_2">
1105
1159
  <span class="md-nav__icon md-icon"></span>
1106
1160
  IPAM Migration Guide
1107
1161
  </label>
@@ -1232,10 +1286,10 @@
1232
1286
 
1233
1287
 
1234
1288
 
1235
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_3" >
1289
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_4" >
1236
1290
 
1237
1291
 
1238
- <label class="md-nav__link" for="__nav_2_1_3" id="__nav_2_1_3_label" tabindex="0">
1292
+ <label class="md-nav__link" for="__nav_2_1_4" id="__nav_2_1_4_label" tabindex="0">
1239
1293
 
1240
1294
 
1241
1295
  <span class="md-ellipsis">
@@ -1246,8 +1300,8 @@
1246
1300
  <span class="md-nav__icon md-icon"></span>
1247
1301
  </label>
1248
1302
 
1249
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_3_label" aria-expanded="false">
1250
- <label class="md-nav__title" for="__nav_2_1_3">
1303
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_4_label" aria-expanded="false">
1304
+ <label class="md-nav__title" for="__nav_2_1_4">
1251
1305
  <span class="md-nav__icon md-icon"></span>
1252
1306
  Migration
1253
1307
  </label>
@@ -1320,7 +1374,7 @@
1320
1374
 
1321
1375
 
1322
1376
 
1323
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_4" >
1377
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_5" >
1324
1378
 
1325
1379
 
1326
1380
 
@@ -1336,14 +1390,14 @@
1336
1390
  </a>
1337
1391
 
1338
1392
 
1339
- <label class="md-nav__link " for="__nav_2_1_4" id="__nav_2_1_4_label" tabindex="0">
1393
+ <label class="md-nav__link " for="__nav_2_1_5" id="__nav_2_1_5_label" tabindex="0">
1340
1394
  <span class="md-nav__icon md-icon"></span>
1341
1395
  </label>
1342
1396
 
1343
1397
  </div>
1344
1398
 
1345
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_4_label" aria-expanded="false">
1346
- <label class="md-nav__title" for="__nav_2_1_4">
1399
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_5_label" aria-expanded="false">
1400
+ <label class="md-nav__title" for="__nav_2_1_5">
1347
1401
  <span class="md-nav__icon md-icon"></span>
1348
1402
  Configuration
1349
1403
  </label>
@@ -1429,10 +1483,10 @@
1429
1483
 
1430
1484
 
1431
1485
 
1432
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_4_4" >
1486
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_5_4" >
1433
1487
 
1434
1488
 
1435
- <label class="md-nav__link" for="__nav_2_1_4_4" id="__nav_2_1_4_4_label" tabindex="0">
1489
+ <label class="md-nav__link" for="__nav_2_1_5_4" id="__nav_2_1_5_4_label" tabindex="0">
1436
1490
 
1437
1491
 
1438
1492
  <span class="md-ellipsis">
@@ -1443,8 +1497,8 @@
1443
1497
  <span class="md-nav__icon md-icon"></span>
1444
1498
  </label>
1445
1499
 
1446
- <nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_1_4_4_label" aria-expanded="false">
1447
- <label class="md-nav__title" for="__nav_2_1_4_4">
1500
+ <nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_1_5_4_label" aria-expanded="false">
1501
+ <label class="md-nav__title" for="__nav_2_1_5_4">
1448
1502
  <span class="md-nav__icon md-icon"></span>
1449
1503
  External Authentication
1450
1504
  </label>
@@ -1546,10 +1600,10 @@
1546
1600
 
1547
1601
 
1548
1602
 
1549
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_5" >
1603
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_6" >
1550
1604
 
1551
1605
 
1552
- <label class="md-nav__link" for="__nav_2_1_5" id="__nav_2_1_5_label" tabindex="0">
1606
+ <label class="md-nav__link" for="__nav_2_1_6" id="__nav_2_1_6_label" tabindex="0">
1553
1607
 
1554
1608
 
1555
1609
  <span class="md-ellipsis">
@@ -1560,8 +1614,8 @@
1560
1614
  <span class="md-nav__icon md-icon"></span>
1561
1615
  </label>
1562
1616
 
1563
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_5_label" aria-expanded="false">
1564
- <label class="md-nav__title" for="__nav_2_1_5">
1617
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_6_label" aria-expanded="false">
1618
+ <label class="md-nav__title" for="__nav_2_1_6">
1565
1619
  <span class="md-nav__icon md-icon"></span>
1566
1620
  Tools
1567
1621
  </label>
@@ -1634,10 +1688,10 @@
1634
1688
 
1635
1689
 
1636
1690
 
1637
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_6" >
1691
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_7" >
1638
1692
 
1639
1693
 
1640
- <label class="md-nav__link" for="__nav_2_1_6" id="__nav_2_1_6_label" tabindex="0">
1694
+ <label class="md-nav__link" for="__nav_2_1_7" id="__nav_2_1_7_label" tabindex="0">
1641
1695
 
1642
1696
 
1643
1697
  <span class="md-ellipsis">
@@ -1648,8 +1702,8 @@
1648
1702
  <span class="md-nav__icon md-icon"></span>
1649
1703
  </label>
1650
1704
 
1651
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_6_label" aria-expanded="false">
1652
- <label class="md-nav__title" for="__nav_2_1_6">
1705
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_7_label" aria-expanded="false">
1706
+ <label class="md-nav__title" for="__nav_2_1_7">
1653
1707
  <span class="md-nav__icon md-icon"></span>
1654
1708
  Guides
1655
1709
  </label>
@@ -8047,16 +8101,16 @@ be installed on your Nautobot server in a secure location that is readable only
8047
8101
  <p>The command below can be used to generate a self-signed certificate for testing purposes, however it is strongly recommended to use a certificate from a trusted authority in production.</p>
8048
8102
  </div>
8049
8103
  <p>Two files will be created: the public certificate (<code>nautobot.crt</code>) and the private key (<code>nautobot.key</code>). The certificate is published to the world, whereas the private key must be kept secret at all times.</p>
8050
- <div class="tabbed-set tabbed-alternate" data-tabs="1:2"><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="__tabbed_1_1">Ubuntu/Debian</label><label for="__tabbed_1_2">CentOS/RHEL8</label></div>
8104
+ <div class="tabbed-set tabbed-alternate" data-tabs="1:2"><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="__tabbed_1_1">Ubuntu/Debian</label><label for="__tabbed_1_2">RHEL8</label></div>
8051
8105
  <div class="tabbed-content">
8052
8106
  <div class="tabbed-block">
8053
- <div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a>sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
8107
+ <div class="highlight"><span class="filename">Create SSL certificate</span><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a>sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
8054
8108
  <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a> -keyout /etc/ssl/private/nautobot.key \
8055
8109
  <a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a> -out /etc/ssl/certs/nautobot.crt
8056
8110
  </code></pre></div>
8057
8111
  </div>
8058
8112
  <div class="tabbed-block">
8059
- <div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a>sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
8113
+ <div class="highlight"><span class="filename">Create SSL certificate</span><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a>sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
8060
8114
  <a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a> -keyout /etc/pki/tls/private/nautobot.key \
8061
8115
  <a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a> -out /etc/pki/tls/certs/nautobot.crt
8062
8116
  </code></pre></div>
@@ -8074,137 +8128,161 @@ be installed on your Nautobot server in a secure location that is readable only
8074
8128
  and is by far the most popular choice.</p>
8075
8129
  <h4 id="install-nginx">Install NGINX<a class="headerlink" href="#install-nginx" title="Permanent link">&para;</a></h4>
8076
8130
  <p>Begin by installing NGINX:</p>
8077
- <div class="tabbed-set tabbed-alternate" data-tabs="2:2"><input checked="checked" id="__tabbed_2_1" name="__tabbed_2" type="radio" /><input id="__tabbed_2_2" name="__tabbed_2" type="radio" /><div class="tabbed-labels"><label for="__tabbed_2_1">Ubuntu/Debian</label><label for="__tabbed_2_2">CentOS/RHEL8</label></div>
8131
+ <div class="tabbed-set tabbed-alternate" data-tabs="2:2"><input checked="checked" id="__tabbed_2_1" name="__tabbed_2" type="radio" /><input id="__tabbed_2_2" name="__tabbed_2" type="radio" /><div class="tabbed-labels"><label for="__tabbed_2_1">Ubuntu/Debian</label><label for="__tabbed_2_2">RHEL8</label></div>
8078
8132
  <div class="tabbed-content">
8079
8133
  <div class="tabbed-block">
8080
- <div class="highlight"><pre><span></span><code><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a>sudo apt install -y nginx
8134
+ <div class="highlight"><span class="filename">Install NGINX</span><pre><span></span><code><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a>sudo apt install -y nginx
8081
8135
  </code></pre></div>
8082
8136
  </div>
8083
8137
  <div class="tabbed-block">
8084
- <div class="highlight"><pre><span></span><code><a id="__codelineno-3-1" name="__codelineno-3-1" href="#__codelineno-3-1"></a>sudo dnf install -y nginx
8138
+ <div class="highlight"><span class="filename">Install NGINX</span><pre><span></span><code><a id="__codelineno-3-1" name="__codelineno-3-1" href="#__codelineno-3-1"></a>sudo dnf install -y nginx
8085
8139
  </code></pre></div>
8086
8140
  </div>
8087
8141
  </div>
8088
8142
  </div>
8089
8143
  <h4 id="configure-nginx">Configure NGINX<a class="headerlink" href="#configure-nginx" title="Permanent link">&para;</a></h4>
8090
- <p>Once NGINX is installed, copy and paste the following NGINX configuration into
8091
- <code>/etc/nginx/sites-available/nautobot.conf</code> for Ubuntu or <code>/etc/nginx/conf.d/nautobot.conf</code> for CentOS/RHEL:</p>
8092
8144
  <div class="admonition note">
8093
8145
  <p class="admonition-title">Note</p>
8094
8146
  <p>If the file location of SSL certificates had to be changed in the <a href="#obtain-an-ssl-certificate">Obtain an SSL Certificate</a> step above, then the location will need to be changed in the NGINX configuration below.</p>
8095
8147
  </div>
8096
- <div class="tabbed-set tabbed-alternate" data-tabs="3:2"><input checked="checked" id="__tabbed_3_1" name="__tabbed_3" type="radio" /><input id="__tabbed_3_2" name="__tabbed_3" type="radio" /><div class="tabbed-labels"><label for="__tabbed_3_1">Ubuntu/Debian</label><label for="__tabbed_3_2">CentOS/RHEL8</label></div>
8148
+ <div class="tabbed-set tabbed-alternate" data-tabs="3:2"><input checked="checked" id="__tabbed_3_1" name="__tabbed_3" type="radio" /><input id="__tabbed_3_2" name="__tabbed_3" type="radio" /><div class="tabbed-labels"><label for="__tabbed_3_1">Ubuntu/Debian</label><label for="__tabbed_3_2">RHEL8</label></div>
8149
+ <div class="tabbed-content">
8150
+ <div class="tabbed-block">
8151
+ <p>Once NGINX is installed, copy and paste the following NGINX configuration into <code>/etc/nginx/sites-available/nautobot.conf</code>:</p>
8152
+ <div class="tabbed-set tabbed-alternate" data-tabs="4:2"><input checked="checked" id="__tabbed_4_1" name="__tabbed_4" type="radio" /><input id="__tabbed_4_2" name="__tabbed_4" type="radio" /><div class="tabbed-labels"><label for="__tabbed_4_1">Vim</label><label for="__tabbed_4_2">Nano</label></div>
8097
8153
  <div class="tabbed-content">
8098
8154
  <div class="tabbed-block">
8099
- <div class="highlight"><pre><span></span><code><a id="__codelineno-4-1" name="__codelineno-4-1" href="#__codelineno-4-1"></a>server {
8100
- <a id="__codelineno-4-2" name="__codelineno-4-2" href="#__codelineno-4-2"></a> listen 443 ssl http2 default_server;
8101
- <a id="__codelineno-4-3" name="__codelineno-4-3" href="#__codelineno-4-3"></a> listen [::]:443 ssl http2 default_server;
8102
- <a id="__codelineno-4-4" name="__codelineno-4-4" href="#__codelineno-4-4"></a>
8103
- <a id="__codelineno-4-5" name="__codelineno-4-5" href="#__codelineno-4-5"></a> server_name _;
8104
- <a id="__codelineno-4-6" name="__codelineno-4-6" href="#__codelineno-4-6"></a>
8105
- <a id="__codelineno-4-7" name="__codelineno-4-7" href="#__codelineno-4-7"></a> ssl_certificate /etc/ssl/certs/nautobot.crt;
8106
- <a id="__codelineno-4-8" name="__codelineno-4-8" href="#__codelineno-4-8"></a> ssl_certificate_key /etc/ssl/private/nautobot.key;
8107
- <a id="__codelineno-4-9" name="__codelineno-4-9" href="#__codelineno-4-9"></a>
8108
- <a id="__codelineno-4-10" name="__codelineno-4-10" href="#__codelineno-4-10"></a> client_max_body_size 25m;
8109
- <a id="__codelineno-4-11" name="__codelineno-4-11" href="#__codelineno-4-11"></a>
8110
- <a id="__codelineno-4-12" name="__codelineno-4-12" href="#__codelineno-4-12"></a> location /static/ {
8111
- <a id="__codelineno-4-13" name="__codelineno-4-13" href="#__codelineno-4-13"></a> alias /opt/nautobot/static/;
8112
- <a id="__codelineno-4-14" name="__codelineno-4-14" href="#__codelineno-4-14"></a> }
8113
- <a id="__codelineno-4-15" name="__codelineno-4-15" href="#__codelineno-4-15"></a>
8114
- <a id="__codelineno-4-16" name="__codelineno-4-16" href="#__codelineno-4-16"></a> # For subdirectory hosting, you&#39;ll want to toggle this (e.g. `/nautobot/`).
8115
- <a id="__codelineno-4-17" name="__codelineno-4-17" href="#__codelineno-4-17"></a> # Don&#39;t forget to set `FORCE_SCRIPT_NAME` in your `nautobot_config.py` to match.
8116
- <a id="__codelineno-4-18" name="__codelineno-4-18" href="#__codelineno-4-18"></a> # location /nautobot/ {
8117
- <a id="__codelineno-4-19" name="__codelineno-4-19" href="#__codelineno-4-19"></a> location / {
8118
- <a id="__codelineno-4-20" name="__codelineno-4-20" href="#__codelineno-4-20"></a> include uwsgi_params;
8119
- <a id="__codelineno-4-21" name="__codelineno-4-21" href="#__codelineno-4-21"></a> uwsgi_pass 127.0.0.1:8001;
8120
- <a id="__codelineno-4-22" name="__codelineno-4-22" href="#__codelineno-4-22"></a> uwsgi_param Host $host;
8121
- <a id="__codelineno-4-23" name="__codelineno-4-23" href="#__codelineno-4-23"></a> uwsgi_param X-Real-IP $remote_addr;
8122
- <a id="__codelineno-4-24" name="__codelineno-4-24" href="#__codelineno-4-24"></a> uwsgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
8123
- <a id="__codelineno-4-25" name="__codelineno-4-25" href="#__codelineno-4-25"></a> uwsgi_param X-Forwarded-Proto $http_x_forwarded_proto;
8124
- <a id="__codelineno-4-26" name="__codelineno-4-26" href="#__codelineno-4-26"></a>
8125
- <a id="__codelineno-4-27" name="__codelineno-4-27" href="#__codelineno-4-27"></a> # If you want subdirectory hosting, uncomment this. The path must match
8126
- <a id="__codelineno-4-28" name="__codelineno-4-28" href="#__codelineno-4-28"></a> # the path of this location block (e.g. `/nautobot`). For NGINX the path
8127
- <a id="__codelineno-4-29" name="__codelineno-4-29" href="#__codelineno-4-29"></a> # MUST NOT end with a trailing &quot;/&quot;.
8128
- <a id="__codelineno-4-30" name="__codelineno-4-30" href="#__codelineno-4-30"></a> # uwsgi_param SCRIPT_NAME /nautobot;
8129
- <a id="__codelineno-4-31" name="__codelineno-4-31" href="#__codelineno-4-31"></a> }
8130
- <a id="__codelineno-4-32" name="__codelineno-4-32" href="#__codelineno-4-32"></a>
8131
- <a id="__codelineno-4-33" name="__codelineno-4-33" href="#__codelineno-4-33"></a>}
8132
- <a id="__codelineno-4-34" name="__codelineno-4-34" href="#__codelineno-4-34"></a>
8133
- <a id="__codelineno-4-35" name="__codelineno-4-35" href="#__codelineno-4-35"></a>server {
8134
- <a id="__codelineno-4-36" name="__codelineno-4-36" href="#__codelineno-4-36"></a> # Redirect HTTP traffic to HTTPS
8135
- <a id="__codelineno-4-37" name="__codelineno-4-37" href="#__codelineno-4-37"></a> listen 80 default_server;
8136
- <a id="__codelineno-4-38" name="__codelineno-4-38" href="#__codelineno-4-38"></a> listen [::]:80 default_server;
8137
- <a id="__codelineno-4-39" name="__codelineno-4-39" href="#__codelineno-4-39"></a> server_name _;
8138
- <a id="__codelineno-4-40" name="__codelineno-4-40" href="#__codelineno-4-40"></a> return 301 https://$host$request_uri;
8139
- <a id="__codelineno-4-41" name="__codelineno-4-41" href="#__codelineno-4-41"></a>}
8155
+ <div class="highlight"><span class="filename">Edit NGINX config with Vim</span><pre><span></span><code><a id="__codelineno-4-1" name="__codelineno-4-1" href="#__codelineno-4-1"></a>vim /etc/nginx/sites-available/nautobot.conf
8140
8156
  </code></pre></div>
8141
8157
  </div>
8142
8158
  <div class="tabbed-block">
8143
- <div class="highlight"><pre><span></span><code><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a>server {
8144
- <a id="__codelineno-5-2" name="__codelineno-5-2" href="#__codelineno-5-2"></a> listen 443 ssl http2 default_server;
8145
- <a id="__codelineno-5-3" name="__codelineno-5-3" href="#__codelineno-5-3"></a> listen [::]:443 ssl http2 default_server;
8146
- <a id="__codelineno-5-4" name="__codelineno-5-4" href="#__codelineno-5-4"></a>
8147
- <a id="__codelineno-5-5" name="__codelineno-5-5" href="#__codelineno-5-5"></a> server_name _;
8148
- <a id="__codelineno-5-6" name="__codelineno-5-6" href="#__codelineno-5-6"></a>
8149
- <a id="__codelineno-5-7" name="__codelineno-5-7" href="#__codelineno-5-7"></a> ssl_certificate /etc/pki/tls/certs/nautobot.crt;
8150
- <a id="__codelineno-5-8" name="__codelineno-5-8" href="#__codelineno-5-8"></a> ssl_certificate_key /etc/pki/tls/private/nautobot.key;
8151
- <a id="__codelineno-5-9" name="__codelineno-5-9" href="#__codelineno-5-9"></a>
8152
- <a id="__codelineno-5-10" name="__codelineno-5-10" href="#__codelineno-5-10"></a> client_max_body_size 25m;
8153
- <a id="__codelineno-5-11" name="__codelineno-5-11" href="#__codelineno-5-11"></a>
8154
- <a id="__codelineno-5-12" name="__codelineno-5-12" href="#__codelineno-5-12"></a> location /static/ {
8155
- <a id="__codelineno-5-13" name="__codelineno-5-13" href="#__codelineno-5-13"></a> alias /opt/nautobot/static/;
8156
- <a id="__codelineno-5-14" name="__codelineno-5-14" href="#__codelineno-5-14"></a> }
8157
- <a id="__codelineno-5-15" name="__codelineno-5-15" href="#__codelineno-5-15"></a>
8158
- <a id="__codelineno-5-16" name="__codelineno-5-16" href="#__codelineno-5-16"></a> # For subdirectory hosting, you&#39;ll want to toggle this (e.g. `/nautobot/`).
8159
- <a id="__codelineno-5-17" name="__codelineno-5-17" href="#__codelineno-5-17"></a> # Don&#39;t forget to set `FORCE_SCRIPT_NAME` in your `nautobot_config.py` to match.
8160
- <a id="__codelineno-5-18" name="__codelineno-5-18" href="#__codelineno-5-18"></a> # location /nautobot/ {
8161
- <a id="__codelineno-5-19" name="__codelineno-5-19" href="#__codelineno-5-19"></a> location / {
8162
- <a id="__codelineno-5-20" name="__codelineno-5-20" href="#__codelineno-5-20"></a> include uwsgi_params;
8163
- <a id="__codelineno-5-21" name="__codelineno-5-21" href="#__codelineno-5-21"></a> uwsgi_pass 127.0.0.1:8001;
8164
- <a id="__codelineno-5-22" name="__codelineno-5-22" href="#__codelineno-5-22"></a> uwsgi_param Host $host;
8165
- <a id="__codelineno-5-23" name="__codelineno-5-23" href="#__codelineno-5-23"></a> uwsgi_param X-Real-IP $remote_addr;
8166
- <a id="__codelineno-5-24" name="__codelineno-5-24" href="#__codelineno-5-24"></a> uwsgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
8167
- <a id="__codelineno-5-25" name="__codelineno-5-25" href="#__codelineno-5-25"></a> uwsgi_param X-Forwarded-Proto $http_x_forwarded_proto;
8168
- <a id="__codelineno-5-26" name="__codelineno-5-26" href="#__codelineno-5-26"></a>
8169
- <a id="__codelineno-5-27" name="__codelineno-5-27" href="#__codelineno-5-27"></a> # If you want subdirectory hosting, uncomment this. The path must match
8170
- <a id="__codelineno-5-28" name="__codelineno-5-28" href="#__codelineno-5-28"></a> # the path of this location block (e.g. `/nautobot`). For NGINX the path
8171
- <a id="__codelineno-5-29" name="__codelineno-5-29" href="#__codelineno-5-29"></a> # MUST NOT end with a trailing &quot;/&quot;.
8172
- <a id="__codelineno-5-30" name="__codelineno-5-30" href="#__codelineno-5-30"></a> # uwsgi_param SCRIPT_NAME /nautobot;
8173
- <a id="__codelineno-5-31" name="__codelineno-5-31" href="#__codelineno-5-31"></a> }
8174
- <a id="__codelineno-5-32" name="__codelineno-5-32" href="#__codelineno-5-32"></a>
8175
- <a id="__codelineno-5-33" name="__codelineno-5-33" href="#__codelineno-5-33"></a>}
8176
- <a id="__codelineno-5-34" name="__codelineno-5-34" href="#__codelineno-5-34"></a>
8177
- <a id="__codelineno-5-35" name="__codelineno-5-35" href="#__codelineno-5-35"></a>server {
8178
- <a id="__codelineno-5-36" name="__codelineno-5-36" href="#__codelineno-5-36"></a> # Redirect HTTP traffic to HTTPS
8179
- <a id="__codelineno-5-37" name="__codelineno-5-37" href="#__codelineno-5-37"></a> listen 80 default_server;
8180
- <a id="__codelineno-5-38" name="__codelineno-5-38" href="#__codelineno-5-38"></a> listen [::]:80 default_server;
8181
- <a id="__codelineno-5-39" name="__codelineno-5-39" href="#__codelineno-5-39"></a> server_name _;
8182
- <a id="__codelineno-5-40" name="__codelineno-5-40" href="#__codelineno-5-40"></a> return 301 https://$host$request_uri;
8183
- <a id="__codelineno-5-41" name="__codelineno-5-41" href="#__codelineno-5-41"></a>}
8159
+ <div class="highlight"><span class="filename">Edit NGINX config with Nano</span><pre><span></span><code><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a>nano /etc/nginx/sites-available/nautobot.conf
8160
+ </code></pre></div>
8161
+ </div>
8162
+ </div>
8163
+ </div>
8164
+ <div class="highlight"><span class="filename">/etc/nginx/sites-available/nautobot.conf</span><pre><span></span><code><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a>server {
8165
+ <a id="__codelineno-6-2" name="__codelineno-6-2" href="#__codelineno-6-2"></a> listen 443 ssl http2 default_server;
8166
+ <a id="__codelineno-6-3" name="__codelineno-6-3" href="#__codelineno-6-3"></a> listen [::]:443 ssl http2 default_server;
8167
+ <a id="__codelineno-6-4" name="__codelineno-6-4" href="#__codelineno-6-4"></a>
8168
+ <a id="__codelineno-6-5" name="__codelineno-6-5" href="#__codelineno-6-5"></a> server_name _;
8169
+ <a id="__codelineno-6-6" name="__codelineno-6-6" href="#__codelineno-6-6"></a>
8170
+ <a id="__codelineno-6-7" name="__codelineno-6-7" href="#__codelineno-6-7"></a> ssl_certificate /etc/ssl/certs/nautobot.crt;
8171
+ <a id="__codelineno-6-8" name="__codelineno-6-8" href="#__codelineno-6-8"></a> ssl_certificate_key /etc/ssl/private/nautobot.key;
8172
+ <a id="__codelineno-6-9" name="__codelineno-6-9" href="#__codelineno-6-9"></a>
8173
+ <a id="__codelineno-6-10" name="__codelineno-6-10" href="#__codelineno-6-10"></a> client_max_body_size 25m;
8174
+ <a id="__codelineno-6-11" name="__codelineno-6-11" href="#__codelineno-6-11"></a>
8175
+ <a id="__codelineno-6-12" name="__codelineno-6-12" href="#__codelineno-6-12"></a> location /static/ {
8176
+ <a id="__codelineno-6-13" name="__codelineno-6-13" href="#__codelineno-6-13"></a> alias /opt/nautobot/static/;
8177
+ <a id="__codelineno-6-14" name="__codelineno-6-14" href="#__codelineno-6-14"></a> }
8178
+ <a id="__codelineno-6-15" name="__codelineno-6-15" href="#__codelineno-6-15"></a>
8179
+ <a id="__codelineno-6-16" name="__codelineno-6-16" href="#__codelineno-6-16"></a> # For subdirectory hosting, you&#39;ll want to toggle this (e.g. `/nautobot/`).
8180
+ <a id="__codelineno-6-17" name="__codelineno-6-17" href="#__codelineno-6-17"></a> # Don&#39;t forget to set `FORCE_SCRIPT_NAME` in your `nautobot_config.py` to match.
8181
+ <a id="__codelineno-6-18" name="__codelineno-6-18" href="#__codelineno-6-18"></a> # location /nautobot/ {
8182
+ <a id="__codelineno-6-19" name="__codelineno-6-19" href="#__codelineno-6-19"></a> location / {
8183
+ <a id="__codelineno-6-20" name="__codelineno-6-20" href="#__codelineno-6-20"></a> include uwsgi_params;
8184
+ <a id="__codelineno-6-21" name="__codelineno-6-21" href="#__codelineno-6-21"></a> uwsgi_pass 127.0.0.1:8001;
8185
+ <a id="__codelineno-6-22" name="__codelineno-6-22" href="#__codelineno-6-22"></a> uwsgi_param Host $host;
8186
+ <a id="__codelineno-6-23" name="__codelineno-6-23" href="#__codelineno-6-23"></a> uwsgi_param X-Real-IP $remote_addr;
8187
+ <a id="__codelineno-6-24" name="__codelineno-6-24" href="#__codelineno-6-24"></a> uwsgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
8188
+ <a id="__codelineno-6-25" name="__codelineno-6-25" href="#__codelineno-6-25"></a> uwsgi_param X-Forwarded-Proto $http_x_forwarded_proto;
8189
+ <a id="__codelineno-6-26" name="__codelineno-6-26" href="#__codelineno-6-26"></a>
8190
+ <a id="__codelineno-6-27" name="__codelineno-6-27" href="#__codelineno-6-27"></a> # If you want subdirectory hosting, uncomment this. The path must match
8191
+ <a id="__codelineno-6-28" name="__codelineno-6-28" href="#__codelineno-6-28"></a> # the path of this location block (e.g. `/nautobot`). For NGINX the path
8192
+ <a id="__codelineno-6-29" name="__codelineno-6-29" href="#__codelineno-6-29"></a> # MUST NOT end with a trailing &quot;/&quot;.
8193
+ <a id="__codelineno-6-30" name="__codelineno-6-30" href="#__codelineno-6-30"></a> # uwsgi_param SCRIPT_NAME /nautobot;
8194
+ <a id="__codelineno-6-31" name="__codelineno-6-31" href="#__codelineno-6-31"></a> }
8195
+ <a id="__codelineno-6-32" name="__codelineno-6-32" href="#__codelineno-6-32"></a>
8196
+ <a id="__codelineno-6-33" name="__codelineno-6-33" href="#__codelineno-6-33"></a>}
8197
+ <a id="__codelineno-6-34" name="__codelineno-6-34" href="#__codelineno-6-34"></a>
8198
+ <a id="__codelineno-6-35" name="__codelineno-6-35" href="#__codelineno-6-35"></a>server {
8199
+ <a id="__codelineno-6-36" name="__codelineno-6-36" href="#__codelineno-6-36"></a> # Redirect HTTP traffic to HTTPS
8200
+ <a id="__codelineno-6-37" name="__codelineno-6-37" href="#__codelineno-6-37"></a> listen 80 default_server;
8201
+ <a id="__codelineno-6-38" name="__codelineno-6-38" href="#__codelineno-6-38"></a> listen [::]:80 default_server;
8202
+ <a id="__codelineno-6-39" name="__codelineno-6-39" href="#__codelineno-6-39"></a> server_name _;
8203
+ <a id="__codelineno-6-40" name="__codelineno-6-40" href="#__codelineno-6-40"></a> return 301 https://$host$request_uri;
8204
+ <a id="__codelineno-6-41" name="__codelineno-6-41" href="#__codelineno-6-41"></a>}
8205
+ </code></pre></div>
8206
+ </div>
8207
+ <div class="tabbed-block">
8208
+ <p>Once NGINX is installed, copy and paste the following NGINX configuration for the Nautobot NGINX site.</p>
8209
+ <div class="tabbed-set tabbed-alternate" data-tabs="5:2"><input checked="checked" id="__tabbed_5_1" name="__tabbed_5" type="radio" /><input id="__tabbed_5_2" name="__tabbed_5" type="radio" /><div class="tabbed-labels"><label for="__tabbed_5_1">Vim</label><label for="__tabbed_5_2">Nano</label></div>
8210
+ <div class="tabbed-content">
8211
+ <div class="tabbed-block">
8212
+ <div class="highlight"><span class="filename">Edit Nautobot site config with Vim</span><pre><span></span><code><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a>vim /etc/nginx/conf.d/nautobot.conf
8213
+ </code></pre></div>
8214
+ </div>
8215
+ <div class="tabbed-block">
8216
+ <div class="highlight"><span class="filename">Edit Nautobot site config with Nano</span><pre><span></span><code><a id="__codelineno-8-1" name="__codelineno-8-1" href="#__codelineno-8-1"></a>nano /etc/nginx/conf.d/nautobot.conf
8217
+ </code></pre></div>
8218
+ </div>
8219
+ </div>
8220
+ </div>
8221
+ <div class="highlight"><span class="filename">/etc/nginx/conf.d/nautobot.conf</span><pre><span></span><code><a id="__codelineno-9-1" name="__codelineno-9-1" href="#__codelineno-9-1"></a>server {
8222
+ <a id="__codelineno-9-2" name="__codelineno-9-2" href="#__codelineno-9-2"></a> listen 443 ssl http2 default_server;
8223
+ <a id="__codelineno-9-3" name="__codelineno-9-3" href="#__codelineno-9-3"></a> listen [::]:443 ssl http2 default_server;
8224
+ <a id="__codelineno-9-4" name="__codelineno-9-4" href="#__codelineno-9-4"></a>
8225
+ <a id="__codelineno-9-5" name="__codelineno-9-5" href="#__codelineno-9-5"></a> server_name _;
8226
+ <a id="__codelineno-9-6" name="__codelineno-9-6" href="#__codelineno-9-6"></a>
8227
+ <a id="__codelineno-9-7" name="__codelineno-9-7" href="#__codelineno-9-7"></a> ssl_certificate /etc/pki/tls/certs/nautobot.crt;
8228
+ <a id="__codelineno-9-8" name="__codelineno-9-8" href="#__codelineno-9-8"></a> ssl_certificate_key /etc/pki/tls/private/nautobot.key;
8229
+ <a id="__codelineno-9-9" name="__codelineno-9-9" href="#__codelineno-9-9"></a>
8230
+ <a id="__codelineno-9-10" name="__codelineno-9-10" href="#__codelineno-9-10"></a> client_max_body_size 25m;
8231
+ <a id="__codelineno-9-11" name="__codelineno-9-11" href="#__codelineno-9-11"></a>
8232
+ <a id="__codelineno-9-12" name="__codelineno-9-12" href="#__codelineno-9-12"></a> location /static/ {
8233
+ <a id="__codelineno-9-13" name="__codelineno-9-13" href="#__codelineno-9-13"></a> alias /opt/nautobot/static/;
8234
+ <a id="__codelineno-9-14" name="__codelineno-9-14" href="#__codelineno-9-14"></a> }
8235
+ <a id="__codelineno-9-15" name="__codelineno-9-15" href="#__codelineno-9-15"></a>
8236
+ <a id="__codelineno-9-16" name="__codelineno-9-16" href="#__codelineno-9-16"></a> # For subdirectory hosting, you&#39;ll want to toggle this (e.g. `/nautobot/`).
8237
+ <a id="__codelineno-9-17" name="__codelineno-9-17" href="#__codelineno-9-17"></a> # Don&#39;t forget to set `FORCE_SCRIPT_NAME` in your `nautobot_config.py` to match.
8238
+ <a id="__codelineno-9-18" name="__codelineno-9-18" href="#__codelineno-9-18"></a> # location /nautobot/ {
8239
+ <a id="__codelineno-9-19" name="__codelineno-9-19" href="#__codelineno-9-19"></a> location / {
8240
+ <a id="__codelineno-9-20" name="__codelineno-9-20" href="#__codelineno-9-20"></a> include uwsgi_params;
8241
+ <a id="__codelineno-9-21" name="__codelineno-9-21" href="#__codelineno-9-21"></a> uwsgi_pass 127.0.0.1:8001;
8242
+ <a id="__codelineno-9-22" name="__codelineno-9-22" href="#__codelineno-9-22"></a> uwsgi_param Host $host;
8243
+ <a id="__codelineno-9-23" name="__codelineno-9-23" href="#__codelineno-9-23"></a> uwsgi_param X-Real-IP $remote_addr;
8244
+ <a id="__codelineno-9-24" name="__codelineno-9-24" href="#__codelineno-9-24"></a> uwsgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
8245
+ <a id="__codelineno-9-25" name="__codelineno-9-25" href="#__codelineno-9-25"></a> uwsgi_param X-Forwarded-Proto $http_x_forwarded_proto;
8246
+ <a id="__codelineno-9-26" name="__codelineno-9-26" href="#__codelineno-9-26"></a>
8247
+ <a id="__codelineno-9-27" name="__codelineno-9-27" href="#__codelineno-9-27"></a> # If you want subdirectory hosting, uncomment this. The path must match
8248
+ <a id="__codelineno-9-28" name="__codelineno-9-28" href="#__codelineno-9-28"></a> # the path of this location block (e.g. `/nautobot`). For NGINX the path
8249
+ <a id="__codelineno-9-29" name="__codelineno-9-29" href="#__codelineno-9-29"></a> # MUST NOT end with a trailing &quot;/&quot;.
8250
+ <a id="__codelineno-9-30" name="__codelineno-9-30" href="#__codelineno-9-30"></a> # uwsgi_param SCRIPT_NAME /nautobot;
8251
+ <a id="__codelineno-9-31" name="__codelineno-9-31" href="#__codelineno-9-31"></a> }
8252
+ <a id="__codelineno-9-32" name="__codelineno-9-32" href="#__codelineno-9-32"></a>
8253
+ <a id="__codelineno-9-33" name="__codelineno-9-33" href="#__codelineno-9-33"></a>}
8254
+ <a id="__codelineno-9-34" name="__codelineno-9-34" href="#__codelineno-9-34"></a>
8255
+ <a id="__codelineno-9-35" name="__codelineno-9-35" href="#__codelineno-9-35"></a>server {
8256
+ <a id="__codelineno-9-36" name="__codelineno-9-36" href="#__codelineno-9-36"></a> # Redirect HTTP traffic to HTTPS
8257
+ <a id="__codelineno-9-37" name="__codelineno-9-37" href="#__codelineno-9-37"></a> listen 80 default_server;
8258
+ <a id="__codelineno-9-38" name="__codelineno-9-38" href="#__codelineno-9-38"></a> listen [::]:80 default_server;
8259
+ <a id="__codelineno-9-39" name="__codelineno-9-39" href="#__codelineno-9-39"></a> server_name _;
8260
+ <a id="__codelineno-9-40" name="__codelineno-9-40" href="#__codelineno-9-40"></a> return 301 https://$host$request_uri;
8261
+ <a id="__codelineno-9-41" name="__codelineno-9-41" href="#__codelineno-9-41"></a>}
8184
8262
  </code></pre></div>
8185
8263
  </div>
8186
8264
  </div>
8187
8265
  </div>
8188
8266
  <h4 id="enable-nautobot">Enable Nautobot<a class="headerlink" href="#enable-nautobot" title="Permanent link">&para;</a></h4>
8189
- <div class="tabbed-set tabbed-alternate" data-tabs="4:2"><input checked="checked" id="__tabbed_4_1" name="__tabbed_4" type="radio" /><input id="__tabbed_4_2" name="__tabbed_4" type="radio" /><div class="tabbed-labels"><label for="__tabbed_4_1">Ubuntu/Debian</label><label for="__tabbed_4_2">CentOS/RHEL8</label></div>
8267
+ <div class="tabbed-set tabbed-alternate" data-tabs="6:2"><input checked="checked" id="__tabbed_6_1" name="__tabbed_6" type="radio" /><input id="__tabbed_6_2" name="__tabbed_6" type="radio" /><div class="tabbed-labels"><label for="__tabbed_6_1">Ubuntu/Debian</label><label for="__tabbed_6_2">RHEL8</label></div>
8190
8268
  <div class="tabbed-content">
8191
8269
  <div class="tabbed-block">
8192
8270
  <p>To enable the Nautobot site, you'll need to delete <code>/etc/nginx/sites-enabled/default</code> and create a symbolic link in the
8193
8271
  <code>sites-enabled</code> directory to the configuration file you just created:</p>
8194
- <div class="highlight"><pre><span></span><code><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a>sudo rm -f /etc/nginx/sites-enabled/default
8195
- <a id="__codelineno-6-2" name="__codelineno-6-2" href="#__codelineno-6-2"></a>sudo ln -s /etc/nginx/sites-available/nautobot.conf /etc/nginx/sites-enabled/nautobot.conf
8272
+ <div class="highlight"><span class="filename">Link Nautobot NGINX site config</span><pre><span></span><code><a id="__codelineno-10-1" name="__codelineno-10-1" href="#__codelineno-10-1"></a>sudo rm -f /etc/nginx/sites-enabled/default
8273
+ <a id="__codelineno-10-2" name="__codelineno-10-2" href="#__codelineno-10-2"></a>sudo ln -s /etc/nginx/sites-available/nautobot.conf /etc/nginx/sites-enabled/nautobot.conf
8196
8274
  </code></pre></div>
8197
8275
  </div>
8198
8276
  <div class="tabbed-block">
8199
8277
  <p>Run the following command to disable the default site that comes with the <code>nginx</code> package:</p>
8200
- <div class="highlight"><pre><span></span><code><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a>sudo sed -i &#39;s@ default_server@@&#39; /etc/nginx/nginx.conf
8278
+ <div class="highlight"><span class="filename">Link Nautobot NGINX site config</span><pre><span></span><code><a id="__codelineno-11-1" name="__codelineno-11-1" href="#__codelineno-11-1"></a>sudo sed -i &#39;s@ default_server@@&#39; /etc/nginx/nginx.conf
8201
8279
  </code></pre></div>
8202
8280
  </div>
8203
8281
  </div>
8204
8282
  </div>
8205
8283
  <h4 id="restart-nginx">Restart NGINX<a class="headerlink" href="#restart-nginx" title="Permanent link">&para;</a></h4>
8206
8284
  <p>Finally, restart the <code>nginx</code> service to use the new configuration.</p>
8207
- <div class="highlight"><pre><span></span><code><a id="__codelineno-8-1" name="__codelineno-8-1" href="#__codelineno-8-1"></a>sudo systemctl restart nginx
8285
+ <div class="highlight"><span class="filename">Restart NGINX</span><pre><span></span><code><a id="__codelineno-12-1" name="__codelineno-12-1" href="#__codelineno-12-1"></a>sudo systemctl restart nginx
8208
8286
  </code></pre></div>
8209
8287
  <div class="admonition info">
8210
8288
  <p class="admonition-title">Info</p>
@@ -8213,7 +8291,7 @@ and is by far the most popular choice.</p>
8213
8291
  <h2 id="confirm-permissions-for-nautobot_root">Confirm Permissions for NAUTOBOT_ROOT<a class="headerlink" href="#confirm-permissions-for-nautobot_root" title="Permanent link">&para;</a></h2>
8214
8292
  <p>Ensure that the <code>NAUTOBOT_ROOT</code> permissions are set to <code>755</code>.
8215
8293
  If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8216
- <div class="highlight"><pre><span></span><code><a id="__codelineno-9-1" name="__codelineno-9-1" href="#__codelineno-9-1"></a>chmod 755 $NAUTOBOT_ROOT
8294
+ <div class="highlight"><span class="filename">Update all permissions to 755 in Nautobot Root</span><pre><span></span><code><a id="__codelineno-13-1" name="__codelineno-13-1" href="#__codelineno-13-1"></a>chmod 755 $NAUTOBOT_ROOT
8217
8295
  </code></pre></div>
8218
8296
  <h2 id="confirm-connectivity">Confirm Connectivity<a class="headerlink" href="#confirm-connectivity" title="Permanent link">&para;</a></h2>
8219
8297
  <p>At this point, you should be able to connect to the HTTPS service at the server name or IP address you provided. If you used a self-signed certificate, you will likely need to explicitly allow connectivity in your browser.</p>
@@ -8235,38 +8313,45 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8235
8313
  <h3 id="static-media-failure">Static Media Failure<a class="headerlink" href="#static-media-failure" title="Permanent link">&para;</a></h3>
8236
8314
  <p>If you get a <em>Static Media Failure; The following static media file failed to load: css/base.css</em>, verify the permissions on the <code>$NAUTOBOT_ROOT</code> directory are <code>755</code>.</p>
8237
8315
  <p>Example of correct permissions (at the <code>[root@localhost ~]#</code> prompt)</p>
8238
- <div class="highlight"><pre><span></span><code><a id="__codelineno-10-1" name="__codelineno-10-1" href="#__codelineno-10-1"></a>ls -l /opt/
8316
+ <div class="highlight"><span class="filename">List /opt/ files</span><pre><span></span><code><a id="__codelineno-14-1" name="__codelineno-14-1" href="#__codelineno-14-1"></a>ls -l /opt/
8239
8317
  </code></pre></div>
8240
- <p>Example output:</p>
8241
- <div class="highlight"><pre><span></span><code><a id="__codelineno-11-1" name="__codelineno-11-1" href="#__codelineno-11-1"></a>total 4
8242
- <a id="__codelineno-11-2" name="__codelineno-11-2" href="#__codelineno-11-2"></a>drwxr-xr-x. 11 nautobot nautobot 4096 Apr 5 11:24 nautobot
8243
- <a id="__codelineno-11-3" name="__codelineno-11-3" href="#__codelineno-11-3"></a>[root@localhost ~]#
8318
+ <details class="example">
8319
+ <summary>Output of list files</summary>
8320
+ <div class="highlight"><span class="filename">Example output of list</span><pre><span></span><code><a id="__codelineno-15-1" name="__codelineno-15-1" href="#__codelineno-15-1"></a>total 4
8321
+ <a id="__codelineno-15-2" name="__codelineno-15-2" href="#__codelineno-15-2"></a>drwxr-xr-x. 11 nautobot nautobot 4096 Apr 5 11:24 nautobot
8322
+ <a id="__codelineno-15-3" name="__codelineno-15-3" href="#__codelineno-15-3"></a>[root@localhost ~]#
8244
8323
  </code></pre></div>
8324
+ </details>
8245
8325
  <p>If the permissions are not correct, modify them accordingly.</p>
8246
8326
  <p>Example of modifying the permissions:</p>
8247
- <div class="highlight"><pre><span></span><code><a id="__codelineno-12-1" name="__codelineno-12-1" href="#__codelineno-12-1"></a>ls -l /opt/
8327
+ <div class="highlight"><span class="filename">List /opt/ files</span><pre><span></span><code><a id="__codelineno-16-1" name="__codelineno-16-1" href="#__codelineno-16-1"></a>ls -l /opt/
8248
8328
  </code></pre></div>
8249
- <p>Example output:</p>
8250
- <div class="highlight"><pre><span></span><code><a id="__codelineno-13-1" name="__codelineno-13-1" href="#__codelineno-13-1"></a>total 4
8251
- <a id="__codelineno-13-2" name="__codelineno-13-2" href="#__codelineno-13-2"></a>drwx------. 11 nautobot nautobot 4096 Apr 5 10:00 nautobot
8329
+ <details class="example">
8330
+ <summary>Output of list files in <code>/opt</code></summary>
8331
+ <div class="highlight"><span class="filename">Example output of list</span><pre><span></span><code><a id="__codelineno-17-1" name="__codelineno-17-1" href="#__codelineno-17-1"></a>total 4
8332
+ <a id="__codelineno-17-2" name="__codelineno-17-2" href="#__codelineno-17-2"></a>drwx------. 11 nautobot nautobot 4096 Apr 5 10:00 nautobot
8252
8333
  </code></pre></div>
8334
+ </details>
8253
8335
  <p>At the prompt <code>[nautobot@localhost ~]$</code> execute:</p>
8254
- <div class="highlight"><pre><span></span><code><a id="__codelineno-14-1" name="__codelineno-14-1" href="#__codelineno-14-1"></a>chmod 755 $NAUTOBOT
8336
+ <div class="highlight"><span class="filename">Update all permissions to 755 in Nautobot Root</span><pre><span></span><code><a id="__codelineno-18-1" name="__codelineno-18-1" href="#__codelineno-18-1"></a>chmod 755 $NAUTOBOT
8255
8337
  </code></pre></div>
8256
8338
  <p>Then to verify that the user has the permissions to the directory execute at the <code>[nautobot@localhost ~]$</code> prompt:</p>
8257
- <div class="highlight"><pre><span></span><code><a id="__codelineno-15-1" name="__codelineno-15-1" href="#__codelineno-15-1"></a>ls -l /opt/
8339
+ <div class="highlight"><span class="filename">List files of /opt/</span><pre><span></span><code><a id="__codelineno-19-1" name="__codelineno-19-1" href="#__codelineno-19-1"></a>ls -l /opt/
8258
8340
  </code></pre></div>
8341
+ <details class="example">
8342
+ <summary>Output of list files in /opt</summary>
8259
8343
  <p>Example output shows that the user and group are both <code>nautobot</code> below:</p>
8260
- <div class="highlight"><pre><span></span><code><a id="__codelineno-16-1" name="__codelineno-16-1" href="#__codelineno-16-1"></a>total 4
8261
- <a id="__codelineno-16-2" name="__codelineno-16-2" href="#__codelineno-16-2"></a>drwxr-xr-x. 11 nautobot nautobot 4096 Apr 5 11:24 nautobot
8344
+ <div class="highlight"><span class="filename">Example output of ls</span><pre><span></span><code><a id="__codelineno-20-1" name="__codelineno-20-1" href="#__codelineno-20-1"></a>total 4
8345
+ <a id="__codelineno-20-2" name="__codelineno-20-2" href="#__codelineno-20-2"></a>drwxr-xr-x. 11 nautobot nautobot 4096 Apr 5 11:24 nautobot
8262
8346
  </code></pre></div>
8347
+ </details>
8263
8348
  <h3 id="502-bad-gateway">502 Bad Gateway<a class="headerlink" href="#502-bad-gateway" title="Permanent link">&para;</a></h3>
8264
8349
  <p>If you are able to connect but receive a 502 (bad gateway) error, check the following:</p>
8265
8350
  <ul>
8266
8351
  <li>The uWSGI worker processes are running (<code>systemctl status nautobot</code> should show a status of <code>active (running)</code>)</li>
8267
8352
  <li>NGINX is configured to connect to the port on which uWSGI is listening (default is <code>8001</code>).</li>
8268
8353
  <li>SELinux may be preventing the reverse proxy connection. You may need to allow HTTP network connections with the
8269
- command <code>setsebool -P httpd_can_network_connect 1</code>. For further information, view the <a href="selinux-troubleshooting.html">SELinux
8354
+ command <code>setsebool -P httpd_can_network_connect 1</code>. For further information, view the <a href="../installation-extras/selinux-troubleshooting.html">SELinux
8270
8355
  troubleshooting</a> guide.</li>
8271
8356
  </ul>
8272
8357
 
@@ -8286,6 +8371,8 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8286
8371
  </div>
8287
8372
 
8288
8373
 
8374
+ <script>var tabs=__md_get("__tabs");if(Array.isArray(tabs))e:for(var set of document.querySelectorAll(".tabbed-set")){var tab,labels=set.querySelector(".tabbed-labels");for(tab of tabs)for(var label of labels.getElementsByTagName("label"))if(label.innerText.trim()===tab){var input=document.getElementById(label.htmlFor);input.checked=!0;continue e}}</script>
8375
+
8289
8376
  <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
8290
8377
  </div>
8291
8378
 
@@ -8315,13 +8402,13 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8315
8402
 
8316
8403
 
8317
8404
 
8318
- <a href="external-authentication.html" class="md-footer__link md-footer__link--next" aria-label="Next: External Authentication (Optional)">
8405
+ <a href="app-install.html" class="md-footer__link md-footer__link--next" aria-label="Next: Installing and Using Apps">
8319
8406
  <div class="md-footer__title">
8320
8407
  <span class="md-footer__direction">
8321
8408
  Next
8322
8409
  </span>
8323
8410
  <div class="md-ellipsis">
8324
- External Authentication (Optional)
8411
+ Installing and Using Apps
8325
8412
  </div>
8326
8413
  </div>
8327
8414
  <div class="md-footer__button md-icon">
@@ -8363,7 +8450,7 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8363
8450
 
8364
8451
 
8365
8452
  <a href="https://blog.networktocode.com/blog/tags/nautobot" target="_blank" rel="noopener" title="Network to Code Blog" class="md-social__link">
8366
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.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 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>
8453
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 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 2024 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>
8367
8454
  </a>
8368
8455
 
8369
8456
 
@@ -8371,7 +8458,7 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8371
8458
 
8372
8459
 
8373
8460
  <a href="https://www.youtube.com/playlist?list=PLjA0bhxgryJ2Ts4GJMDA-tPzVWEncv4pb" target="_blank" rel="noopener" title="Nautobot Videos" class="md-social__link">
8374
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.5.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 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>
8461
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.5.2 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 2024 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>
8375
8462
  </a>
8376
8463
 
8377
8464
 
@@ -8379,7 +8466,7 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8379
8466
 
8380
8467
 
8381
8468
  <a href="https://www.networktocode.com/community/" target="_blank" rel="noopener" title="Network to Code Community" class="md-social__link">
8382
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.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 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>
8469
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 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 2024 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>
8383
8470
  </a>
8384
8471
 
8385
8472
 
@@ -8387,7 +8474,7 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8387
8474
 
8388
8475
 
8389
8476
  <a href="https://github.com/nautobot/nautobot" target="_blank" rel="noopener" title="GitHub Repo" class="md-social__link">
8390
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.5.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 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>
8477
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.5.2 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 2024 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>
8391
8478
  </a>
8392
8479
 
8393
8480
 
@@ -8395,7 +8482,7 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8395
8482
 
8396
8483
 
8397
8484
  <a href="https://twitter.com/networktocode" target="_blank" rel="noopener" title="Network to Code Twitter" class="md-social__link">
8398
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.5.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 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>
8485
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.5.2 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 2024 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>
8399
8486
  </a>
8400
8487
 
8401
8488
  </div>
@@ -8410,10 +8497,10 @@ If permissions need to be changed, as the <code>nautobot</code> user run:</p>
8410
8497
  </div>
8411
8498
 
8412
8499
 
8413
- <script id="__config" type="application/json">{"base": "../../..", "features": ["content.code.copy", "navigation.footer", "navigation.tabs", "navigation.tabs.sticky", "navigation.tracking", "search.highlight", "search.share", "search.suggest"], "search": "../../../assets/javascripts/workers/search.b8dbb3d2.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>
8500
+ <script id="__config" type="application/json">{"base": "../../..", "features": ["content.code.copy", "content.tabs.link", "navigation.footer", "navigation.tabs", "navigation.tabs.sticky", "navigation.tracking", "search.highlight", "search.share", "search.suggest"], "search": "../../../assets/javascripts/workers/search.b8dbb3d2.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>
8414
8501
 
8415
8502
 
8416
- <script src="../../../assets/javascripts/bundle.bd41221c.min.js"></script>
8503
+ <script src="../../../assets/javascripts/bundle.3220b9d7.min.js"></script>
8417
8504
 
8418
8505
  <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
8419
8506