Skip to content

Overview & Installation

Overview

The ipfabric-snow integration is a powerful command-line tool designed to facilitate the synchronization of network inventory data between IP Fabric and ServiceNow. This Python application is built with minimal dependencies, ensuring ease of setup and maintenance. Key features and requirements of this tool include:

  • Staging Table Requirement: ipfabric-snow requires a staging table in ServiceNow. This table acts as an intermediate location where data from IP Fabric is temporarily stored before being processed or transferred to the final destination table. In ServiceNow, this is referred to as a import set. Reference ServiceNow’s documentation on import sets.
  • Transformation Maps: The integration utilizes transformation maps, a component in ServiceNow, to map and transform data fields from IP Fabric to corresponding fields in ServiceNow. See ServiceNow’s documentation on transformation maps.
  • Diffing with CMDB Network Gear Table: The main functionality of ipfabric-snow is its ability to perform differential analysis between the data in IP Fabric and the existing data in ServiceNow’s CMDB (Configuration Management Database) network gear table. This feature allows users to identify and synchronize any discrepancies between the two data sources.
  • Command-Line Interface: ipfabric-snow is a command-line utility, offering a user-friendly interface with various commands and options. This approach makes it versatile for different environments and use cases, allowing automation and scripting.
  • Dry Run Feature: Supports a “dry run” mode, which allows users to simulate the synchronization process without making actual changes.

Danger

Integrations should be installed outside of the IP Fabric VM unless the IP Fabric team explicitly instructs otherwise.

Warning

Any action on the Command-Line Interface (CLI) using the root, osadmin, or autoboss account may cause irreversible, detrimental changes to the product. Actions taken without direct communication with the IP Fabric Support or Solution Architect teams can render the system unusable.

Installation

Requirements:

  • Python 3.10+
  • Access to IP Fabric and ServiceNow

PyPI

pip install ipfabric-snow

Poetry

Clone the repository and run:

poetry install

Example

 ipfabric-snow --help

 Usage: ipfabric-snow [OPTIONS] COMMAND [ARGS]...                                                                                                                                                                                                            

╭─ Options ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --log-level                                 TEXT  Log level [default: INFO]                                                                                                                                                                               │
│ --log-to-file           --no-log-to-file          Log to file [default: log-to-file]                                                                                                                                                                      │
│ --log-file-name                             TEXT  Log file name [default: ipf_serviceNow.log]                                                                                                                                                             │
│ --log-json              --no-log-json             Log in JSON format [default: no-log-json]                                                                                                                                                               │
│ --install-completion                              Install completion for the current shell.                                                                                                                                                               │
│ --show-completion                                 Show completion for the current shell, to copy it or customize the installation.                                                                                                                        │
│ --help                                            Show this message and exit.                                                                                                                                                                             │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ env                            Setup environment variables                                                                                                                                                                                                │
│ sync                           Sync Inventory data with ServiceNow                                                                                                                                                                                        │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