Skip to main content

Overview

Networking-Ansible is a python library that abstracts management and interaction with switching hardware to Ansible Networking. This library is not tested with all the modules included with Ansible Networking. In theory it should work with any switch that has compatible modules included with Ansible Networking if the provider tasks are added to this library’s Ansible role. See the contributor documentation for more information about adding support for an Ansible Networking driver to the openstack-ml2 Ansible role.

Components

The Networking-Ansible library consists of the following components:

ML2 Mechanism Driver

Invoked by neutron to configure L2 networking for OpenStack tenant networks.

Python API

Imported directly by python.

Use Cases

OpenStack Ironic Baremetal Guest Deployment

Ironic uses Networking-Ansible to configure the switch ports for the baremetal guests. Ironic needs to swap the port a baremetal guest is connected to between the Ironic provisioning network and the tenant VLAN that the guest is assigned.

Python API

Any python application could need the ability to communicate with a switch to perform a task that networking-ansible is able to complete. The interaction with ansible is designed in a library style that will allow direct import and invocation in python independant of a running OpenStack deployment.

API Features

The following matrix indicates which features have been implmented.

openvswitch

junos

nxos

eos

cumulus

dellos10

Create VLAN

N/A

Y

Y

Y

Y

Y

Delete VLAN

N/A

Y

Y

Y

Y

Y

Delete Port

Y

Y

Y

Y

Y

Y

Config Access Port

Y

Y

Y

Y

Y

Y

Config Trunk Port

N

Y

N

N

N

N

ML2 Implimentation Mapping

  • create_network_postcommit: Creates a VLAN

  • delete_network_postcommit: Deletes a VLAN

  • update_port_postcommit: Deletes the old port if bound

  • delete_port_postcommit: Deletes a port

  • bind_port: Configures an access port

Release files for networking-ansible 5.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for networking-ansible 5.0.0
File Size Uploaded
networking-ansible-5.0.0.tar.gz 80.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for networking-ansible 5.0.0
File Interpreter ABI Platform
networking_ansible-5.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 109.4 kB

Release files / networking-ansible-5.0.0.tar.gz

Download URL networking-ansible-5.0.0.tar.gz
Size 80.5 kB
Tags Source
SHA-256 checksum
How to use checksums
21b6ebc0d86e46644f87025e68e879e4f29a50833d4add2e8dba0c1bf992f02d
BLAKE2b-256 checksum
How to use checksums
507666d95db6d8b4537e4b6f78667c8d60dba9aa6f6ae9cd33ca77b42c99103c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.8

Release files / networking_ansible-5.0.0-py3-none-any.whl

Download URL networking_ansible-5.0.0-py3-none-any.whl
Size 28.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
595f040966c5cad7487b875a5e83a91ba0c63690c2aab075ed5d610cc40142fd
BLAKE2b-256 checksum
How to use checksums
181a6f6d55af5f4276965a0607da1bf9e9a5e21d4ad37f87f6f73c1a747528eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.8
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page