Project

General

Profile

Actions

action #116455

closed

coordination #116449: [epic] Manual testing for ALP in Yam squad

Initial Manual Testing of Containerized YaST (ALP September prototype)

Added by JERiveraMoya over 1 year ago. Updated over 1 year ago.

Status:
Resolved
Priority:
High
Assignee:
Target version:
Start date:
2022-09-12
Due date:
% Done:

0%

Estimated time:

Description

Motivation

There are two Work Packages associated with 1:1 System Management job group:

  • Cockpit
  • Containerized YaST

Check https://confluence.suse.com/display/LEONG/ALP+September+prototype.+Workgroups+and+decisions
and the ALP plan in slide 10: https://mysuse.sharepoint.com/:p:/s/LinuxPlatformsPMTeam/EZBhw4uCwU1Nhm72KNkCwHABTQNQh5sQJIcMduXtWqlEVw?e=v0nNQL&isSPOFile=1

Containerized YaST is still work in progress, but we can start following the guided created by developers:
https://yast.opensuse.org/blog/2022-08-23/yast-report-2022-7#containers

Also notice that "Only one pre-built bootable image will be delivered for the September PoC: x86_64 UEFI"
In the official repo with the images https://download.opensuse.org/repositories/SUSE:/ALP/images/
we just need to use version 9.2 flavor KVM. In previous version, which when trying to run they already indicates that are obsolete, there were more flavors.
We can see how it was tested in openQA initially:
https://openqa.opensuse.org/tests/overview?version=0.1&build=19.9&groupid=100&distri=alp
builds are obsolete (@jlausuch plan to move to new image path in O3) but it is a good reference how to use it as it is very similar to Microos.

The goal of this ticket is to get familiar with Containerized YaST doing the following actions:

  • Configure services
  • Network configuration
  • Bootloader Module
  • Kdump Module
  • Read operations

Software installation is still not adapted to work with transactional updates, but bootloader and kdump might be ready this week (12th-16th) September according to developers

Acceptance criteria

AC1: Exploratory testing of Containerized YaST in ALP
AC2: Create additional tickets for testing the September prototype

Additional information


Files

sample_combustion_ignition.txt (427 Bytes) sample_combustion_ignition.txt JERiveraMoya, 2022-09-13 10:35
Actions #1

Updated by JERiveraMoya over 1 year ago

  • Subject changed from Initial Manual testing for ALP - Cockpt to Initial Manual testing for ALP - Cockpit
Actions #2

Updated by JERiveraMoya over 1 year ago

  • Subject changed from Initial Manual testing for ALP - Cockpit to Initial Manual Testing for Cockpit
Actions #3

Updated by JERiveraMoya over 1 year ago

  • Subject changed from Initial Manual Testing for Cockpit to Initial Manual Testing of Cockpit
Actions #5

Updated by JERiveraMoya over 1 year ago

  • Description updated (diff)
Actions #6

Updated by JERiveraMoya over 1 year ago

  • Description updated (diff)
Actions #7

Updated by JERiveraMoya over 1 year ago

  • Subject changed from Initial Manual Testing of Cockpit to Initial Manual Testing of Containerized YaST
  • Description updated (diff)
Actions #8

Updated by JERiveraMoya over 1 year ago

  • Description updated (diff)
Actions #9

Updated by JERiveraMoya over 1 year ago

  • Description updated (diff)
Actions #10

Updated by JERiveraMoya over 1 year ago

  • Tags deleted (qe-yast-refinement)
  • Status changed from New to Workable
Actions #11

Updated by JERiveraMoya over 1 year ago

  • Description updated (diff)
Actions #12

Updated by JRivrain over 1 year ago

  • Assignee set to JRivrain
Actions #13

Updated by JRivrain over 1 year ago

  • Status changed from Workable to In Progress
Actions #14

Updated by JERiveraMoya over 1 year ago

  • Priority changed from Normal to Urgent
