2016-10-28 18:50:29 +00:00
|
|
|
---
|
|
|
|
- hosts: ios
|
|
|
|
gather_facts: no
|
2017-03-08 19:21:45 +00:00
|
|
|
connection: local
|
2016-10-28 18:50:29 +00:00
|
|
|
|
|
|
|
vars:
|
|
|
|
limit_to: "*"
|
|
|
|
debug: false
|
2017-08-19 21:00:51 +00:00
|
|
|
# Run the tests within blocks allows the next module to be tested if the previous one fails.
|
2017-07-04 17:18:02 +00:00
|
|
|
# This is done to allow https://github.com/ansible/dci-partner-ansible/ to run the full set of tests.
|
2016-10-28 18:50:29 +00:00
|
|
|
|
2017-07-04 17:18:02 +00:00
|
|
|
|
|
|
|
tasks:
|
|
|
|
- set_fact:
|
|
|
|
test_failed: false
|
2017-07-20 02:17:07 +00:00
|
|
|
failed_modules: []
|
2017-07-04 17:18:02 +00:00
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_banner
|
|
|
|
when: "limit_to in ['*', 'ios_banner']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_banner' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_command
|
|
|
|
when: "limit_to in ['*', 'ios_command']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_command' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
|
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_config
|
|
|
|
when: "limit_to in ['*', 'ios_config']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_config' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
|
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_facts
|
|
|
|
when: "limit_to in ['*', 'ios_facts']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_facts' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
|
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_system
|
|
|
|
when: "limit_to in ['*', 'ios_system']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_system' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
|
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_user
|
|
|
|
when: "limit_to in ['*', 'ios_user']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_user' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
|
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_static_route
|
|
|
|
when: "limit_to in ['*', 'ios_static_route']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_static_route' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
|
2017-07-17 07:15:53 +00:00
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_logging
|
|
|
|
when: "limit_to in ['*', 'ios_logging']"
|
|
|
|
rescue:
|
2017-07-20 02:17:07 +00:00
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_logging' ]"
|
|
|
|
test_failed: true
|
2017-07-17 07:15:53 +00:00
|
|
|
|
2017-08-01 17:50:08 +00:00
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_interface
|
|
|
|
when: "limit_to in ['*', 'ios_interface']"
|
|
|
|
rescue:
|
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_logging' ]"
|
|
|
|
test_failed: true
|
2017-07-04 17:18:02 +00:00
|
|
|
|
2017-08-29 15:21:49 +00:00
|
|
|
- block:
|
|
|
|
- include_role:
|
|
|
|
name: ios_ping
|
|
|
|
when: "limit_to in ['*', 'ios_ping']"
|
|
|
|
rescue:
|
|
|
|
- set_fact:
|
|
|
|
failed_modules: "{{ failed_modules }} + [ 'ios_ping' ]"
|
|
|
|
test_failed: true
|
|
|
|
|
2017-07-04 17:18:02 +00:00
|
|
|
###########
|
2017-07-20 02:17:07 +00:00
|
|
|
- debug: var=failed_modules
|
|
|
|
when: test_failed
|
|
|
|
|
2017-07-04 17:18:02 +00:00
|
|
|
- name: Has any previous test failed?
|
|
|
|
fail:
|
|
|
|
msg: "One or more tests failed, check log for details"
|
2017-07-17 07:15:53 +00:00
|
|
|
when: test_failed
|