IPFabric Integration Setup¶
This guide will walk you through steps to set up IPFabric integration with the nautobot_ssot
app.
Prerequisites¶
Before configuring the integration, please ensure, that nautobot-ssot
app was installed with the IPFabric integration extra dependencies.
Configuration¶
Integration behavior can be controlled with the following settings:
Setting |
Description |
---|---|
ipfabric_url |
URL of the IPFabric instance to sync with. |
ipfabric_api_token |
API token for IPFabric authentication. |
ipfabric_host |
Hostname/IP address of the IPFabric instance. |
ipfabric_ssl_verify |
Verify the SSL certificate of the IPFabric instance. |
ipfabric_timeout |
Timeout (in seconds) for API requests to IPFabric. |
nautobot_host |
FQDN of your Nautobot instance. This is used to provide a URL to the job results via ChatOps. |
Below is an example snippet from nautobot_config.py
that demonstrates how to enable and configure IPFabric integration:
PLUGINS_CONFIG = {
"nautobot_ssot": {
"enable_ipfabric": True,
"ipfabric_api_token": os.environ.get("IPFABRIC_API_TOKEN"),
"ipfabric_host": os.environ.get("IPFABRIC_HOST"),
"ipfabric_ssl_verify": os.environ.get("IPFABRIC_SSL_VERIFY"),
"ipfabric_timeout": os.environ.get("IPFABRIC_TIMEOUT"),
"nautobot_host": os.environ.get("NAUTOBOT_HOST"),
}
}
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-ipfabric
App¶
Warning
When upgrading from nautobot-plugin-ssot-ipfabric
app, it's necessary to avoid conflicts.
- Uninstall the old app:
- Upgrade the app with required extras:
- Fix
nautobot_config.py
by removingnautobot_ssot_ipfabric
fromPLUGINS
and merging app configuration intonautobot_ssot
:PLUGINS = [ "nautobot_ssot", # "nautobot_ssot_ipfabric" # REMOVE THIS LINE ] PLUGINS_CONFIG = { # "nautobot_ssot_ipfabric": { REMOVE THIS APP CONFIGURATION # MOVE CONFIGURATION TO `nautobot_ssot` SECTION # "ipfabric_api_token": os.environ.get("IPFABRIC_API_TOKEN"), # "ipfabric_host": os.environ.get("IPFABRIC_HOST"), # "ipfabric_ssl_verify": os.environ.get("IPFABRIC_SSL_VERIFY"), # "ipfabric_timeout": os.environ.get("IPFABRIC_TIMEOUT"), # "nautobot_host": os.environ.get("NAUTOBOT_HOST"), # } "nautobot_ssot": { # Enable IPFabric integration "enable_ipfabric": True, # Following lines are moved from `nautobot_ssot_ipfabric` "ipfabric_api_token": os.environ.get("IPFABRIC_API_TOKEN"), "ipfabric_host": os.environ.get("IPFABRIC_HOST"), "ipfabric_ssl_verify": os.environ.get("IPFABRIC_SSL_VERIFY"), "ipfabric_timeout": os.environ.get("IPFABRIC_TIMEOUT"), "nautobot_host": os.environ.get("NAUTOBOT_HOST"), } }