Networking-Ansible ML2 Driver
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.
Free software: Apache license
Documentation: https://networking-ansible.readthedocs.io/en/latest/
Bugs: https://storyboard.openstack.org/#!/project/openstack/networking-ansible/
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
Metadata
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)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| networking-ansible-5.0.0.tar.gz | 80.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|
Security for networking-ansible 5.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.