Opensuse h4ckweek 2022 navigation log
View the Project on GitHub michelepagot/opensuse.hackweek.2022
by michelepagot
I hope for myself more Wezterm fun…
From the github project page configuration I selected the theme jeklly-theme-minimal. The theme official documentation is at minimal.
Day1 ended up in a solid failure, even of the basic boot/boot_to_desktop test of the selected Tumbleweed cloned from a passing test.
openqa-clone-job \
--from https://openqa.opensuse.org/tests/2436441 \
--skip-chained-deps \
SCHEDULE=tests/boot/boot_to_desktop
It was like this on both:
It turn out that most of the long execution time was dedicated to log collection after the failure in the post_fail_hook.
First trick that I get is to run the test with _SKIP_POST_FAIL_HOOKS=1
if I don’t need the lengthy log collection ( more details here).
openqa-clone-job \
--from https://openqa.opensuse.org/tests/2436441 \
--skip-chained-deps \
SCHEDULE=tests/boot/boot_to_desktop \
_SKIP_POST_FAIL_HOOKS=1
Talking about the failure itself, it seems something related to the needles.
# Test died: no candidate needle with tag(s) 'generic-desktop, emergency-shell, emergency-mode, opensuse-welcome, gnome-activities' matched
It turn out that I’m not using the proper needles repository in my openQA instance. The right one to use is os-autoinst-needles-opensuse
Now that the boot_to_desktop is PASS, I can try something more.
openqa-clone-job \
--from https://openqa.opensuse.org/tests/2436441 \
--skip-chained-deps \
SCHEDULE=tests/boot/boot_to_desktop,tests/x11/wezterm \
_SKIP_POST_FAIL_HOOKS=1
Now maybe I can try also to start the just installed Wezterm, it is just like adding in the test code:
x11_start_program('wezterm');
What I need now is to create a first needle. Unfortunately:
sounds like geekotest user can not write to my openQA instance needles.
% ls -lai products/opensuse/needles
794678 -rw-r--r-- 1 mpagot geekotest 213 Apr 19 10:24 products/opensuse/needles/apache2_changehat-adminer-database-dropped-20190418.json
794679 -rw-r--r-- 1 mpagot geekotest 45804 Apr 19 10:24 products/opensuse/needles/apache2_changehat-adminer-database-dropped-20190418.png
Indeed -rw-r--r-- 1 mpagot geekotest
. So I need to adjust permissions accordingly
# chown -R <YOUR_USERNAME>:geekotest needles/
$ chmod g+rw needles
$ chmod g+rw needles/*
And now they are like:
% ls -lai products/opensuse/needles/
1072275 -rw-rw-r-- 1 mpagot geekotest 213 Jun 28 15:54 products/opensuse/needles/apache2_changehat-adminer-database-dropped-20190418.json
1072276 -rw-rw-r-- 1 mpagot geekotest 45804 Jun 28 15:54 products/opensuse/needles/apache2_changehat-adminer-database-dropped-20190418.png
And now:
I’m following kalikiana post about isotovideo
mkdir openqa
git clone https://github.com/os-autoinst/os-autoinst-distri-example
cd os-autoinst-distri-example
podman run --rm -it -v .:/tests:Z registry.opensuse.org/devel/openqa/containers/isotovideo:qemu-x86 casedir=./tests
cd ..
git clone https://github.com/os-autoinst/os-autoinst-distri-opensuse
cd os-autoinst-distri-opensuse
podman run --pull=always --rm -it -v .:/opt/tests registry.opensuse.org/devel/openqa/containers-tw/isotovideo:qemu-x86-os-autoinst-distri-opensuse -d casedir=/opt/tests productdir=products/opensuse _exit_after_schedule=1
git clone --depth 1 https://github.com/os-autoinst/os-autoinst-needles-opensuse products/opensuse/needles
At this point, the execution produce a printscreen like:
It is time to get some images and ISO. I get them from openQA directly, for example from the download page of my reference TW test.
I place them in the pool folder and I can use them like:
podman run \
--rm -it \
-v .:/opt/tests
-v ./pool:/opt/pool -w /opt/pool \
registry.opensuse.org/devel/openqa/containers-tw/isotovideo:qemu-x86-os-autoinst-distri-opensuse \
-d casedir=/opt/tests productdir=products/opensuse \
SCHEDULE=tests/boot/boot_to_desktop \
HDD_1=opensuse-Tumbleweed-x86_64-20220625-gnome-x11@64bit.qcow2
that, for the moment, result in
[2022-06-28T12:36:44.028534Z] [debug] >>> testapi::_check_backend_response: match=text-logged-in-root timed out after 60 (assert_screen)
[2022-06-28T12:36:44.124456Z] [debug] post_fail_hook failed: no candidate needle with tag(s) 'text-logged-in-root' matched
[2022-06-28T12:36:44.127656Z] [debug] ||| finished boot_to_desktop tests/boot (runtime: 728 s)
[2022-06-28T12:36:44.127832Z] [debug] ||| post fail hooks runtime: 110 s
[2022-06-28T12:36:44.143325Z] [debug] stopping overall test execution after a fatal test failure
[2022-06-28T12:36:44.145149Z] [debug] stopping autotest process 14
[2022-06-28T12:36:44.165515Z] [debug] [autotest] process exited: 0