diff options
author | Adam Miller <maxamillion@fedoraproject.org> | 2017-08-17 10:14:17 -0500 |
---|---|---|
committer | Adam Miller <maxamillion@fedoraproject.org> | 2017-10-06 08:51:32 -0500 |
commit | bd1c0f820f58e05919ff9b64febadca6aedb7774 (patch) | |
tree | 3f56a36c0bb86e4dd079e910c2080ff1b65ddb64 | |
parent | 7db933d9b03d7d780e3c2e6ae688477e2e8d43f1 (diff) | |
download | openshift-bd1c0f820f58e05919ff9b64febadca6aedb7774.tar.gz openshift-bd1c0f820f58e05919ff9b64febadca6aedb7774.tar.bz2 openshift-bd1c0f820f58e05919ff9b64febadca6aedb7774.tar.xz openshift-bd1c0f820f58e05919ff9b64febadca6aedb7774.zip |
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
-rw-r--r-- | playbooks/common/openshift-cluster/config.yml | 13 | ||||
-rw-r--r-- | roles/openshift_excluder/tasks/install.yml | 31 |
2 files changed, 40 insertions, 4 deletions
diff --git a/playbooks/common/openshift-cluster/config.yml b/playbooks/common/openshift-cluster/config.yml index 76ca067e7..e0710e549 100644 --- a/playbooks/common/openshift-cluster/config.yml +++ b/playbooks/common/openshift-cluster/config.yml @@ -1,14 +1,17 @@ --- # TODO: refactor this into its own include # and pass a variable for ctx -- name: Verify Requirements +- name: Verify Install Requirements hosts: oo_all_hosts roles: - openshift_health_checker vars: - r_openshift_health_checker_playbook_context: install post_tasks: - - action: openshift_health_check + + - name: Verify Requirements - EL + when: ansible_distribution != "Fedora" + action: openshift_health_check args: checks: - disk_availability @@ -17,6 +20,12 @@ - package_version - docker_image_availability - docker_storage + - name: Verify Requirements - Fedora + when: ansible_distribution == "Fedora" + action: openshift_health_check + args: + checks: + - docker_image_availability - include: ../openshift-etcd/config.yml 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 |