Actions #15

Updated by geor over 1 year ago

  • Assignee changed from JRivrain to geor

As discussed in slack, I will be assigning this ticket to myself, since it's deadline is estimated at next Tuesday.

Actions #16

Updated by JERiveraMoya over 1 year ago

the checking point is Tuesday, testing is until the end of the month, but seems that you will have more time than @JRivrain to take a look and we can report something already on Tuesday.
thanks for taking over!

Actions #18

Updated by geor over 1 year ago

JERiveraMoya wrote:

now there are encrypted image: https://download.opensuse.org/repositories/SUSE:/ALP/images/ALP-VM.x86_64-0.0.1-kvm_encrypted-Build13.2.qcow2

Through which channel did you get notified on this? Is there a way to know the encryption passphrase for the image?

Actions #19

Updated by JERiveraMoya over 1 year ago

does it work the password in line 66 in kiwi file?
https://build.opensuse.org/package/view_file/SUSE:ALP/ALP/ALP.kiwi?expand=1

Actions #20

Updated by geor over 1 year ago

JERiveraMoya wrote:

does it work the password in line 66 in kiwi file?
https://build.opensuse.org/package/view_file/SUSE:ALP/ALP/ALP.kiwi?expand=1

Exactly thanks!
How were we notified about the new encrypted image? Or did you check it personally?

Actions #21

Updated by JERiveraMoya over 1 year ago

I got this info from a meeting but this is the slack thread where you can find the best option to get the lastest info in ALP:
https://suse.slack.com/archives/C03G45KTP6W/p1663317317206779

Actions #22

Updated by geor over 1 year ago

Here are some initial findings, in order to sync with Jonathan.
Some of these are potential bug submissions.

  • Service Manager takes long time to load Services
  • System/ Date and Time : Takes long time initializing, and finally Region and Time Zone entries are empty.
  • System/ Kernel dump : Enabling kdump (after reboot) yields errors: kdump.service: Failed with result 'exit-code'.
  • Hardware/ System Keyboard Layout : Switching to different layout is not properly working?
  • Network Service/ DNS Server : requires installation of bind but bind is not available
  • Network Service/ iSCSI Initiator : Internal error. Please report a bug report with logs. Run save_y2logs to get complete logs. Caller: /usr/share/YaST2/lib/yast2 /compound_service.rb:43:ininitialize'`
  • Security and Users/ User and Group Management : User and Group Configuration takes a long time
  • Miscellaneous/ Display the system's log : Start module for reading the yast module > Asks to install manually yast2-journal. yast2-journal is not available
  • Miscellaneous/Systemd Journal : Very poor performance
Actions #23

Updated by JERiveraMoya over 1 year ago

I could filter in bugzilla for bugs related with ALP with:
https://bugzilla.suse.com/buglist.cgi?list_id=13732836&product=ALP
I'm not sure about creating many bugs, because the product is still in development, but if you see something clear, we should report it or tell YaST team.

Actions #24

Updated by JRivrain over 1 year ago

I tried to figure out how to test qt and web, no chance so far. After making sure my network setup was right, I tried installing some dependencies but it does not work

QT:
(in my WS I can use yast over ssh with ssh -X, I tried installing all the same libs + X11 as on my WS, no chance)

localhost:~ # DISPLAY="localhost:10.0" QT_DEBUG_PLUGINS=1 podman --log-level info container runlabel run registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-qt:latest
INFO[0000] podman filtering at log level info           
INFO[0000] Setting parallel job count to 4              
f398a3489f50a13a94ac9a3cb423c812bedb7b258d12fb35d4578f73677c0e0e
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.

