Project

General

Profile

action #127034

coordination #127031: [saga][epic] openQA for SUSE customers

coordination #127028: [epic] openQA on SLE+packagehub

[spike][timeboxed:20h] Run openQA (webUI+worker) based on SLE to find out problems size:M

Added by okurz about 2 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
Feature requests
Target version:
Start date:
2023-03-31
Due date:
% Done:

0%

Estimated time:
Difficulty:
Tags:

Description

Acceptance Criteria

  • AC1: openQA is known to run with a web UI and a worker on the latest SLE

Suggestions


Related issues

Copied to openQA Project - action #127286: Run openQA (webUI+worker) based on SLE+packagehub size:MWorkable2023-03-31

History

#1 Updated by okurz about 2 months ago

  • Priority changed from Normal to Urgent

#2 Updated by okurz about 2 months ago

  • Subject changed from [spike][timeboxed:20h] Run openQA (webUI+worker based on SLE to find out problems to [spike][timeboxed:20h] Run openQA (webUI+worker) based on SLE to find out problems

#3 Updated by okurz about 2 months ago

  • Copied to action #127286: Run openQA (webUI+worker) based on SLE+packagehub size:M added

#4 Updated by cdywan about 2 months ago

  • Subject changed from [spike][timeboxed:20h] Run openQA (webUI+worker) based on SLE to find out problems to [spike][timeboxed:20h] Run openQA (webUI+worker) based on SLE to find out problems size:M
  • Description updated (diff)
  • Status changed from New to Workable

#5 Updated by mkittler about 2 months ago

  • Description updated (diff)

#6 Updated by mkittler about 2 months ago

  • Description updated (diff)

#7 Updated by mkittler about 2 months ago

  • Description updated (diff)

#8 Updated by cdywan about 2 months ago

  • Description updated (diff)

#9 Updated by mkittler about 2 months ago

  • Description updated (diff)

#10 Updated by mkittler about 2 months ago

  • Description updated (diff)

#11 Updated by mkittler about 2 months ago

I've did some testing in a SLE-15-SP5 VM and package hub enabled as documented on https://www.suse.com/support/kb/doc/?id=000018789. Apart from packages being two years old, it doesn't look good:

bernhard@susetest:~> sudo zypper in os-autoinst openQA

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

[sudo] password for root: 
Refreshing service 'Basesystem_Module_15_SP5_x86_64'.
Refreshing service 'Desktop_Applications_Module_15_SP5_x86_64'.
Refreshing service 'SUSE_Linux_Enterprise_Server_15_SP5_x86_64'.
Refreshing service 'SUSE_Package_Hub_15_SP5_x86_64'.
Refreshing service 'Server_Applications_Module_15_SP5_x86_64'.
Refreshing service 'Transactional_Server_Module_15_SP5_x86_64'.
Loading repository data...
Reading installed packages...
Resolving package dependencies...
2 Problems:
Problem: nothing provides 'perl(Module::Pluggable)' needed by the to be installed openQA-4.6.1667810206.2bf912d-bp155.1.66.noarch
Problem: nothing provides 'libopencv_core.so.405()(64bit)' needed by the to be installed os-autoinst-4.6.1639403953.ae94c4bd-bp155.3.6.x86_64

Problem: nothing provides 'perl(Module::Pluggable)' needed by the to be installed openQA-4.6.1667810206.2bf912d-bp155.1.66.noarch
 Solution 1: do not install openQA-4.6.1667810206.2bf912d-bp155.1.66.noarch
 Solution 2: break openQA-4.6.1667810206.2bf912d-bp155.1.66.noarch by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 2

Problem: nothing provides 'libopencv_core.so.405()(64bit)' needed by the to be installed os-autoinst-4.6.1639403953.ae94c4bd-bp155.3.6.x86_64
 Solution 1: do not install os-autoinst-4.6.1639403953.ae94c4bd-bp155.3.6.x86_64
 Solution 2: break os-autoinst-4.6.1639403953.ae94c4bd-bp155.3.6.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 2
Resolving dependencies...
Resolving package dependencies...
bernhard@susetest:~> sudo zypper in openQA-client openQA-local-db openQA-worker 
[sudo] password for root: 
Refreshing service 'Basesystem_Module_15_SP5_x86_64'.
Refreshing service 'Desktop_Applications_Module_15_SP5_x86_64'.
Refreshing service 'SUSE_Linux_Enterprise_Server_15_SP5_x86_64'.
Refreshing service 'SUSE_Package_Hub_15_SP5_x86_64'.
Refreshing service 'Server_Applications_Module_15_SP5_x86_64'.
Refreshing service 'Transactional_Server_Module_15_SP5_x86_64'.
Loading repository data...
Reading installed packages...
'openQA-local-db' is already installed.
No update candidate for 'openQA-local-db-4.6.1667810206.2bf912d-bp155.1.66.noarch'. The highest available version is already installed.
Resolving package dependencies...
2 Problems:
Problem: nothing provides 'perl(YAML::XS)' needed by the to be installed openQA-client-4.6.1667810206.2bf912d-bp155.1.66.noarch
Problem: nothing provides 'perl(Capture::Tiny)' needed by the to be installed openQA-worker-4.6.1667810206.2bf912d-bp155.1.66.noarch

Problem: nothing provides 'perl(YAML::XS)' needed by the to be installed openQA-client-4.6.1667810206.2bf912d-bp155.1.66.noarch
 Solution 1: do not install openQA-client-4.6.1667810206.2bf912d-bp155.1.66.noarch
 Solution 2: break openQA-client-4.6.1667810206.2bf912d-bp155.1.66.noarch by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 2

Problem: nothing provides 'perl(Capture::Tiny)' needed by the to be installed openQA-worker-4.6.1667810206.2bf912d-bp155.1.66.noarch
 Solution 1: do not install openQA-worker-4.6.1667810206.2bf912d-bp155.1.66.noarch
 Solution 2: break openQA-worker-4.6.1667810206.2bf912d-bp155.1.66.noarch by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 2
Resolving dependencies...
Resolving package dependencies...

So we definitely need to update packages and also bring in some dependencies. It doesn't seem to miss that much, though.


The package itself is also broken, e.g. some files are missing:

bernhard@susetest:~> l /usr/share/openqa/lib/OpenQA/WebAPI.pm
ls: cannot access '/usr/share/openqa/lib/OpenQA/WebAPI.pm': No such file or directory

It is strange that the package is build against the wrong version of OpenCV:

bernhard@susetest:~> /usr/lib/os-autoinst/videoencoder 
/usr/lib/os-autoinst/videoencoder: error while loading shared libraries: libopencv_imgcodecs.so.405: cannot open shared object file: No such file or directory

It doesn't look like the opencv package is available at all (only a debuginfo package for it). So packages like python3-opencv are similarly broken:

bernhard@susetest:~> sudo zypper in python3-opencv
[sudo] password for root: 
Refreshing service 'Basesystem_Module_15_SP5_x86_64'.
Refreshing service 'Desktop_Applications_Module_15_SP5_x86_64'.
Refreshing service 'SUSE_Linux_Enterprise_Server_15_SP5_x86_64'.
Refreshing service 'SUSE_Package_Hub_15_SP5_x86_64'.
Refreshing service 'Server_Applications_Module_15_SP5_x86_64'.
Refreshing service 'Transactional_Server_Module_15_SP5_x86_64'.
Loading repository data...
Reading installed packages...
Resolving package dependencies...

Problem: nothing provides 'libopencv_aruco.so.405()(64bit)' needed by the to be installed python3-opencv-4.5.5-150400.1.28.x86_64
 Solution 1: do not install python3-opencv-4.5.5-150400.1.28.x86_64
 Solution 2: break python3-opencv-4.5.5-150400.1.28.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/c/d/?] (c):

