Installing the App in Nautobot¶
Here you will find detailed instructions on how to install and configure the App within your Nautobot environment.
Prerequisites¶
- The app is compatible with Nautobot 3.0.0 and higher.
- Databases supported: PostgreSQL, MySQL
- The app relies on
nautobot_plugin_nornirto be installed and both apps to be enabled in your configuration settings.
Note
Please check the dedicated page for a full compatibility matrix and the deprecation policy.
Access Requirements¶
The Nautobot celery worker needs access to be able to ssh/http(s) to network devices to pull back operational data.
Install Guide¶
The app is distributed as a Python package (nautobot-os-upgrades) which can be installed by Python package managers (e.g. pip, poetry, uv etc.) from an authorized private repository.
Important
OS Upgrades is commercial (licensed) software. To obtain access to the Network To Code private package repository, please contact us through the customer portal. Then review the instructions on how to set up the repository in your Python package manager of choice.
To ensure Nautobot OS Upgrades is automatically re-installed during future upgrades, create a file named local_requirements.txt (if not already existing) in the Nautobot root directory (alongside requirements.txt) and list the nautobot-os-upgrades package:
Once installed, the app needs to be enabled in your Nautobot configuration. The following block of code below shows the additional configuration required to be added to your nautobot_config.py file:
- Append
"nautobot_os_upgrades"to thePLUGINSlist. - Append the
"nautobot_os_upgrades"dictionary to thePLUGINS_CONFIGdictionary and override any defaults.
# In your nautobot_config.py
PLUGINS = ["nautobot_os_upgrades", "nautobot_plugin_nornir"]
PLUGINS_CONFIG = {
"nautobot_os_upgrades": {
"MOCK_DEVICE_CONNECTIONS": False,
},
"nautobot_plugin_nornir": {
"nornir_settings": {
"use_config_context": {"connection_options": False},
"credentials": "nautobot_plugin_nornir.plugins.credentials.nautobot_secrets.CredentialsNautobotSecrets",
"runner": {
"plugin": "threaded",
"options": {
"num_workers": 20,
},
},
"connection_options": {
"pyntc": {"extras": {"timeout": 3600}},
},
},
},
}
Once the Nautobot configuration is updated, run the Post Upgrade command (nautobot-server post_upgrade) to run migrations and clear any cache:
Then restart (if necessary) the Nautobot services which may include:
- Nautobot
- Nautobot Workers
- Nautobot Scheduler
App Configuration¶
The plugin behavior can be controlled with the following list of settings:
| Key | Example | Default | Description |
|---|---|---|---|
| n/a | n/a | n/a | n/a |