50f2313b47
Previously tests would stop running on the first failure. With this PR we move onto running the tests for the next module. This allows DCI runs to have a fuller picture of what's broken. This only effects manual and DCI runs, it doesn't effect Shippable runs as this the modules are tested directly.
70 lines
No EOL
1.6 KiB
YAML
70 lines
No EOL
1.6 KiB
YAML
---
|
|
- hosts: iosxr
|
|
gather_facts: no
|
|
connection: local
|
|
|
|
vars:
|
|
limit_to: "*"
|
|
debug: false
|
|
|
|
# Run the tests within blocks allows the 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
|
|
- block:
|
|
- include_role:
|
|
name: iosxr_command
|
|
when: "limit_to in ['*', 'iosxr_command']"
|
|
rescue:
|
|
- set_fact: test_failed=true
|
|
|
|
- block:
|
|
- include_role:
|
|
name: iosxr_config
|
|
when: "limit_to in ['*', 'iosxr_config']"
|
|
rescue:
|
|
- set_fact: test_failed=true
|
|
|
|
- block:
|
|
- include_role:
|
|
name: iosxr_facts
|
|
when: "limit_to in ['*', 'iosxr_facts']"
|
|
rescue:
|
|
- set_fact: test_failed=true
|
|
|
|
- block:
|
|
- include_role:
|
|
name: iosxr_template
|
|
when: "limit_to in ['*', 'iosxr_template']"
|
|
rescue:
|
|
- set_fact: test_failed=true
|
|
|
|
- block:
|
|
- include_role:
|
|
name: iosxr_system
|
|
when: "limit_to in ['*', 'iosxr_system']"
|
|
rescue:
|
|
- set_fact: test_failed=true
|
|
|
|
- block:
|
|
- include_role:
|
|
name: iosxr_user
|
|
when: "limit_to in ['*', 'iosxr_user']"
|
|
rescue:
|
|
- set_fact: test_failed=true
|
|
|
|
- block:
|
|
- include_role:
|
|
name: iosxr_banner
|
|
when: "limit_to in ['*', 'iosxr_banner']"
|
|
rescue:
|
|
- set_fact: test_failed=true
|
|
|
|
###########
|
|
- name: Has any previous test failed?
|
|
fail:
|
|
msg: "One or more tests failed, check log for details"
|
|
when: test_failed |