--- - debug: msg="START cli/config_check.yaml on connection={{ ansible_connection }}" - name: setup- ensure interface is not present vyos.vyos.vyos_config: lines: delete interfaces loopback lo - name: setup- create interface vyos.vyos.vyos_config: lines: - interfaces - interfaces loopback lo - interfaces loopback lo description test register: result # note collapsing the duplicate lines doesn't work if # lines: # - interfaces loopback lo description test # - interfaces loopback lo # - interfaces - name: Check that multiple duplicate lines collapse into a single commands assert: that: - "{{ result.commands|length }} == 1" - name: Check that set is correctly prepended assert: that: - "result.commands[0] == 'set interfaces loopback lo description test'" - name: configure config_check config command vyos.vyos.vyos_config: lines: delete interfaces loopback lo register: result - assert: that: - "result.changed == true" - name: check config_check config command idempontent vyos.vyos.vyos_config: lines: delete interfaces loopback lo register: result - assert: that: - "result.changed == false" - name: check multiple line config filter is working vyos.vyos.vyos_config: lines: - set system login user esa level admin - set system login user esa authentication encrypted-password '!abc!' - set system login user vyos level admin - set system login user vyos authentication encrypted-password 'abc' register: result - assert: that: - "{{ result.filtered|length }} == 2" - debug: msg="END cli/config_check.yaml on connection={{ ansible_connection }}"