Ansible module pyATEOS framework.
Project description
pyateos-ansible
Ansible module for pyATEOS framework.
Install:
To install just run the command:
pip install pyateos-ansible
Configure Ansible:
Edit your ansible.cfg
file and add the path where eos_pyateos
module is installed.
i.e.
[defaults]
library = ./lib/python3.7/site-packages/pyateos-ansible/modules
If you run a virtualenv
most probably the path would be something similar to the example above.
Otherwise you can use for example mlocate
to find where the module is.
For more info, have a look to Ansible Docs
Module Documentation:
options:
test:
description:
- One ore more test to be run. Every test correspond to a specific "show" command
i.e. ntp - show ntp associations.
For more details: https://gitlab.com/networkAutomation/pyateos/-/blob/master/README.md
choices: [
'acl',
'arp',
'as_path',
'bgp_evpn',
'bgp_ipv4',
'interface',
'ip_route',
'mac',
'mlag',
'ntp',
'lldp',
'prefix_list',
'route_map',
'snmp',
'stp',
'vlan',
'vrf',
'vxlan',
'bfd']
type: list
before:
description:
- Run pre-check tests defined under 'test' and generate .json.
The fiename and directory path is the following: /tests/before/hostname/timestamp.json
default: false
type: bool
after:
description:
- Run post-check tests defined under 'test'.
The fiename and directory path is the following: /tests/after/hostname/timestamp.json
default: false
type: bool
diff:
description:
- Run between vs. after diffs and save the result in .json format.
The fiename and directory path is the following: /tests/diff/hostname/diff_timestamp_before_after.json
default: false
type: bool
files:
description:
- List of before and after file IDs to compare in order to generate diff. Each file id
is available under `result.before_file_ids` and `result.after_file_ids`
type: list
filter:
description:
- Valid only with `compare`. Filter reduces the output returning just the
`insert` and `delete` in diff i.e. intrface - all interfaces counters are filtered.
type: bool
default: false
group:
description:
- Pre set group of test. `group` and `test` are allowed togehter.
For more details: https://gitlab.com/networkAutomation/pyateos/-/blob/master/README.md
type: list
choices: [
'mgmt',
'routing',
'layer2',
'ctr',
'all'
]
hostname:
description:
- Device hostname required for filesystem build
type: str
required: true
Examples:
- name: run BEFORE tests.
eos_pyateos:
before: true
test:
- acl
group:
- mgmt
- layer2
hostname: "{{ inventory_hostname }}"
register: result
- name: save BEFORE file IDs.
delegate_to: 127.0.0.1
set_fact:
before_ids: "{{ result.before_file_ids }}"
- name: change mgmt config on switch.
eos_config:
lines:
- no ntp server vrf mgmt 10.75.33.5
- ntp server vrf mgmt 216.239.35.4
- no snmp-server host 10.1.22.1 vrf mgmt version 2c snmp_pass
- snmp-server host 10.1.22.9 vrf mgmt version 2c snmp_pass
- name: shutdown interface.
eos_config:
lines:
- shutdown
parents: interface Ethernet50/1
- name: edit ACL.
eos_config:
lines:
- no 10
- 10 remark pyATEOS TEST
parents: ip access-list standard SNMP
- name: run AFTER tests.
eos_pyateos:
after: true
test:
- acl
group:
- mgmt
- layer2
hostname: "{{ inventory_hostname }}"
register: result
- name: save AFTER file IDs.
delegate_to: 127.0.0.1
set_fact:
after_ids: "{{ result.after_file_ids }}"
- name: run DIFF result.
eos_pyateos:
compare: true
group:
- mgmt
- layer2
test:
- acl
hostname: "{{ inventory_hostname }}"
filter: true
files:
- "{{ before_ids }}"
- "{{ after_ids }}"
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyateos-ansible-1.0.7.tar.gz
(7.8 kB
view details)
Built Distribution
File details
Details for the file pyateos-ansible-1.0.7.tar.gz
.
File metadata
- Download URL: pyateos-ansible-1.0.7.tar.gz
- Upload date:
- Size: 7.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8cbae2125433ea61f623734ffd8c5bfc487224e2e3f8e8dd63dba55215d045b |
|
MD5 | 3044c2d4063e351263d082da41bfc6c2 |
|
BLAKE2b-256 | ef5e04ab93a32966b466fce3fe39f4cd49413b549ce924af4e37b10e338983d0 |
File details
Details for the file pyateos_ansible-1.0.7-py3-none-any.whl
.
File metadata
- Download URL: pyateos_ansible-1.0.7-py3-none-any.whl
- Upload date:
- Size: 20.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad68cd3c75247549b225b4d415ee9e57e31a4875b78895f297e627f963985895 |
|
MD5 | 71508155594cdb407eed15c880dd58e0 |
|
BLAKE2b-256 | 775bbe40ea1cf240aea0e69a16a4356210066b7d9a7fb364e5176ff8c1462a7b |