Skip to content

Commit 18f0cdf

Browse files
committed
refactor: handle INJECT_FACTS_AS_VARS=false by using ansible_facts instead
Ansible 2.20 has deprecated the use of Ansible facts as variables. For example, `ansible_distribution` is now deprecated in favor of `ansible_facts["distribution"]`. This is due to making the default setting `INJECT_FACTS_AS_VARS=false`. For now, this will create WARNING messages, but in Ansible 2.24 it will be an error. See https://docs.ansible.com/projects/ansible/latest/porting_guides/porting_guide_core_2.20.html#inject-facts-as-vars Signed-off-by: Rich Megginson <rmeggins@redhat.com>
1 parent cc9eedc commit 18f0cdf

File tree

5 files changed

+16
-12
lines changed

5 files changed

+16
-12
lines changed

README-ostree.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ Usage:
2020
.ostree/get_ostree_data.sh packages runtime DISTRO-VERSION FORMAT
2121
```
2222

23-
`DISTRO-VERSION` is in the format that Ansible uses for `ansible_distribution`
24-
and `ansible_distribution_version` - for example, `Fedora-38`, `CentOS-8`,
23+
`DISTRO-VERSION` is in the format that Ansible uses for `ansible_facts["distribution"]`
24+
and `ansible_facts["distribution_version"]` - for example, `Fedora-38`, `CentOS-8`,
2525
`RedHat-9.4`
2626

2727
`FORMAT` is one of `toml`, `json`, `yaml`, `raw`

tests/tests_include_vars_from_parent.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@
3030
# create all variants like CentOS, CentOS_8.1, CentOS-8.1,
3131
# CentOS-8, CentOS-8.1
3232
# more formally:
33-
# {{ ansible_distribution }}-{{ ansible_distribution_version }}
34-
# {{ ansible_distribution }}-{{ ansible_distribution_major_version }}
35-
# {{ ansible_distribution }}
36-
# {{ ansible_os_family }}
33+
# {{ ansible_facts['distribution'] }}-{{ ansible_facts['distribution_version'] }}
34+
# {{ ansible_facts['distribution'] }}-{{ ansible_facts['distribution_major_version'] }}
35+
# {{ ansible_facts['distribution'] }}
36+
# {{ ansible_facts['os_family'] }}
3737
# and the same for _ as separator.
3838
varfiles: "{{ [facts['distribution']] | product(separators) |
3939
map('join') | product(versions) | map('join') | list +

tests/tests_trusted_execution.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
- "{{ __test_fpd_exe2 }}"
5252
vars:
5353
__python: "{{ ansible_python_interpreter |
54-
d(discovered_interpreter_python) }}"
54+
d(ansible_facts['discovered_interpreter_python']) }}"
5555

5656
- name: Create a new user
5757
user:

tests/vars/rh_distros_vars.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ __fapolicyd_rh_distros:
1414
__fapolicyd_rh_distros_fedora: "{{ __fapolicyd_rh_distros + ['Fedora'] }}"
1515

1616
# Use this in conditionals to check if distro is Red Hat or clone
17-
__fapolicyd_is_rh_distro: "{{ ansible_distribution in __fapolicyd_rh_distros }}"
17+
__fapolicyd_is_rh_distro: "{{ ansible_facts['distribution'] in __fapolicyd_rh_distros }}"
1818

1919
# Use this in conditionals to check if distro is Red Hat or clone, or Fedora
20-
__fapolicyd_is_rh_distro_fedora: "{{ ansible_distribution in __fapolicyd_rh_distros_fedora }}"
20+
__fapolicyd_is_rh_distro_fedora: "{{ ansible_facts['distribution'] in __fapolicyd_rh_distros_fedora }}"

vars/main.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,20 @@ __fapolicyd_selinux_packages: [fapolicyd-selinux]
1515

1616
# ansible_facts required by the role
1717
__fapolicyd_required_facts:
18+
- discovered_interpreter_python
1819
- distribution
1920
- distribution_major_version
2021
- distribution_version
2122
- os_family
2223

24+
__fapolicyd_no_subsets_facts:
25+
- discovered_interpreter_python
26+
2327
# the subsets of ansible_facts that need to be gathered in case any of the
2428
# facts in required_facts is missing; see the documentation of
2529
# the 'gather_subset' parameter of the 'setup' module
2630
__fapolicyd_required_facts_subsets: "{{ ['!all', '!min'] +
27-
__fapolicyd_required_facts }}"
31+
__fapolicyd_required_facts | difference(__fapolicyd_no_subsets_facts) }}"
2832

2933
# BEGIN - DO NOT EDIT THIS BLOCK - rh distros variables
3034
# Ansible distribution identifiers that the role treats like RHEL
@@ -38,8 +42,8 @@ __fapolicyd_rh_distros:
3842
__fapolicyd_rh_distros_fedora: "{{ __fapolicyd_rh_distros + ['Fedora'] }}"
3943

4044
# Use this in conditionals to check if distro is Red Hat or clone
41-
__fapolicyd_is_rh_distro: "{{ ansible_distribution in __fapolicyd_rh_distros }}"
45+
__fapolicyd_is_rh_distro: "{{ ansible_facts['distribution'] in __fapolicyd_rh_distros }}"
4246

4347
# Use this in conditionals to check if distro is Red Hat or clone, or Fedora
44-
__fapolicyd_is_rh_distro_fedora: "{{ ansible_distribution in __fapolicyd_rh_distros_fedora }}"
48+
__fapolicyd_is_rh_distro_fedora: "{{ ansible_facts['distribution'] in __fapolicyd_rh_distros_fedora }}"
4549
# END - DO NOT EDIT THIS BLOCK - rh distros variables

0 commit comments

Comments
 (0)