summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToshio Kuratomi <toshio@fedoraproject.org>2016-03-14 18:48:40 -0700
committerToshio Kuratomi <toshio@fedoraproject.org>2016-03-14 18:48:40 -0700
commitf0e6d28815da7e730a39fd546649c06d0e7566c0 (patch)
tree884f710d49ac2f0305b8bdc87b7dc824a51c637a
parent512825455e7aa5687a121fda4ac4f934c82171e5 (diff)
downloadansible-facts-subset-and-cleanup.tar.gz
Make integration tests for fact gathering assert on failurefacts-subset-and-cleanup
-rw-r--r--test/integration/inventory3
-rw-r--r--test/integration/test_gathering_facts.yml111
2 files changed, 98 insertions, 16 deletions
diff --git a/test/integration/inventory b/test/integration/inventory
index bee36ce022..b833343839 100644
--- a/test/integration/inventory
+++ b/test/integration/inventory
@@ -4,6 +4,9 @@ testhost2 ansible_ssh_host=127.0.0.1 ansible_connection=local
# For testing delegate_to
testhost3 ansible_ssh_host=127.0.0.3
testhost4 ansible_ssh_host=127.0.0.4
+# For testing fact gathering
+facthost[0:7] ansible_host=1270.0.0.1 ansible_connection=local
+
# the following inline declarations are accompanied
# by (preferred) group_vars/ and host_vars/ variables
diff --git a/test/integration/test_gathering_facts.yml b/test/integration/test_gathering_facts.yml
index eb39c84b59..8e93be0a8c 100644
--- a/test/integration/test_gathering_facts.yml
+++ b/test/integration/test_gathering_facts.yml
@@ -1,37 +1,116 @@
---
-- hosts: localhost
- tags: [ 'min' ]
+- hosts: facthost0
+ tags: [ 'fact_min' ]
connection: local
gather_subset: "!all"
gather_facts: yes
tasks:
- - debug: var={{item}}
- with_items: [ 'ansible_user_id', 'ansible_interfaces', 'ansible_mounts', 'ansible_virtualization_role' ]
+ - name: Test that only retrieving minimal facts work
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" == "UNDEF"'
-- hosts: localhost
- tags: [ 'network' ]
+- hosts: facthost1
+ tags: [ 'fact_network' ]
connection: local
gather_subset: "network"
gather_facts: yes
tasks:
- - debug: var={{item}}
- with_items: [ 'ansible_user_id', 'ansible_interfaces', 'ansible_mounts', 'ansible_virtualization_role' ]
+ - name: Test that retrieving network facts work
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" == "UNDEF"'
-- hosts: localhost
- tags: [ 'hardware' ]
+- hosts: facthost2
+ tags: [ 'fact_hardware' ]
connection: local
gather_subset: "hardware"
gather_facts: yes
tasks:
- - debug: var={{item}}
- with_items: [ 'ansible_user_id', 'ansible_interfaces', 'ansible_mounts', 'ansible_virtualization_role' ]
+ - name: Test that retrieving hardware facts work
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" == "UNDEF"'
-- hosts: localhost
- tags: [ 'virtual' ]
+- hosts: facthost3
+ tags: [ 'fact_virtual' ]
connection: local
gather_subset: "virtual"
gather_facts: yes
tasks:
- - debug: var={{item}}
- with_items: [ 'ansible_user_id', 'ansible_interfaces', 'ansible_mounts', 'ansible_virtualization_role' ]
+ - name: Test that retrieving virtualization facts work
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" != "UNDEF"'
+
+- hosts: facthost4
+ tags: [ 'fact_comma_string' ]
+ connection: local
+ gather_subset: "virtual,network"
+ gather_facts: yes
+ tasks:
+ - name: Test that retrieving virtualization and network as a string works
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" != "UNDEF"'
+
+- hosts: facthost5
+ tags: [ 'fact_yaml_list' ]
+ connection: local
+ gather_subset:
+ - virtual
+ - network
+ gather_facts: yes
+ tasks:
+ - name: Test that retrieving virtualization and network as a string works
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" != "UNDEF"'
+
+- hosts: facthost6
+ tags: [ 'fact_negation' ]
+ connection: local
+ gather_subset: "!hardware"
+ gather_facts: yes
+ tasks:
+ - name: Test that negation of fact subsets work
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" != "UNDEF"'
+
+- hosts: facthost7
+ tags: [ 'fact_mixed_negation_addition' ]
+ connection: local
+ gather_subset: "!hardware,network"
+ gather_facts: yes
+ tasks:
+ - name: Test that negation and additional subsets work together
+ assert:
+ that:
+ - '"{{ ansible_user_id|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_interfaces|default("UNDEF") }}" != "UNDEF"'
+ - '"{{ ansible_mounts|default("UNDEF") }}" == "UNDEF"'
+ - '"{{ ansible_virtualization_role|default("UNDEF") }}" == "UNDEF"'
+