Workaround oslo master periodic job failures

Neutron has 2 periodic jobs that test neutron
with master oslo libraries:

  neutron-ovn-tempest-ovs-release-with-oslo-master
  neutron-ovs-tempest-with-oslo-master

The intent of both jobs, as the name implies, is to test
with an unreleased version of oslo libraries.

When devstack creates the global virtual env, it
does so with --site-packages so we can use libvirt-python
from the distro because otherwise that package needs
to be compiled from source with the libvirt headers that
match the libvirt in-use on the system.

A side-effect of that is if a package is installed on
the host that depends on oslo libraries it will pollute the
devstack venv.

novnc prior to v0.6.0 imported code from both nova and oslo.
v0.6.0 was released in 2016 but the Debian and Ubuntu packages
were never updated to remove the dependencies the package requires.

As a result the -with-oslo-master jobs were silently
having packages overridden with the versions from Ubuntu
via the incorrect dep on oslo.config in the python3-novnc
package.

This change works around that by installing novnc (a JavaScript
project) from source instead of using the distro package.

That should now mean that the -with-oslo-master jobs
no longer mix 2 different version of oslo libraries together.

This will resolve the nova import issue as the version
of oslo.utils shipped in Ubuntu 24.04 is older the minimum
version required for master or Epoxy.

Related-Bug: #2109592
Change-Id: If3e264cafc6c3bb62eebe8a440662599fd97c7a6
This commit is contained in:
Sean Mooney 2025-04-30 18:06:29 +01:00 committed by Brian Haley
parent 7c0aac975a
commit f2b1eb3a94

View File

@ -372,7 +372,14 @@
- openstack/taskflow
- openstack/tooz
- openstack/pbr
# this is a workaround for a packaging bug in ubuntu
# remove when https://bugs.launchpad.net/nova/+bug/2109592
# is resolved and oslo config is not a dep of the novnc deb
# via the defunct python3-novnc package.
- novnc/novnc
vars:
devstack_localrc:
NOVNC_FROM_PACKAGE: false
- job:
name: neutron-ovn-tempest
parent: tempest-integrated-networking
@ -675,6 +682,14 @@
- openstack/taskflow
- openstack/tooz
- openstack/pbr
# this is a workaround for a packaging bug in ubuntu
# remove when https://bugs.launchpad.net/nova/+bug/2109592
# is resolved and oslo config is not a dep of the novnc deb
# via the defunct python3-novnc package.
- novnc/novnc
vars:
devstack_localrc:
NOVNC_FROM_PACKAGE: false
- job:
name: neutron-ovn-tempest-ovs-master-centos-9-stream