Bug 2245602

Summary: Upgrade [OSP16.2 ->OSP17.1] controller-0 does not perform leapp upgrade due to packages missing ovn2.15 openvswitch2.15
Product: Red Hat OpenStack Reporter: Juan Badia Payno <jbadiapa>
Component: openstack-tripleo-heat-templatesAssignee: Juan Badia Payno <jbadiapa>
Status: CLOSED CURRENTRELEASE QA Contact: Joe H. Rahme <jhakimra>
Severity: medium Docs Contact:
Priority: high    
Version: 17.1 (Wallaby)CC: anbs, drosenfe, faguiard, kgilliga, mburns
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Known Issue
Doc Text:
Cause: Use the "--answers-file answer-upgrade.yaml" to include the system_upgrade.yaml Consequence: The default parameters defined at the environments/lifecycle/upgrade-prepare.yaml file are using not the ones on the system_ugrade.yaml Workaround (if any): Instead of adding the system_upgrade.yaml to the answer file appended to the end of the "openstack overcloud upgrade prepare" command Result: The parameters configured on the system_upgrade.yaml will overwrite the ones on the default file.
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-02-28 09:17:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Juan Badia Payno 2023-10-23 09:48:48 UTC
Executed:

 openstack overcloud upgrade run --yes --stack overcloud --tags system_upgrade --limit controller0

and the output error is:

============================================================", "                           ERRORS                           ", "============================================================", "", "2023-10-22 09:12:39.943799 [ERROR] Actor: dnf_transaction_check", "Message: DNF execution failed with non zero exit code.", "STDOUT:", "Last metadata expiration check: 0:03:06 ago on Sun Oct 22 09:09:15 2023.", "Package container-selinux-2:2.167.0-1.module+el8.4.0+14908+81312c48.noarch is already installed.", "Package os-net-config-14.2.1-1.20230412014753.el8ost.noarch is already installed.", "Package python3-iso8601-0.1.12-8.el8ost.1.noarch is already installed.", "Package python3-pyOpenSSL-19.0.0-1.el8.noarch is already installed.", "", "STDERR:", "warning: Found bdb_ro Packages database while attempting sqlite backend: using bdb_ro backend.", "warning: Found bdb_ro Packages database while attempting sqlite backend: using bdb_ro backend.", "Warning: Package marked by Leapp to install not found in repositories metadata: ovn2.15 openvswitch2.15", "Warning: Package marked by Leapp to upgrade not found in repositories metadata: python3-leapp leapp-upgrade-el8toel9 gpg-pubkey leapp", "Transaction check: ", "", " Problem 1: conflicting requests", " Problem 2: package os-net-config-14.2.1-1.20230412014753.el8ost.noarch requires python(abi) = 3.6, but none of the providers can be installed", "  - conflicting requests", "", "", "============================================================", "                       END OF ERRORS                        ", "============================================================"

Comment 2 Juan Badia Payno 2023-10-24 11:57:14 UTC
There are one patch missing already attached to the BZ, the patch only set the default parameters for upgrading... besides other little things (but it does not apply here)

Configuring those parameters with the correct ones did not fix the issue.

The parameters were not properly configured due to the fact that the upgrade prepare command was using and answer file to add the parameters.

     $ openstack overcloud upgrade prepare --answers-file answer-upgrade.yaml -r roles-data.yaml -n networking-data.yaml

When the operator execute the os upgrade command, the default parameters were still on the configuration.

To configure properly the parameters, the system_upgrade.yaml and the upgrade_environment.yaml were removed from the answer-upgrade.yaml file and append to the end of the "openstack overcloud upgrade prepare" command as:

     $ openstack overcloud upgrade prepare --answers-file answer-upgrade.yaml -r roles-data.yaml -n networking-data.yaml -e system_upgrade.yaml -e upgrade_environment.yaml

Once that the parameters were properly configured, the operator could do the system upgrade.