Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-13078

BZ#2320138 [FFU] 16.2->17.1 upgrade fails if extra openvswitch packages are installed

XMLWordPrintable

    • 2
    • False
    • Hide

      None

      Show
      None
    • False
    • None
    • Moderate

      Description of problem:
      tripleo-ansible task with name "Special treatment for OpenvSwitch" fails if some extra, non-core, openvswitch packages are installed.

      Version-Release number of selected component (if applicable):
      17.1.3

      How reproducible:
      Always reproducible

      Steps to Reproduce:
      1. Deploy RHOSP 16.2 overcloud
      2. Install openvswitch2.15-devel or openvswitch2.15-test on at least one overcloud node
      3. Run overcloud upgrade

      Actual results:
      Overcloud upgrade breaks during execution of task "Special treatment for OpenvSwitch", on the host with extra openvswitch2.15 packages:

      ~~~
      ^[[0;31m2024-10-21 05:09:34.845965 | 2cc26024-0e20-fa42-5414-00000000187d | FATAL | Special treatment for OpenvSwitch | overcloud-novacompute-0 | error=

      {"changed": false, "module_stderr": "Traceback (most recent call last):\n File \"<stdin>\", line 102, in <module>\n File \"<stdin>\", line 94, in _ansiballz_main\n File \"<stdin>\", line 40, in invoke_module\n File \"/usr/lib64/python3.6/runpy.py\", line 205, in run_module\n return _run_module_code(code, init_globals, run_name, mod_spec)\n File \"/usr/lib64/python3.6/runpy.py\", line 96, in _run_module_code\n mod_name, mod_spec, pkg_name, script_name)\n File \"/usr/lib64/python3.6/runpy.py\", line 85, in _run_code\n exec(code, run_globals)\n File \"/tmp/ansible_tripleo_ovs_upgrade_payload_rphm6chp/ansible_tripleo_ovs_upgrade_payload.zip/ansible/modules/tripleo_ovs_upgrade.py\", line 337, in <module>\n File \"/tmp/ansible_tripleo_ovs_upgrade_payload_rphm6chp/ansible_tripleo_ovs_upgrade_payload.zip/ansible/modules/tripleo_ovs_upgrade.py\", line 326, in main\n File \"/tmp/ansible_tripleo_ovs_upgrade_payload_rphm6chp/ansible_tripleo_ovs_upgrade_payload.zip/ansible/modules/tripleo_ovs_upgrade.py\", line 202, in layer_product_upgrade\nIndexError: list index out of range\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}

      ^[[0m
      ~~~

      Expected results:
      Overcloud upgrade tasks can correctly detect and upgrade all installed openvswitch2.15-* packages.

      Additional info:

      This issue has been already identified and documented [0], but I don't see the root cause investigated nor a BZ created yet, and therefore I'm creating one.

      The root cause is likely in the regex inside this function [1], as the test or devel packages (and others) would not hit the regular expression [2]. Removing the packages as instructed on the KB is a good-enough workaround, but the problem should not happen in the first place.

      [0] https://access.redhat.com/solutions/7057436
      [1] https://opendev.org/openstack/tripleo-ansible/src/commit/31ed062a9c1cc2bbccc73ece1ed7307e58b390d1/tripleo_ansible/ansible_plugins/modules/tripleo_ovs_upgrade.py#L83-L96
      [2] https://regexr.com/879bp

              kgilliga@redhat.com Katie Gilligan
              jira-bugzilla-migration RH Bugzilla Integration
              Archana Singh Archana Singh
              rhos-dfg-upgrades
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: