109 lines
2.6 KiB
YAML
109 lines
2.6 KiB
YAML
|
---
|
||
|
# eos_config -> NetworkConfig, dumps
|
||
|
|
||
|
- debug: msg="START cli/common_config.yaml on connection={{ ansible_connection }}"
|
||
|
|
||
|
- name: setup
|
||
|
eos_config:
|
||
|
lines: hostname {{ inventory_hostname_short }}
|
||
|
match: none
|
||
|
provider: "{{ cli }}"
|
||
|
become: yes
|
||
|
|
||
|
- name: get current running-config
|
||
|
eos_command:
|
||
|
commands: show running-config
|
||
|
provider: "{{ cli }}"
|
||
|
become: yes
|
||
|
register: config
|
||
|
|
||
|
- name: configure hostname
|
||
|
eos_config:
|
||
|
lines: hostname foo
|
||
|
config: "{{ config.stdout[0] }}"
|
||
|
provider: "{{ cli }}"
|
||
|
become: yes
|
||
|
register: result
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- "result.changed == true"
|
||
|
- "'hostname foo' in result.updates"
|
||
|
|
||
|
- name: get current running-config
|
||
|
eos_command:
|
||
|
commands: show running-config
|
||
|
provider: "{{ cli }}"
|
||
|
become: yes
|
||
|
register: config
|
||
|
|
||
|
- name: teardown
|
||
|
eos_config:
|
||
|
lines: hostname {{ inventory_hostname_short }}
|
||
|
match: none
|
||
|
provider: "{{ cli }}"
|
||
|
become: yes
|
||
|
|
||
|
# hit block and diffs
|
||
|
|
||
|
- name: setup
|
||
|
eos_config:
|
||
|
lines:
|
||
|
- 10 permit ip host 1.1.1.1 any log
|
||
|
- 20 permit ip host 2.2.2.2 any log
|
||
|
- 30 permit ip host 3.3.3.3 any log
|
||
|
parents: ip access-list test
|
||
|
before: no ip access-list test
|
||
|
after: exit
|
||
|
match: strict
|
||
|
provider: "{{ cli }}"
|
||
|
become: yes
|
||
|
|
||
|
- name: configure sub level command using block resplace
|
||
|
eos_config:
|
||
|
lines:
|
||
|
- 10 permit ip host 1.1.1.1 any log
|
||
|
- 20 permit ip host 2.2.2.2 any log
|
||
|
- 30 permit ip host 3.3.3.3 any log
|
||
|
- 40 permit ip host 4.4.4.4 any log
|
||
|
parents: ip access-list test
|
||
|
replace: block
|
||
|
after: exit
|
||
|
provider: "{{ cli }}"
|
||
|
match: line
|
||
|
become: yes
|
||
|
register: result
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- "result.changed == true"
|
||
|
- "'ip access-list test' in result.updates"
|
||
|
- "'10 permit ip host 1.1.1.1 any log' in result.updates"
|
||
|
- "'20 permit ip host 2.2.2.2 any log' in result.updates"
|
||
|
- "'30 permit ip host 3.3.3.3 any log' in result.updates"
|
||
|
- "'40 permit ip host 4.4.4.4 any log' in result.updates"
|
||
|
|
||
|
- name: check sub level command using block replace
|
||
|
eos_config:
|
||
|
lines:
|
||
|
- 10 permit ip host 1.1.1.1 any log
|
||
|
- 20 permit ip host 2.2.2.2 any log
|
||
|
- 30 permit ip host 3.3.3.3 any log
|
||
|
- 40 permit ip host 4.4.4.4 any log
|
||
|
parents: ip access-list test
|
||
|
replace: block
|
||
|
after: exit
|
||
|
provider: "{{ cli }}"
|
||
|
match: exact
|
||
|
become: yes
|
||
|
register: result
|
||
|
|
||
|
- name: teardown
|
||
|
eos_config:
|
||
|
lines: no ip access-list test
|
||
|
match: none
|
||
|
provider: "{{ cli }}"
|
||
|
become: yes
|
||
|
|
||
|
- debug: msg="END cli/common_config.yaml on connection={{ ansible_connection }}"
|