summaryrefslogtreecommitdiffstats
path: root/playbooks/common
diff options
context:
space:
mode:
authorDevan Goodwin <dgoodwin@redhat.com>2017-03-22 13:21:44 -0300
committerDevan Goodwin <dgoodwin@redhat.com>2017-03-27 09:06:06 -0300
commitf2b00d09fcea325a6685e5490b86878882d9134f (patch)
treef01120dfa37ba8e9d4fbb7f6e3d025dc239ca5b5 /playbooks/common
parent69612f3beadf349cad7ffb5c3e59062e44bc1ded (diff)
downloadopenshift-f2b00d09fcea325a6685e5490b86878882d9134f.tar.gz
openshift-f2b00d09fcea325a6685e5490b86878882d9134f.tar.bz2
openshift-f2b00d09fcea325a6685e5490b86878882d9134f.tar.xz
openshift-f2b00d09fcea325a6685e5490b86878882d9134f.zip
Upgrade specific rpms instead of just master/node.
Dependencies for these, particularly the SDN package, can cause the entire transaction to jump to a newer openshift than we requested, if something newer is available in the repositories. By being specific for multiple packages, we avoid this problem and get the actual version we require.
Diffstat (limited to 'playbooks/common')
-rw-r--r--playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml23
1 files changed, 21 insertions, 2 deletions
diff --git a/playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml
index df2b664d4..03ac02e9f 100644
--- a/playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml
+++ b/playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml
@@ -1,7 +1,26 @@
---
# We verified latest rpm available is suitable, so just yum update.
-- name: Upgrade packages
- package: "name={{ openshift.common.service_type }}-{{ component }}{{ openshift_pkg_version }} state=present"
+
+# Master package upgrade ends up depending on node and sdn packages, we need to be explicit
+# with all versions to avoid yum from accidentally jumping to something newer than intended:
+- name: Upgrade master packages
+ package: name={{ item }} state=present
+ when: component == "master"
+ with_items:
+ - "{{ openshift.common.service_type }}{{ openshift_pkg_version }}"
+ - "{{ openshift.common.service_type }}-master{{ openshift_pkg_version }}"
+ - "{{ openshift.common.service_type }}-node{{ openshift_pkg_version }}"
+ - "{{ openshift.common.service_type }}-sdn-ovs{{ openshift_pkg_version }}"
+ - "{{ openshift.common.service_type }}-clients{{ openshift_pkg_version }}"
+
+- name: Upgrade node packages
+ package: name={{ item }} state=present
+ when: component == "node"
+ with_items:
+ - "{{ openshift.common.service_type }}{{ openshift_pkg_version }}"
+ - "{{ openshift.common.service_type }}-node{{ openshift_pkg_version }}"
+ - "{{ openshift.common.service_type }}-sdn-ovs{{ openshift_pkg_version }}"
+ - "{{ openshift.common.service_type }}-clients{{ openshift_pkg_version }}"
- name: Ensure python-yaml present for config upgrade
package: name=PyYAML state=present