From e3d9de7fe21b62dbb000eb6d801c1ac1a223c997 Mon Sep 17 00:00:00 2001 From: Patrick Uiterwijk Date: Sun, 20 Dec 2015 01:38:45 +0000 Subject: [PATCH] Cloud needs special EPEL7 repo files Signed-off-by: Patrick Uiterwijk --- inventory/group_vars/all | 5 +++++ inventory/group_vars/cloud-hardware | 2 ++ roles/cloud_compute/files/cloud-epel7.repo | 21 +++++++++++++++++++++ roles/cloud_compute/tasks/main.yml | 4 ++++ tasks/yumrepos.yml | 2 +- 5 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 roles/cloud_compute/files/cloud-epel7.repo diff --git a/inventory/group_vars/all b/inventory/group_vars/all index 39942c2bbc..840673127a 100644 --- a/inventory/group_vars/all +++ b/inventory/group_vars/all @@ -10,6 +10,11 @@ nested: false # Used to install various nagios scripts and the like. libdir: /usr/lib64 +# Most EL systems need default EPEL repos. +# Some systems (notably fed-cloud*) need to get their own +# EPEL files because EPEL overrides packages in their core repos. +use_default_epel: true + # example of ports for default iptables # tcp_ports: [ 22, 80, 443 ] # udp_ports: [ 110, 1024, 2049 ] diff --git a/inventory/group_vars/cloud-hardware b/inventory/group_vars/cloud-hardware index 3d8f2c30da..f52ccb9a74 100644 --- a/inventory/group_vars/cloud-hardware +++ b/inventory/group_vars/cloud-hardware @@ -1,2 +1,4 @@ --- freezes: false + +use_default_epel: false diff --git a/roles/cloud_compute/files/cloud-epel7.repo b/roles/cloud_compute/files/cloud-epel7.repo new file mode 100644 index 0000000000..059db903c8 --- /dev/null +++ b/roles/cloud_compute/files/cloud-epel7.repo @@ -0,0 +1,21 @@ +[epel] +name=Extras Packages for Enterprise Linux $releasever - $basearch +baseurl=http://infrastructure.fedoraproject.org/pub/epel/7/$basearch/ +enabled=1 +gpgcheck=1 +gpgkey=http://infrastructure.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7 +includepkgs=nagios-plugins*,rkhunter + +[epel-testing] +name=Extras Packages for Enterprise Linux $releasever - $basearch +baseurl=http://infrastructure.fedoraproject.org/pub/epel/testing/7/$basearch/ +enabled=0 +gpgcheck=1 +gpgkey=http://infrastructure.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7 + +[epel-beta] +name=Extras Packages for Enterprise Linux beta $releasever - $basearch +baseurl=http://infrastructure.fedoraproject.org/pub/epel/beta/7/$basearch/ +enabled=0 +gpgcheck=1 +gpgkey=http://infrastructure.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7 diff --git a/roles/cloud_compute/tasks/main.yml b/roles/cloud_compute/tasks/main.yml index 6798c47f01..c74b26f23d 100644 --- a/roles/cloud_compute/tasks/main.yml +++ b/roles/cloud_compute/tasks/main.yml @@ -4,6 +4,10 @@ - authorized_key: user=root key="{{ lookup('file', files + '/fedora-cloud/fed09-ssh-key.pub') }}" - template: src={{ files }}/fedora-cloud/hosts dest=/etc/hosts owner=root mode=0644 +- name: Copy customized EPEL7 repo + copy: src=cloud-epel7.repo dest=/etc/yum.repos.d/cloud-epel7.repo + owner=root group=root mode=0644 + - name: Enable nested virtualization copy: content="options kvm_intel nested=1" dest=/etc/modprobe.d/nested_virt.conf owner=root group=root mode=0644 diff --git a/tasks/yumrepos.yml b/tasks/yumrepos.yml index 06895f11c8..7848db201d 100644 --- a/tasks/yumrepos.yml +++ b/tasks/yumrepos.yml @@ -9,7 +9,7 @@ - name: put epel repos on el systems action: copy src="{{ files }}/common/epel{{ ansible_distribution_major_version }}.repo" dest="/etc/yum.repos.d/epel{{ ansible_distribution_major_version }}.repo" - when: (ansible_distribution == 'RedHat' or ansible_distribution == 'CentOS') + when: ((ansible_distribution == 'RedHat' or ansible_distribution == 'CentOS') and use_default_epel) tags: - config - packages