Error: `/usr/bin/podman run --replace -it --privileged --pid=host --ipc=host --net=host -v /dev:/dev --mount type=bind,source=/,target=/host,bind-propagation=rshared -e ZYPP_LOCKFILE_ROOT=/host -e YAST_SCR_TARGET=/host -e TERM -e LIBSTORAGE_LOCKFILE_ROOT=/host -e LIBSTORAGE_ROOTPREFIX=/host --name yast-mgmt-qt -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e XAUTHORITY -e XAUTHLOCALHOSTNAME registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-qt:latest` failed: exit status 1

Web:

localhost:~ # podman container runlabel run registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-web:latest
9fb7dc07e118ca56abd1c4bdf24e3c3aa0edfd54822f7dad28678e8f1b33e8e6
VNC password is not set
Error: `/usr/bin/podman run --replace -it --privileged --pid=host --ipc=host --net=host -v /dev:/dev --mount type=bind,source=/,target=/host,bind-propagation=rshared -e ZYPP_LOCKFILE_ROOT=/host -e YAST_SCR_TARGET=/host -e TERM -e LIBSTORAGE_LOCKFILE_ROOT=/host -e LIBSTORAGE_ROOTPREFIX=/host --name yast-mgmt-web -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e XAUTHORITY registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-web:latest` failed: exit status 1

So in short, web and qt are far from working out-of-the-box at the moment.

Actions #25

Updated by JERiveraMoya over 1 year ago

for qt was reported by myself and other YaST developers that didn't work a couple of months ago in a Tumbleweed (but please, don't waste time in other OS different from ALP for this task). Could you check with developers if there is any new documentation?

Actions #26

Updated by JERiveraMoya over 1 year ago

  • Priority changed from Urgent to High
Actions #27

Updated by geor over 1 year ago

  • Priority changed from High to Urgent

JRivrain wrote:

I tried to figure out how to test qt and web, no chance so far. After making sure my network setup was right, I tried installing some dependencies but it does not work

QT:
(in my WS I can use yast over ssh with ssh -X, I tried installing all the same libs + X11 as on my WS, no chance)

localhost:~ # DISPLAY="localhost:10.0" QT_DEBUG_PLUGINS=1 podman --log-level info container runlabel run registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-qt:latest
INFO[0000] podman filtering at log level info           
INFO[0000] Setting parallel job count to 4              
f398a3489f50a13a94ac9a3cb423c812bedb7b258d12fb35d4578f73677c0e0e
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.

Error: `/usr/bin/podman run --replace -it --privileged --pid=host --ipc=host --net=host -v /dev:/dev --mount type=bind,source=/,target=/host,bind-propagation=rshared -e ZYPP_LOCKFILE_ROOT=/host -e YAST_SCR_TARGET=/host -e TERM -e LIBSTORAGE_LOCKFILE_ROOT=/host -e LIBSTORAGE_ROOTPREFIX=/host --name yast-mgmt-qt -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e XAUTHORITY -e XAUTHLOCALHOSTNAME registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-qt:latest` failed: exit status 1

Web:

localhost:~ # podman container runlabel run registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-web:latest
9fb7dc07e118ca56abd1c4bdf24e3c3aa0edfd54822f7dad28678e8f1b33e8e6
VNC password is not set
Error: `/usr/bin/podman run --replace -it --privileged --pid=host --ipc=host --net=host -v /dev:/dev --mount type=bind,source=/,target=/host,bind-propagation=rshared -e ZYPP_LOCKFILE_ROOT=/host -e YAST_SCR_TARGET=/host -e TERM -e LIBSTORAGE_LOCKFILE_ROOT=/host -e LIBSTORAGE_ROOTPREFIX=/host --name yast-mgmt-web -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e XAUTHORITY registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-web:latest` failed: exit status 1

So in short, web and qt are far from working out-of-the-box at the moment.

Hey Jonathan, after some trying around the way I got to the qt yast container to work:
transactional-update pkg install xauth and restart
vim /etc/ssh/sshd_config.d/sshd.conf
PermitRootLogin yes
PasswordAuthentication yes
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost no