#12 Updated by okurz about 2 months ago

mkittler wrote:

I've did some testing in a SLE-15-SP5 VM and package hub enabled as documented on https://www.suse.com/support/kb/doc/?id=000018789. Apart from packages being two years old, it doesn't look good:

Thank you for your effort! SLE15SP5 is not bad but the primary focus should be SLE15SP4 which is at time of writing the latest released SLE. Results might just be the same though.

#13 Updated by cdywan about 2 months ago

zypper ar -p 95 -f 'http://download.opensuse.org/repositories/devel:openQA/$releasever' devel_openQA
zypper ar -p 90 -f 'http://download.opensuse.org/repositories/devel:openQA:Leap:$releasever/$releasever' devel_openQA_Leap
zypper dup --from devel_openQA_Leap --allow-vendor-change

As discussed Leap packages should be binary-compatible, so I gave it a go pretending my sle15.4 is a Leap and it works 🤓

#14 Updated by mkittler about 2 months ago

  • Status changed from Workable to In Progress
  • Assignee set to mkittler

#15 Updated by mkittler about 2 months ago

I've added our repos for Leap 15.4 in a SLES 15-SP4 system (as documented on http://open.qa/docs/#_development_version_repository).

There are many dependencies missing for openQA-local-db, openQA-client, openQA-worker and os-autoinst which are supposedly the top-level packages users are interested in. Most notably OpenCV and the whole dependency chain of ffmpeg but also some Perl modules and their dependency chains.

