diff --git a/defaults/main.yml b/defaults/main.yml index 6d3362a..6c3754d 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -121,3 +121,11 @@ network_packages: "{{ __network_provider_setup[network_provider]['packages'] }}" network_service_name: "{{ __network_provider_setup[network_provider]['service_name'] }}" + +# ansible_facts required by the role +__network_required_facts: + - distribution + - distribution_major_version + - distribution_version + - os_family + - python diff --git a/tasks/main.yml b/tasks/main.yml index 4e94d5c..78881f7 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,6 +1,13 @@ # SPDX-License-Identifier: BSD-3-Clause # get service facts, used in defaults/main.yml --- +- name: Ensure ansible_facts used by role + setup: + gather_subset: min + when: not ansible_facts.keys() | list | + intersect(__network_required_facts) == __network_required_facts + no_log: true + - name: Check which services are running service_facts: no_log: true diff --git a/tests/tests_default.yml b/tests/tests_default.yml index e196314..534c634 100644 --- a/tests/tests_default.yml +++ b/tests/tests_default.yml @@ -2,6 +2,7 @@ --- - name: Test executing the role with default parameters hosts: all + gather_facts: false roles: - linux-system-roles.network tasks: