From 4d21352e3004b2ef94fc5309b6225b538eaab46e Mon Sep 17 00:00:00 2001 From: Brent Eagles Date: Tue, 7 Jan 2020 11:27:19 -0330 Subject: [PATCH] Bypass openvswitch update logic if expected packages are not present The nuage integration uses a different package name for openvswitch, breaking the update steps. This patch bypasses the update logic if the expected packages are not present allowing nuage deployments to manage the openvswitch package some other other way. Closes-Bug: #1858640 Change-Id: I8c116aba50cc7f1cb7cd3fd32cf8aec868e074ec (cherry picked from commit f907d061ba1d8cf6fbd15fc242b162c618a70154) --- .../tripleo-packages-baremetal-puppet.yaml | 20 +++++++++++-------- deployment/undercloud/undercloud-upgrade.yaml | 20 +++++++++++-------- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/deployment/tripleo-packages/tripleo-packages-baremetal-puppet.yaml b/deployment/tripleo-packages/tripleo-packages-baremetal-puppet.yaml index ff4e176dc1..3086641862 100644 --- a/deployment/tripleo-packages/tripleo-packages-baremetal-puppet.yaml +++ b/deployment/tripleo-packages/tripleo-packages-baremetal-puppet.yaml @@ -218,8 +218,17 @@ outputs: # change with every major upgrade so this special handling will # eventually replace the special handling of upgrading the # openvswitch package "in place" + - name: Get current OpenvSwitch package name + register: ovs_pkg_out + shell: + rpm -qa | awk -F- '/^(openvswitch[0-9]+\.[0-9]+-|openvswitch-2)/{print $1}' + - name: Don't update if not present + set_fact: + run_ovs_update: "{{ (ovs_pkg_out.stdout | length) > 0 }}" - name: Block for gathering information for upgrading OpenvSwitch layered product packaging - when: step|int == 2 + when: + - step|int == 2 + - run_ovs_update|bool block: - name: Process rhosp-openvswitch layered package for new version number shell: | @@ -234,11 +243,6 @@ outputs: set_fact: new_ovs_version: "{{ rhosp_package_result.stdout }}" when: ovs_lp_packaging|default(false) - - - name: Get current OpenvSwitch package name - register: ovs_pkg_out - shell: - rpm -qa | awk -F- '/^(openvswitch[0-9]+\.[0-9]+-|openvswitch-2)/{print $1}' - name: Get version from current OpenvSwitch package register: ovs_version_out shell: @@ -281,7 +285,7 @@ outputs: - name: Check for openvswitch upgrade if not layered package installs when: - step|int == 2 - - run_ovs_update|default(true) + - run_ovs_update|bool block: - name: check if an upgrade is required register: ovs_need_upgrade @@ -321,7 +325,7 @@ outputs: - "{{ovs_list_of_rpms.stdout_lines}}" when: - step|int == 2 - - run_ovs_update|default(true) + - run_ovs_update|bool - ovs_packaging_issue|default(false)|succeeded - ovs_need_upgrade.stdout|default('') - name: Install libibverbs (https://bugs.launchpad.net/tripleo/+bug/1817743) diff --git a/deployment/undercloud/undercloud-upgrade.yaml b/deployment/undercloud/undercloud-upgrade.yaml index 8d6d4494cb..9f48a5c773 100644 --- a/deployment/undercloud/undercloud-upgrade.yaml +++ b/deployment/undercloud/undercloud-upgrade.yaml @@ -72,8 +72,17 @@ outputs: # change with every major upgrade so this special handling will # eventually replace the special handling of upgrading the # openvswitch package "in place" + - name: Get current OpenvSwitch package name + register: ovs_pkg_out + shell: + rpm -qa | awk -F- '/^(openvswitch[0-9]+\.[0-9]+-|openvswitch-2)/{print $1}' + - name: Don't update if not present + set_fact: + run_ovs_update: "{{ (ovs_pkg_out.stdout | length) > 0 }}" - name: Block for gathering information for upgrading OpenvSwitch layered product packaging - when: step|int == 2 + when: + - step|int == 2 + - run_ovs_update|bool block: - name: Process rhosp-openvswitch layered package for new version number shell: | @@ -88,11 +97,6 @@ outputs: set_fact: new_ovs_version: "{{ rhosp_package_result.stdout }}" when: ovs_lp_packaging|default(false) - - - name: Get current OpenvSwitch package name - register: ovs_pkg_out - shell: - rpm -qa | awk -F- '/^(openvswitch[0-9]+\.[0-9]+-|openvswitch-2)/{print $1}' - name: Get version from current OpenvSwitch package register: ovs_version_out shell: @@ -135,7 +139,7 @@ outputs: - name: Check for openvswitch upgrade if not layered package installs when: - step|int == 2 - - run_ovs_update|default(true) + - run_ovs_update|bool block: - name: check if an upgrade is required register: ovs_need_upgrade @@ -175,7 +179,7 @@ outputs: - "{{ovs_list_of_rpms.stdout_lines}}" when: - step|int == 2 - - run_ovs_update|default(true) + - run_ovs_update|bool - ovs_packaging_issue|default(false)|succeeded - ovs_need_upgrade.stdout|default('') # The openvswitch package disables the systemd service on install. When installing