I've been installing these dependencies via:

zypper in http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-JSON-Validator-5.03-bp154.1.23.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libIlmImf-2_2-23-2.2.1-3.41.1.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libHalf23-2.2.1-1.17.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libavcodec58_134-4.4-150400.1.13.x86_64.rpm  http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libavutil56_70-4.4-150400.1.13.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libIex-2_2-23-2.2.1-1.17.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libIlmThread-2_2-23-2.2.1-1.17.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libavformat58_76-4.4-150400.1.13.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libdc1394-22-2.2.5-1.53.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libmfx1-21.3.4-150400.1.24.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libswscale5_9-4.4-150400.1.13.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libtbb2-2019_20190605-1.56.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libva2-2.13.0-150400.1.6.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libcelt0-2-0.11.3-1.29.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libgsm1-1.0.14-3.2.1.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libswresample3_9-4.4-150400.1.13.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libva-drm2-2.13.0-150400.1.6.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libbluray2-1.3.0-150300.10.3.1.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libraw1394-11-2.1.1-1.27.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libvdpau1-1.1.1-1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopenmpt0-0.3.28-2.13.1.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_highgui405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_imgcodecs405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_ximgproc405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribleap/15.4/repo/oss/x86_64/perl-Time-Moment-0.44-bp154.1.19.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Config-Tiny-2.23-bp154.1.65.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Config-IniFiles-2.94-1.23.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-Filesys-Df-0.92-bp154.1.30.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Getopt-Long-Descriptive-0.110-bp154.1.34.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-IPC-Run-20200505.0-bp154.1.55.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Sub-Exporter-0.987-bp154.1.51.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-IO-Tty-1.12-1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Data-OptList-0.112-bp154.1.78.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/bsdtar-3.5.1-150400.1.9.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/optipng-0.7.7-bp154.2.48.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Capture-Tiny-0.46-1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-File-Map-0.67-bp154.1.15.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-SQL-SplitStatement-1.00020-bp154.1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-PerlIO-Layers-0.012-bp154.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-SQL-Tokenizer-0.24-bp154.1.31.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-URI-db-0.19-bp154.1.23.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-URI-Nested-0.10-bp154.1.30.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-SQL-Abstract-2.000001-bp154.1.13.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Hash-Merge-0.302-bp154.1.12.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Moo-2.003004-bp154.1.46.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Test-Deep-1.127-1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Clone-Choose-0.010-bp154.1.14.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Class-Method-Modifiers-2.12-bp154.1.69.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Devel-GlobalDestruction-0.14-bp154.1.73.noarch.rpm

Ok, that's not all. I'm currently figuring out the remaining dependencies at:

zypper in -f openQA http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-BSD-Resource-1.2911-1.26.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-CommonMark-0.290000-bp154.4.31.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-DBIx-Class-DynamicDefault-0.04-bp154.1.18.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-DBIx-Class-OptimisticLocking-0.02-bp154.1.21.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-DBIx-Class-0.082841-bp154.1.14.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-DBIx-Class-Schema-Config-0.001014-bp154.1.20.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-DateTime-Format-Pg-0.16014-bp154.1.25.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Module-Pluggable-5.2-1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Net-OpenID-Consumer-1.18-bp154.1.15.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Pod-POM-2.01-bp154.1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-SQL-Translator-1.62-bp154.1.28.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Sort-Versions-1.62-bp154.1.26.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Text-Diff-1.45-1.20.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-Time-modules-2013.0912-bp154.1.28.x86_64.rpm

We might want to submit these official Leap 15.4 packages to the package hub repo of SLE-15-SP4. Some of packages are actually just split packages so the list of submissions is shorter than the number of arguments in this zypper in call.

However, is it really worth it? It seems like a lot of effort. Built-only dependencies are already excluded here and as mentioned I haven't even finished the whole list. So maybe it would be simpler to just provide a containerized installation.

Note that many of those dependencies would normally not be relevant for use (like libblueray). They're only pulled-in because the ffmpeg build of Leap 15.4 has e.g. Blue-Ray support enabled.

One thing I need to try tomorrow is actually enabling the package hub repo in the VM. That may cut the list of dependencies a little bit shorter. I haven't thought of that from the beginning because on my last attempt on SP5 it didn't bring OpenCV/ffmpeg and its dependency chain.

#16 Updated by openqa_review about 1 month ago

  • Due date set to 2023-04-27

Setting due date based on mean cycle time of SUSE QE Tools

#17 Updated by okurz about 1 month ago

mkittler as I tried to explain from the beginning: All the packages that you mentioned that you installed from the official Leap repo which are not already part of SLE are in packagehub. The only real missing part can be packages that we maintain in devel:openQA:Leap

#18 Updated by mkittler about 1 month ago

as I tried to explain from the beginning …

As I wrote in the paragraph of my previous comment:

One thing I need to try tomorrow is actually enabling the package hub repo in the VM. That may cut the list of dependencies a little bit shorter. I haven't thought of that from the beginning because on my last attempt on SP5 it didn't bring OpenCV/ffmpeg and its dependency chain.

So enabling package hub will cover some dependencies but not all. And as I've said I'm going to try it and see what's still missing then.

#19 Updated by cdywan about 1 month ago

There are many dependencies missing for openQA-local-db, openQA-client, openQA-worker and os-autoinst which are supposedly the top-level packages users are interested in. Most notably OpenCV and the whole dependency chain of ffmpeg but also some Perl modules and their dependency chains.

Right. So apparently I made the mistake of not checking all packages specifically.

zypper in openQA-local-db openQA-client openQA-worker os-autoinst
[...]
Problem: nothing provides 'libopencv_core.so.405()(64bit)' needed by the to be installed os-autoinst-4.6.1681373767.3f5134e-lp154.1558.1.aarch6

So what Marius said above. We clarified it in the daily.

#20 Updated by mkittler about 1 month ago

I've been restoring my previous snapshot and added the devel repos again plus SUSEConnect -p PackageHub/15.4/x86_64. Now I'm indeed getting a little bit further so perl-JSON-Validator isn't the first package it complains about it anymore. However, there are still Perl packages and other packages like bsdtar missing (so it is not only the OpenCV/ffmpeg dependency chain). So as expected this is only a small win. I'll try to compile a list of the packages we need to submit.

#21 Updated by mkittler about 1 month ago

This is an install command that works without missing dependencies:

zypper in openQA-local-db openQA-client openQA-worker os-autoinst http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Config-IniFiles-2.94-1.23.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/bsdtar-3.5.1-150400.1.9.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-IO-Tty-1.12-1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Capture-Tiny-0.46-1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_highgui405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_imgcodecs405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_ximgproc405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libIlmImf-2_2-23-2.2.1-3.41.1.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libHalf23-2.2.1-1.17.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libIex-2_2-23-2.2.1-1.17.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libIlmThread-2_2-23-2.2.1-1.17.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libtbb2-2019_20190605-1.56.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/perl-BSD-Resource-1.2911-1.26.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Module-Pluggable-5.2-1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Text-Diff-1.45-1.20.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Algorithm-Diff-1.1903-1.25.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-DBIx-Class-DeploymentHandler-0.002233-bp154.1.21.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Test-Deep-1.127-1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-YAML-1.24-1.17.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Path-Class-0.37-1.23.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Module-Find-0.13-1.25.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/noarch/perl-Scope-Guard-0.21-1.24.noarch.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libcmark0_30_2-0.30.2-150400.1.9.x86_64.rpm

