Public bug reported:

[Impact]

Artful (OpenStack Train) through Focal (OpenStack Ussuri), the Nova
package now fails to build with unit tests failing because they're
missing the `systemctl` binary. An example traceback from the tests is
included in the Other Info at the end.

This affects the ability to backport fixes or upstream point releases to
the Nova package in Ubuntu.

[Test Case]

Reproducing this error is doable by building the package:

git clone lp:~ubuntu-openstack-dev/ubuntu/+source/nova
cd nova
git checkout stable/ussuri
gbp buildpackage -S -sa
pbuilder-dist focal build ../build-area/nova_*dsc

[Where problems could occur]

This upload doesn't change anything in the deployed software, merely in
the build environment. With that caveat, building on an environment that
cannot install systemctl could continue to leave this package
unbuildable.

[Other Info]

Below is an example of one of the unit test failures that is resolved by
adding systemctl as a build dependency.

nova.tests.unit.virt.libvirt.volume.test_quobyte.LibvirtQuobyteVolumeDriverTestCase.test_libvirt_quobyte_driver_already_mounted
-------------------------------------------------------------------------------------------------------------------------------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/mock/mock.py", line 1330, in patched
    return func(*args, **keywargs)
      File 
"/build/nova-21.1.0/nova/tests/unit/virt/libvirt/volume/test_quobyte.py", line 
419, in test_libvirt_quobyte_driver_already_mounted
    libvirt_driver.connect_volume(connection_info, mock.sentinel.instance)
      File "/usr/lib/python3/dist-packages/oslo_concurrency/lockutils.py", line 
359, in inner
    return f(*args, **kwargs)
      File "/build/nova-21.1.0/nova/virt/libvirt/volume/quobyte.py", line 161, 
in connect_volume
    if is_systemd():
      File "/build/nova-21.1.0/nova/virt/libvirt/volume/quobyte.py", line 60, 
in is_systemd
    sysdout, sysderr = processutils.execute("systemctl",
      File "/usr/lib/python3/dist-packages/oslo_concurrency/processutils.py", 
line 383, in execute
    obj = subprocess.Popen(cmd,
      File "/usr/lib/python3/dist-packages/eventlet/green/subprocess.py", line 
58, in __init__
    subprocess_orig.Popen.__init__(self, args, 0, *argss, **kwds)
      File "/usr/lib/python3.8/subprocess.py", line 854, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
      File "/usr/lib/python3.8/subprocess.py", line 1702, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
    FileNotFoundError: [Errno 2] No such file or directory: 'systemctl'

** Affects: cloud-archive
     Importance: Undecided
         Status: Invalid

** Affects: cloud-archive/train
     Importance: Undecided
         Status: New

** Affects: nova (Ubuntu)
     Importance: Undecided
         Status: Invalid

** Affects: nova (Ubuntu Focal)
     Importance: Undecided
         Status: New

** Also affects: nova (Ubuntu Focal)
   Importance: Undecided
       Status: New

** Also affects: cloud-archive
   Importance: Undecided
       Status: New

** Also affects: cloud-archive/train
   Importance: Undecided
       Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1903724

Title:
  [SRU] Package fails to build with missing 'systemctl'

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1903724/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to