Coder Social home page Coder Social logo

clementtrebuchet / napalm Goto Github PK

View Code? Open in Web Editor NEW

This project forked from napalm-automation/napalm

0.0 2.0 0.0 1.33 MB

Network Automation and Programmability Abstraction Layer with Multivendor support

License: Apache License 2.0

Python 100.00%

napalm's Introduction

PyPI PyPI Build Status

NAPALM

NAPALM (Network Automation and Programmability Abstraction Layer with Multivendor support) is a Python library that implements a set of functions to interact with different router vendor devices using a unified API.

NAPALM logo

NAPALM supports several methods to connect to the devices, to manipulate configurations or to retrieve data.

Supported Network Operating Systems

Please check the following link to see which devices are supported. Make sure you understand the caveats.

Documentation

Before using the library, please read the documentation at: Read the Docs

You can also watch a live demo of NAPALM to see what it is and what it can do for you.

Install

Full installation

If you want to fully install NAPALM you can do it by executing:

pip install napalm

That will install all the drivers currently available.

Partial Installation

If you want to install just a subset of the available modules you can just pick them as follows:

pip install napalm-eos napalm-junos

That will install only the eos and the junos drivers. If you want to remove or add a module later on you can just use pip to do it:

pip uninstall napalm-junos
pip install napalm-ios

Check the 'Supported Network Operating Systems' section for more information about supported modules.

Upgrading

We plan to upgrade napalm as fast as possible. Adding new methods and bugfixes. To upgrade napalm it's a simple as repeating the steps you performed while installing but adding the -U flag. For example:

pip install napalm -U

or:

pip install napalm-eos napalm-junos -U

We will be posting news on our slack channel and on Twitter (more details soon).

Automation Frameworks

Due to its flexibility, NAPALM can be integrated in widely used automation frameworks.

Ansible

Please check napalm-ansible for existing Ansible modules leveraging the NAPALM API. Make sure you read the documentation and you understand how it works before trying to use it.

Salt

NAPALM will be completely integrated in Salt beginning with the release code named Carbon. For usage examples, please check naplam-salt.

Contact

Mailing List

If you have any questions, join the users' mailing list at [email protected] and if you are developer and want to contribute to NAPALM feel free to join to the developers' mailing list at [email protected]

Slack

Slack is probably the easiest way to get help with NAPALM. You can find us in the channel napalm on the network.toCode() team.

FAQ

If you have any issues using NAPALM or encounter any errors, before submitting any questions (directly by email or on Slack), please go through the following checklist:

  • Double or triple check if you indeed are able to access the device using the credentials provided.
  • Does your device meet the minimum requrirements?
  • Some operating systems have some specific constraints. (e.g. have you enabled the XML agent on IOS-XR, or the NXAPI feature on NXOS?)
  • Are you able to connect to the device using NAPALM? Check using the CLI test tool:
$ cl_napalm_test --vendor VENDOR --user USERNAME --password PASSWORD --optional_args OPTIONAL_ARGS HOSTNAME

Where vendor, username, password and hostname are mandatory. Optional arguments are specified as comma separated values.

Example:

$ cl_napalm_test --vendor junos --user napalm --password dbejmujz --optional_args 'port=12202, config_lock=False' edge01.bjm01

In case you have any errors, please review the steps above - this looks like a problem with your environment setup.

In order to get help faster, when submitting a bug/error make sure to include all the details requested.

News

Blog Posts

Presentations

Podcasts

Authors

Thanks

This project was founded by David Barroso as part of Spotify and Elisa Jasinska as part of BigWave IT. Originally it was hosted by the Spotify organization but due to the many contributions received by third parties we agreed creating a dedicated organization for NAPALM and give a big thanks to Spotify for the support.

napalm's People

Contributors

dbarrosop avatar ktbyers avatar fooelisa avatar mirceaulinic avatar ggabriele avatar lokespotify avatar mzbenami avatar marcovespignani avatar dmahler avatar jaredn avatar rosiak avatar jedelman8 avatar diogoandre avatar jzohrab avatar jejenone avatar kderynski avatar agrech88 avatar

Watchers

Clement Trebuchet avatar  avatar

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.