GithubHelp home page GithubHelp logo

snipeit-netbox's Introduction

Snipe-IT to NetBox Sync

This Software can sync Data from Snipe-IT to NetBox.

Requirements + Installation

  • Python 3.10 (or newer)
  • Snipe-IT and NetBox API Key

Install dependencies by creating a Python Virtual Environment:

python -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt

Configure the API endpoints and Access Tokens in the "config.ini" file. Use the example "config.ini.default" file, rename it to "config.ini" and change the values in the File.

Usage

The Program will introduce a new Custom Field in Netbox to allow linking the Snipe-IT Database ID.

source venv/bin/activate  (just once you open a new Terminal)
python main.py [--allow-update] [--allow-linking] [--update-unique-existing|--no-append-assettag]
  • --allow-update: Update existing assets
  • --allow-linking: add custom field 'Snipe object id' to imported/updated netbox items and link to id of snipe-it item and use as unique-key for further syncs.
  • --update-unique-existing: if the name of a snipe-it asset is unique and can be found in netbox, update it in netbox. Includes no-append-assettag.
  • --no-append-assettag: if the name of a snipe-it asset is unique add it without appending the assettag

By default, without any command line args, the programm will just create new Items in NetBox. When duplicate Items are found by Name, it will skip Updating.

To Enable Updating already present Items, use the Command line switch "--allow-update".

To allow adding the Database ID to already present Items, use the Command Line Switch "--allow-linking". This will match Items by Name and other NetBox unique constraints to find possible Matches and set the Snipe-IT Database ID in the NetBox Item.

If you have already items in netbox and want to update them by just the asset-name enable "--update-unique-existing". Only assets with a unique name in snipe-it will be updated. If there are more assets in snipe-it with the same name they are all added. In this mode also "--no-append-assettag" is enabled.

Usually the imported (created/updated) devices get the snipe-it-assettag appended to the name. Use "--no-append-assettag" to disable dis behavior. If there are more assets in snipe-it with the same name for this assets the tag is added to the name.

Link, Sync, Information

Deleted Items in Snipe-IT will NOT be deleted from NetBox.

The software will only sync Device Types (and thus Devices) with a MAC field set assigned in Snipe-IT.

  • Snipe Devices are synced to NetBox Devices
  • Snipe Manufacturers are synced to NetBox Manufacturers
  • Snipe Asset Models are synced to NetBox Device Types
  • Snipe Companies are synced to NetBox Tenants
  • Snipe Locations without a parent Location are synced to Netbox Sites

snipeit-netbox's People

Contributors

derlucas avatar fashberg avatar

Forkers

josephtknight

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.