Luckily ffmpeg and it dependencies are actually not part of it anymore but OpenCV and many Perl packages are. And that's of course only in addition to the 40+ packages in our devel repo for Leap 15.4.

Shouldn't some of the package, e.g. bsdtar not be missing (as e.g. bsdtar should be provided/built by https://build.opensuse.org/package/show/SUSE:SLE-15-SP4:Update/libarchive)?

Regardless of that, I suppose the following packages would be needed:

libarchive opencv tbb openexr cmark perl-Config-IniFiles perl-IO-Tty perl-Capture-Tiny perl-BSD-Resource perl-Module-Pluggable perl-Text-Diff perl-Algorithm-Diff perl-DBIx-Class-DeploymentHandler perl-Test-Deep perl-YAML perl-Path-Class perl-Module-Find perl-Scope-Guard

But I'm really wondering why I don't have all packages showing up on https://build.opensuse.org/project/show/SUSE:SLE-15-SP4:Update in my VM. I should have all update repos and they're up-to-date:

localhost:~ # zypper ref
Repository 'SLE-Module-Basesystem15-SP4-Pool' is up to date.                    
Repository 'SLE-Module-Basesystem15-SP4-Updates' is up to date.                 
Repository 'SLE-Product-SLES15-SP4-Pool' is up to date.                         
Repository 'SLE-Product-SLES15-SP4-Updates' is up to date.                      
Repository 'SLE-Module-Packagehub-Subpackages15-SP4-Pool' is up to date.        
Repository 'SLE-Module-Packagehub-Subpackages15-SP4-Updates' is up to date.     
Repository 'SUSE-PackageHub-15-SP4-Backports-Pool' is up to date.               
Repository 'SUSE-PackageHub-15-SP4-Pool' is up to date.                         
Repository 'SLE-Module-Server-Applications15-SP4-Pool' is up to date.           
Repository 'SLE-Module-Server-Applications15-SP4-Updates' is up to date.        
Repository 'devel_openQA' is up to date.                                        
Repository 'devel_openQA_Leap' is up to date.                                   
All repositories have been refreshed.

#22 Updated by cdywan about 1 month ago

It seems like https://build.opensuse.org/repositories/SUSE:SLE-15-SP4:Update also contains no package binaries whatsoever... so it seems we still don't know where packages are built/published

#23 Updated by mkittler about 1 month ago

Since I've broken the networking in my VM by trying to expose the web UI ports to the host I'm now trying a container:

distrobox create -i registry.suse.com/suse/sle15:latest -n sle15
distrobox enter sle15
sudo zypper in SUSEConnect
sudo SUSEConnect -e … -r …
sudo SUSEConnect -p PackageHub/15.4/x86_64
podman container commit sle15 sle15-registered-with-package-hub

In contrast to the VM all packages are present as expected. That cuts the list of packages that need to be pulled from Leap 15.4 quite short:

sudo zypper in openQA-local-db openQA-client openQA-worker os-autoinst os-autoinst-distri-opensuse-deps http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_highgui405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_imgcodecs405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libopencv_ximgproc405-4.5.5-150400.1.28.x86_64.rpm http://download.opensuse.org/distribution/leap/15.4/repo/oss/x86_64/libtbb2-2019_20190605-1.56.x86_64.rpm

So we need only opencv and tbb (besides the packages in our Leap devel repo). This time I've also added os-autoinst-distri-opensuse-deps but fortunately it doesn't pull in any further dependencies that aren't there. With that I can confirm that it basically works.

There's no systemd in the container but one can start the web UI via [martchus@sle15 os-autoinst]$ sudo sudo -u geekotest /usr/share/openqa/script/openqa daemon and it seems to work (e.g. the UI is accessible via a browser on the host system). This works without starting the database because I've just been using the host database here. The binaries from os-autoinst also start without complaining about missing libraries.