ssh -X to the alp machine
podman container runlabel run registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-qt:latest

Actions #28

Updated by geor over 1 year ago

  • Priority changed from Urgent to High

No idea why priority changed with my last comment...

Actions #29

Updated by JERiveraMoya over 1 year ago

High is fine, with urgent we got the bot reminders too often in the parent epic.

Actions #30

Updated by JRivrain over 1 year ago

geor wrote:

Hey Jonathan, after some trying around the way I got to the qt yast container to work:
transactional-update pkg install xauth and restart
vim /etc/ssh/sshd_config.d/sshd.conf
PermitRootLogin yes
PasswordAuthentication yes
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost no

ssh -X to the alp machine
podman container runlabel run registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-qt:latest

Thanks, actually we need even less in sshd.conf, the following are enough
PermitRootLogin yes
X11Forwarding yes

Actions #31

Updated by geor over 1 year ago

I submit here a summary of the results I found for the first round of testing for ALP-VM.x86_64-0.0.1-kvm-Build13.3.qcow2 and ALP-VM.x86_64-0.0.1-kvm_encrypted-Build13.2.qcow2

YaST ncurses container image

The image has been tested both with podman and docker. The issues that follow are consistent with both container tools.

Issues

  • Network Service/ iSCSI Initiator: Internal error.
    Caller: /usr/share/YaST2/lib/yast2/compound_service.rb:43:in 'initialize'

  • System/ Kernel dump: After enabling kdump we have an error in the kdump.service
    kdump.service: Failed with result 'exit-code'.

  • System/ Date and Time: Region and Time Zone entries are empty

  • System/ Boot Loader: After having performed a transactional update pkg install, before reboot:
    The root filesystem looks like not currently mounted. If you have executed a snapshot
    rollback, please reboot your system before continuing. Continue despite the issue?

    Same thing can happen in System/ Date and Time.

  • Packages not being available despite being asked to be installed by YaST:

    • Network Service/ DNS Server asks for bind which is not available.
    • Miscellaneous/ Systemd Journal asks for yast2-journal which is not available.

Minor issues

  • Poor performance on System / Service Manager, Security and Users/ User and Group Management, Miscellaneous/ Systemd Journal
  • Hardware/ Printer: Asks for installation of cups-client. After reboot asks for installation of cups. It would be usefull to report both missing packages from the start, to avoid multiple reboots.

libyui-rest-api

Works with podman as expected with YUI_HTTP_PORT=8000 YUI_REUSE_PORT=1 YUI_HTTP_REMOTE=1 podman container runlabel run registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-ncurses-test-api:latest
GETing and POSTing via the api is possible from outside the machine as well.

Does not work with docker.

YaST Qt container image

The image has been tested both with podman and docker.

Issues

Same issues as above, plus one additional:

  • Hardware/ System Keyboard Layout: Clicking on a different layout results in error:

    Internal error. Please report a bug report with logs.
    Run save_y2logs to get complete logs.
    
    Caller: /usr/share/YaST2/lib/y2keyboard/strategies/kb_strategy.rb:79:in `set_x11_layout'
    
    Details: undefined method `empty?' for nil:NilClass
    
    return if x11data.empty?
    

libyui-rest-api

Not working: Connection refused

YaST Web container image

For now the yast-mgmt-web container is using a javascript VNC client to render a screen of VNC connection in the browser. We need to have a VNC connection established.
As there is currently no VNC server package available in the ALP repo, there is no way to test this container image for now.

Actions #32

Updated by geor over 1 year ago

  • Status changed from In Progress to Resolved

I will mark this as resolved for now, we have the first round of testing results.
We can re-open this when needed.

Actions #33

Updated by JERiveraMoya over 1 year ago

  • Subject changed from Initial Manual Testing of Containerized YaST to Initial Manual Testing of Containerized YaST (ALP September prototype)
Actions

Also available in: Atom PDF