mirror of https://github.com/ansible/ansible.git
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.2 KiB
YAML
52 lines
1.2 KiB
YAML
5 years ago
|
---
|
||
|
- debug: msg="START common/save_config.yaml on connection={{ ansible_connection }}"
|
||
|
|
||
|
- name: Setup by creating VLAN
|
||
|
exos_config:
|
||
|
lines:
|
||
|
- create vlan 200
|
||
|
|
||
|
- name: Saving modified configuration in primary.cfg for the next startup
|
||
|
exos_config:
|
||
|
save_when: modified
|
||
|
register: result
|
||
|
- assert:
|
||
|
that:
|
||
|
- "result.changed == True"
|
||
|
|
||
|
- name: Get the config file
|
||
|
exos_command:
|
||
|
commands: show switch
|
||
|
register: result
|
||
|
|
||
|
- name: Get the startup config file
|
||
|
set_fact: config_selected='{{ result.stdout[0] | regex_search('(Config Selected:)\s+(\w+)', '\\2')}}'
|
||
|
|
||
|
- name: Check if the primary config file has the changes
|
||
|
exos_command:
|
||
|
commands: "debug cfgmgr show configuration file {{ config_selected.0 }}"
|
||
|
register: result
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- "result.stdout[0] is search('configure vlan VLAN_0200 tag 200')"
|
||
|
|
||
|
- name: Idempotent save configuration
|
||
|
exos_config:
|
||
|
save_when: modified
|
||
|
register: result
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- "result.changed == False"
|
||
|
|
||
|
- name: Restore initial state by deleting vlan
|
||
|
exos_config:
|
||
|
lines: delete vlan 200
|
||
|
|
||
|
- name: Restore orignal primary cfg
|
||
|
exos_config:
|
||
|
save_when: modified
|
||
|
|
||
|
- debug: msg="END common/save_config.yaml on connection={{ ansible_connection }}"
|