After stopping PostgreSQL on the host and a bit of fiddling (which has nothing to do with SLE and was only about the containerized setup) I could also start PostgreSQL via [martchus@sle15 os-autoinst]$ sudo sudo -u postgres /usr/share/postgresql/postgresql-script start in the container. Then I could also run [martchus@sle15 os-autoinst]$ sudo sudo -u postgres /usr/share/openqa/script/setup-db and the daemon using the PostgreSQL server on SLE.

After configuring credentials and also starting the web socket server I could also start the worker via sudo sudo -u _openqa-worker /usr/share/openqa/script/worker.

I could also clone a job from o3 via [martchus@sle15 os-autoinst]$ /usr/share/openqa/script/openqa-clone-job --apikey 1234567890ABCDEF --apisecret 1234567890ABCDEF --dir /run/host/hdd/openqa-devel/openqa/share/factory --host localhost:9526 https://openqa.opensuse.org/tests/3225936.

After starting the scheduler the test has actually started and the VM ran just fine. (Of course the factory and test directories needed to be symlinked from /host so the worker within the container could find them.)


I've also compared the list of repositories present in the VM from my previous attempt with the container from this attempt. The list in the container is definitely longer which supposedly explains the absent packages. Not sure what I did wrong when setting up the VM to end up with a half-bake system, though.

I can also generally recommended distrobox for tests like this. It is much simpler to setup compared to the VM. And also easier to handle in general. Just be aware that it uses the host network by default and that your entire host file system is exposed by default under /host (read-only, though).


TLDR: The only problems are the missing opencv and tbb packages and that we of course also need to submit the whole Leap 15.4 devel repo to package hub as well. Otherwise everything looks good.

#24 Updated by mkittler about 1 month ago

After adding the following repositories in my container I now also see opencv and tbb packages:

sudo SUSEConnect -p sle-module-desktop-applications/15.4/x86_64 -r $sles_key
sudo SUSEConnect -p sle-we/15.4/x86_64 -r $sled_key

So no reason to submit them. I have found these commands using the search on https://scc.suse.com/packages.

#25 Updated by okurz about 1 month ago

From https://scc.suse.com/packages?name=SUSE%20Linux%20Enterprise%20Server&version=15.4&arch=x86_64&query=opencv&module= we can see that opencv is provided within the workstations extension SLE module so this module and dependencies need to be enabled.

From the beginning what I did:

  • Go to https://suse.com, click on "Free downloads" (or if that is not visible https://suse.com/products)
  • "Business-Critical Linux", "SUSE Linux Enterprise Server", "Download"
  • Select SLES15-SP4-Minimal-VM.x86_64-kvm-and-xen-GM.qcow2 and "Download", login
  • In "virt-manager" create a new VM, select the qcow image
  • Start the VM and go through the ncurses based installation dialog
  • Register the SLE installation and enable modules with
SUSEConnect -r $sles_key
SUSEConnect -p sle-module-desktop-applications/15.4/x86_64
SUSEConnect -p sle-we/15.4/x86_64 -r $sled_key
  • Install openQA, e.g. zypper -n in openQA-single-instance

With this I could start systemctl start openqa-webui just fine. Of course the version of openQA and dependencies is not up-to-date with what we have in devel:openQA but that is expected. Created https://github.com/os-autoinst/openQA/pull/5079 to cover SLE in documentation.

#26 Updated by okurz about 1 month ago

  • Due date deleted (2023-04-27)
  • Status changed from In Progress to Resolved
  • #127757 to cover docs
  • I will update the other tickets accordingly

#27 Updated by tinita about 1 month ago

To be able to install openQA-single-instance I had to do these steps:

SUSEConnect -r $sles_key
SUSEConnect -p sle-module-desktop-applications/15.4/x86_64
SUSEConnect -p sle-we/15.4/x86_64 -r $sled_key
SUSEConnect -p PackageHub/15.4/x86_64
SUSEConnect -p sle-module-development-tools/15.4/x86_64

Also available in: Atom PDF