Giter VIP home page Giter VIP logo

nautobot-plugin-ssot-servicenow's Introduction

Nautobot Single Source of Truth -- ServiceNow Data Target

The code in this repository has been migrated to the Nautobot SSoT Repository as an integration - read more about it in the SSoT Docs! As of August 2023 this repository has been FROZEN - all development / issues / discussions for this integration are in the Nautobot SSoT Repository going forward.

A plugin for Nautobot, building atop the nautobot-ssot plugin.

This plugin provides the ability to synchronize basic data from Nautobot into ServiceNow. Currently the following data is mapped and synchronized:

  • Nautobot Manufacturer table to ServiceNow Company table
  • Nautobot DeviceType table to ServiceNow Hardware Product Model table
  • Nautobot Region and Site tables to ServiceNow Location table
  • Nautobot Device table to ServiceNow IP Switch table
  • Nautobot Interface table to ServiceNow Interface table

For more information about general usage of the Nautobot SSoT plugin, refer to its documentation.

Installation and Configuration

The plugin is available as a Python package in PyPI and can be installed with pip into an existing Nautobot installation:

pip install nautobot-ssot-servicenow

The plugin is compatible with Nautobot 1.2.0 and higher

Once installed, the plugin needs to be enabled in your nautobot_config.py and configured appropriately:

# nautobot_config.py
PLUGINS = [
    "nautobot_ssot",
    "nautobot_ssot_servicenow",
]

PLUGINS_CONFIG = {
    "nautobot_ssot": {
        "hide_example_jobs": True,
    },
    "nautobot_ssot_servicenow": {
        "instance": os.getenv("SERVICENOW_INSTANCE"),
        "username": os.getenv("SERVICENOW_USERNAME"),
        "password": os.getenv("SERVICENOW_PASSWORD"),
    },
}

The plugin behavior can be controlled with the following list of settings:

  • instance: The ServiceNow instance to point to (as in <instance>.servicenow.com)
  • username: Username to access this instance
  • password: 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 plugin'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.

Questions

For any questions or comments, please check the FAQ first and feel free to swing by the Network to Code slack channel (channel #networktocode). Sign up here

Usage

Once the plugin is installed and configured, from the Nautobot SSoT dashboard view (/plugins/ssot/), ServiceNow will be shown as a Data Target. You can click the Sync button to access a form view from which you can run the Nautobot-to-ServiceNow synchronization Job. Running the job will redirect you to a Nautobot Job Result view, from which you can access the SSoT Sync Details view to see detailed information about the outcome of the sync Job.

Detail View


Results View

nautobot-plugin-ssot-servicenow's People

Contributors

chadell avatar dependabot[bot] avatar glennmatthews avatar qduk avatar ubajze avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nautobot-plugin-ssot-servicenow's Issues

The latest version is not compatible with Nautobot 1.3.2

Environment

  • Python version: 3.7
  • Nautobot version: 1.3.2
  • nautobot-ssot-servicenow version: 0.9.1

Expected Behavior

Compatibility between the plugin and the latest Nautobot version

Observed Behavior

The plugin depends on the following PyYAML library version: nautobot-ssot-servicenow (0.9.1) depends on PyYAML (>=5.4.1,<6.0.0)
Nautobot requires the PyYAML version (>=6.0,<6.1).

Steps to Reproduce

  1. Install Nautobot 1.3.2 and this plugin of version 0.9.1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.