--- - hosts: eos gather_facts: no connection: local vars: limit_to: "*" debug: false # Run the tests within blocks allows the next module to be tested if the previous one fails. # This is done to allow https://github.com/ansible/dci-partner-ansible/ to run the full set of tests. tasks: - set_fact: test_failed: false failed_modules: [] - block: - include_role: name: eos_banner when: "limit_to in ['*', 'eos_banner']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_banner' ]" test_failed: true - block: - include_role: name: eos_command when: "limit_to in ['*', 'eos_command']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_command' ]" test_failed: true - block: - include_role: name: eos_config when: "limit_to in ['*', 'eos_config']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_config' ]" test_failed: true - block: - include_role: name: eos_facts when: "limit_to in ['*', 'eos_facts']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_facts' ]" test_failed: true - block: - include_role: name: eos_eapi when: "limit_to in ['*', 'eos_eapi']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_eapi' ]" test_failed: true - block: - include_role: name: eos_system when: "limit_to in ['*', 'eos_system']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_system' ]" test_failed: true - block: - include_role: name: eos_user when: "limit_to in ['*', 'eos_user']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_user' ]" test_failed: true - block: - include_role: name: eos_vlan when: "limit_to in ['*', 'eos_vlan']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_vlan' ]" test_failed: true - block: - include_role: name: eos_vrf when: "limit_to in ['*', 'eos_vrf']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_vrf' ]" test_failed: true - block: - include_role: name: eos_logging when: "limit_to in ['*', 'eos_logging']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_logging' ]" test_failed: true - block: - include_role: name: eos_static_route when: "limit_to in ['*', 'eos_static_route']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_static_route' ]" test_failed: true - block: - include_role: name: eos_linkagg when: "limit_to in ['*', 'eos_linkagg']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_linkagg' ]" test_failed: true - block: - include_role: name: eos_l3_interface when: "limit_to in ['*', 'eos_l3_interface']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_l3_interface' ]" test_failed: true - block: - include_role: name: eos_interface when: "limit_to in ['*', 'eos_interface']" rescue: - set_fact: failed_modules: "{{ failed_modules }} + [ 'eos_interface' ]" test_failed: true ########### - debug: var=failed_modules when: test_failed - name: Has any previous test failed? fail: msg: "One or more tests failed, check log for details" when: test_failed