--- # 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: "{{ eapi }}" become: yes - name: get current running-config eos_command: commands: show running-config provider: "{{ eapi }}" become: yes register: config - name: configure hostname eos_config: lines: hostname foo config: "{{ config.stdout[0] }}" provider: "{{ eapi }}" 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: "{{ eapi }}" become: yes register: config - name: teardown eos_config: lines: hostname {{ inventory_hostname_short }} match: none provider: "{{ eapi }}" become: yes # hit block and diffs - block: - name: setup eos_config: lines: - 10 permit ip host 192.0.2.1 any log - 20 permit ip host 192.0.2.2 any log - 30 permit ip host 192.0.2.3 any log parents: ip access-list test before: no ip access-list test after: exit match: strict provider: "{{ eapi }}" become: yes - name: configure sub level command using block replace eos_config: lines: - 10 permit ip host 192.0.2.1 any log - 20 permit ip host 192.0.2.2 any log - 30 permit ip host 192.0.2.3 any log - 40 permit ip host 192.0.2.4 any log parents: ip access-list test replace: block after: exit provider: "{{ eapi }}" match: line become: yes register: result - assert: that: - "result.changed == true" - "'ip access-list test' in result.updates" - "'10 permit ip host 192.0.2.1 any log' in result.updates" - "'20 permit ip host 192.0.2.2 any log' in result.updates" - "'30 permit ip host 192.0.2.3 any log' in result.updates" - "'40 permit ip host 192.0.2.4 any log' in result.updates" - name: check sub level command using block replace eos_config: lines: - 10 permit ip host 192.0.2.1 any log - 20 permit ip host 192.0.2.2 any log - 30 permit ip host 192.0.2.3 any log - 40 permit ip host 192.0.2.4 any log parents: ip access-list test replace: block after: exit provider: "{{ eapi }}" match: exact become: yes register: result always: - name: teardown eos_config: lines: no ip access-list test match: none provider: "{{ eapi }}" become: yes - debug: msg="END cli/common_config.yaml on connection={{ ansible_connection }}"