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
|
# 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'
|
- name: 'package discovery'
|
||||||
when:
|
when:
|
||||||
- ansible_system == 'Linux'
|
- ansible_system == 'Linux'
|
||||||
@ -8,76 +27,17 @@
|
|||||||
- name: 'ensure packages'
|
- name: 'ensure packages'
|
||||||
when:
|
when:
|
||||||
- ansible_system == 'Linux'
|
- ansible_system == 'Linux'
|
||||||
- ansible_distribution == 'CentOS'
|
- ensure_repo_epel is defined
|
||||||
- packages['epel-release'] is not 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:
|
ansible.builtin.package:
|
||||||
name: 'epel-release'
|
disable_gpg_check: '{{ item.disable_gpg_check | omit(default) }}'
|
||||||
state: 'installed'
|
name: '{{ item.url }}'
|
||||||
notify:
|
state: '{{ item.state }}'
|
||||||
- 'ensure_repo_epel.package_facts'
|
loop: '{{ ensure_repo_epel.requirements_package_list }}'
|
||||||
- 'ensure_repo_epel.service_facts'
|
loop_control:
|
||||||
- name: 'ensure packages'
|
label: '{{ item.name }} will be {{ item.state }}'
|
||||||
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'
|
|
||||||
notify:
|
notify:
|
||||||
- 'ensure_repo_epel.package_facts'
|
- 'ensure_repo_epel.package_facts'
|
||||||
- 'ensure_repo_epel.service_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