From bd1c0f820f58e05919ff9b64febadca6aedb7774 Mon Sep 17 00:00:00 2001
From: Adam Miller <maxamillion@fedoraproject.org>
Date: Thu, 17 Aug 2017 10:14:17 -0500
Subject: Add fedora compatibility

- don't check pkg versions on Fedora, it won't work; they move
  faster than RHEL and it's not realistic to maintain that package
  list.
- handle differences between yum and dnf pkgspec for excluder
- work-around for a bug in dnf
  https://bugzilla.redhat.com/show_bug.cgi?id=1199432
- make requirement verify one play, don't run unnecessary checks on
  Fedora
---
 roles/openshift_excluder/tasks/install.yml | 31 ++++++++++++++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

(limited to 'roles/openshift_excluder')

diff --git a/roles/openshift_excluder/tasks/install.yml b/roles/openshift_excluder/tasks/install.yml
index 3a866cedf..7a5bebf6f 100644
--- a/roles/openshift_excluder/tasks/install.yml
+++ b/roles/openshift_excluder/tasks/install.yml
@@ -6,19 +6,46 @@
 
   block:
 
-  - name: Install docker excluder
+  - name: Install docker excluder - yum
     package:
       name: "{{ r_openshift_excluder_service_type }}-docker-excluder{{ openshift_pkg_version | default('') | oo_image_tag_to_rpm_version(include_dash=True) +  '*' }}"
       state: "{{ r_openshift_excluder_docker_package_state }}"
     when:
     - r_openshift_excluder_enable_docker_excluder | bool
+    - ansible_pkg_mgr == "yum"
 
-  - name: Install openshift excluder
+
+  # For DNF we do not need the "*" and if we add it, it causes an error because
+  # it's not a valid pkg_spec
+  #
+  # https://bugzilla.redhat.com/show_bug.cgi?id=1199432
+  - name: Install docker excluder - dnf
+    package:
+      name: "{{ r_openshift_excluder_service_type }}-docker-excluder{{ openshift_pkg_version | default('') | oo_image_tag_to_rpm_version(include_dash=True) }}"
+      state: "{{ r_openshift_excluder_docker_package_state }}"
+    when:
+    - r_openshift_excluder_enable_docker_excluder | bool
+    - ansible_pkg_mgr == "dnf"
+
+  - name: Install openshift excluder - yum
     package:
       name: "{{ r_openshift_excluder_service_type }}-excluder{{ openshift_pkg_version | default('') | oo_image_tag_to_rpm_version(include_dash=True) + '*' }}"
       state: "{{ r_openshift_excluder_package_state }}"
     when:
     - r_openshift_excluder_enable_openshift_excluder | bool
+    - ansible_pkg_mgr == "yum"
+
+  # For DNF we do not need the "*" and if we add it, it causes an error because
+  # it's not a valid pkg_spec
+  #
+  # https://bugzilla.redhat.com/show_bug.cgi?id=1199432
+  - name: Install openshift excluder - dnf
+    package:
+      name: "{{ r_openshift_excluder_service_type }}-excluder{{ openshift_pkg_version | default('') | oo_image_tag_to_rpm_version(include_dash=True) }}"
+      state: "{{ r_openshift_excluder_package_state }}"
+    when:
+    - r_openshift_excluder_enable_openshift_excluder | bool
+    - ansible_pkg_mgr == "dnf"
 
   - set_fact:
       r_openshift_excluder_install_ran: True
-- 
cgit v1.2.3