Use standardized / generic method to install packages for EPEL
This commit is contained in:
parent
59f3b848e2
commit
fd4875440f
@ -1,5 +1,24 @@
|
||||
---
|
||||
# tasks file for ensure_repo_epel
|
||||
- name: 'include variables'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
include_vars:
|
||||
file: '{{ lookup("first_found", findme ) }}'
|
||||
name: 'ensure_repo_epel'
|
||||
vars:
|
||||
findme:
|
||||
files:
|
||||
- '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml'
|
||||
- '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-default.yml'
|
||||
- '{{ ansible_distribution }}-default.yml'
|
||||
- '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml'
|
||||
- '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-default.yml'
|
||||
- '{{ ansible_os_family }}-default.yml'
|
||||
- 'default.yml'
|
||||
paths:
|
||||
- '../vars/'
|
||||
errors: 'ignore'
|
||||
- name: 'package discovery'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
@ -8,76 +27,17 @@
|
||||
- name: 'ensure packages'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
- ansible_distribution == 'CentOS'
|
||||
- packages['epel-release'] is not defined
|
||||
- ensure_repo_epel is defined
|
||||
- ensure_repo_epel.requirements_package_list is defined
|
||||
- ensure_repo_epel.requirements_package_list is iterable
|
||||
- packages[item.name] is not defined
|
||||
ansible.builtin.package:
|
||||
name: 'epel-release'
|
||||
state: 'installed'
|
||||
notify:
|
||||
- 'ensure_repo_epel.package_facts'
|
||||
- 'ensure_repo_epel.service_facts'
|
||||
- name: 'ensure packages'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
- ansible_distribution == 'Oracle'
|
||||
- ansible_distribution_major_version|int == 6
|
||||
- packages['epel-release'] is not defined
|
||||
ansible.builtin.package:
|
||||
disable_gpg_check: 'yes'
|
||||
name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm'
|
||||
state: 'installed'
|
||||
notify:
|
||||
- 'ensure_repo_epel.package_facts'
|
||||
- 'ensure_repo_epel.service_facts'
|
||||
- name: 'ensure packages'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
- ansible_distribution == 'Oracle'
|
||||
- ansible_distribution_major_version|int == 7
|
||||
- packages['epel-release'] is not defined
|
||||
ansible.builtin.package:
|
||||
disable_gpg_check: 'yes'
|
||||
name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm'
|
||||
state: 'installed'
|
||||
notify:
|
||||
- 'ensure_repo_epel.package_facts'
|
||||
- 'ensure_repo_epel.service_facts'
|
||||
- name: 'ensure packages'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
- ansible_distribution == 'Oracle'
|
||||
- ansible_distribution_major_version|int == 8
|
||||
- packages['epel-release'] is not defined
|
||||
ansible.builtin.package:
|
||||
disable_gpg_check: 'yes'
|
||||
name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm'
|
||||
state: 'installed'
|
||||
notify:
|
||||
- 'ensure_repo_epel.package_facts'
|
||||
- 'ensure_repo_epel.service_facts'
|
||||
- name: 'ensure packages'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
- ansible_distribution == 'Oracle'
|
||||
- ansible_distribution_major_version|int == 7
|
||||
- packages['oracle-epel-release-el7'] is not defined
|
||||
ansible.builtin.package:
|
||||
name: 'oracle-epel-release-el7'
|
||||
state: 'installed'
|
||||
notify:
|
||||
- 'ensure_repo_epel.package_facts'
|
||||
- 'ensure_repo_epel.service_facts'
|
||||
- name: 'flush handlers'
|
||||
meta: 'flush_handlers'
|
||||
- name: 'ensure packages'
|
||||
when:
|
||||
- ansible_system == 'Linux'
|
||||
- ansible_distribution == 'Oracle'
|
||||
- ansible_distribution_major_version|int == 8
|
||||
- packages['oracle-epel-release-el8'] is not defined
|
||||
ansible.builtin.package:
|
||||
name: 'oracle-epel-release-el8'
|
||||
state: 'installed'
|
||||
disable_gpg_check: '{{ item.disable_gpg_check | omit(default) }}'
|
||||
name: '{{ item.url }}'
|
||||
state: '{{ item.state }}'
|
||||
loop: '{{ ensure_repo_epel.requirements_package_list }}'
|
||||
loop_control:
|
||||
label: '{{ item.name }} will be {{ item.state }}'
|
||||
notify:
|
||||
- 'ensure_repo_epel.package_facts'
|
||||
- 'ensure_repo_epel.service_facts'
|
||||
|
7
vars/CentOS-6-default.yml
Normal file
7
vars/CentOS-6-default.yml
Normal file
@ -0,0 +1,7 @@
|
||||
---
|
||||
# vars file for ensure_repo_epel
|
||||
package_list:
|
||||
- name: 'epel-release'
|
||||
state: 'present'
|
||||
url: 'epel-release'
|
||||
|
7
vars/CentOS-7-default.yml
Normal file
7
vars/CentOS-7-default.yml
Normal file
@ -0,0 +1,7 @@
|
||||
---
|
||||
# vars file for ensure_repo_epel
|
||||
package_list:
|
||||
- name: 'epel-release'
|
||||
state: 'present'
|
||||
url: 'epel-release'
|
||||
|
8
vars/CentOS-8-default.yml
Normal file
8
vars/CentOS-8-default.yml
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
# vars file for ensure_repo_epel
|
||||
package_list:
|
||||
- name: 'epel-release'
|
||||
disable_gpg_check: 'yes'
|
||||
state: 'present'
|
||||
url: 'epel-release'
|
||||
|
2
vars/default.yml
Normal file
2
vars/default.yml
Normal file
@ -0,0 +1,2 @@
|
||||
---
|
||||
# vars file for ensure_repo_epel
|
Loading…
x
Reference in New Issue
Block a user