ServiceNow Integration Setup¶
This guide will walk you through steps to set up ServiceNow integration with the nautobot_ssot
app.
Prerequisites¶
Before configuring the integration, please ensure, that nautobot-ssot
app was installed with ServiceNow integration extra dependencies.
Configuration¶
Integration behavior can be controlled with the following settings:
instance
: The ServiceNow instance to point to (as in<instance>.servicenow.com
)username
: Username to access this instancepassword
: Password to access this instance
There is also the option of omitting these settings from PLUGINS_CONFIG
and instead defining them through the UI at /plugins/ssot-servicenow/config/
(reachable by navigating to Plugins > Installed Plugins then clicking the "gear" icon next to the Nautobot SSoT ServiceNow entry) using Nautobot's standard UI and secrets functionality.
If you configure the integration's settings in
PLUGINS_CONFIG
, those values will take precedence over any configuration in the UI.
Depending on the amount of data involved, and the performance of your ServiceNow instance, you may need to increase the Nautobot job execution time limits (CELERY_TASK_SOFT_TIME_LIMIT
and CELERY_TASK_TIME_LIMIT
) so that the job can execute to completion without timing out.
Below is an example snippet from nautobot_config.py
that demonstrates how to enable and configure ServiceNow integration:
PLUGINS_CONFIG = {
"nautobot_ssot": {
"enable_servicenow": True,
"servicenow_instance": os.getenv("SERVICENOW_INSTANCE", ""),
"servicenow_password": os.getenv("SERVICENOW_PASSWORD", ""),
"servicenow_username": os.getenv("SERVICENOW_USERNAME", ""),
}
}
Note
All integration settings are defined in the block above as an example. Only some will be needed as described below.
Upgrading from nautobot-plugin-ssot-servicenow
App¶
Warning
When upgrading from nautobot-plugin-ssot-servicenow
app, it's necessary to avoid conflicts.
- Uninstall the old app:
- Upgrade the app with required extras:
- Fix
nautobot_config.py
by removingnautobot_ssot_servicenow
fromPLUGINS
and merging app configuration intonautobot_ssot
:PLUGINS = [ "nautobot_ssot", # "servicenow" # REMOVE THIS LINE ] PLUGINS_CONFIG = { # "nautobot_ssot_servicenow": { REMOVE THIS APP CONFIGURATION # MOVE CONFIGURATION TO `nautobot_ssot` SECTION AND UPDATE KEYS # "instance": os.getenv("SERVICENOW_INSTANCE"), # "username": os.getenv("SERVICENOW_USERNAME"), # "password": os.getenv("SERVICENOW_PASSWORD"), # } "nautobot_ssot": { # Enable ServiceNow integration "enable_servicenow": True, # Following lines are moved from `nautobot_ssot_servicenow` and prefixed with `servicenow_` "servicenow_instance": "", "servicenow_password": "", "servicenow_username": "", } }
Note
Configuration keys are prefixed with servicenow_
.