KIWI openQA functional tests using the images from the staging project on OBS.
You need access to an openQA instance, where either the job groups, test suites & products have been configured or where you have operator access so that you can create these yourself. For testing purposes, you can setup a local instance as described in the documentation.
Furthermore, you need to have a valid account in openSUSE's instance of the
Open Build Service and
osc
set up.
Last but not least, you'll need poetry to utilize the scripts shipped in this repository.
Before proceeding further, be sure to install the dependencies and run poetry install
.
You can apply the necessary settings automatically using the settings.py
script as follows:
poetry run ./settings.py --server $URL_TO_MY_INSTANCE
If you are running a local instance, then you will have to add the domain
opensuse.org
to the download_domains
option in /etc/openqa/openqa.ini
:
[global]
download_domains = opensuse.org
Test runs are scheduled using the script schedule_test_run.py
. It will by
default schedule all tests for all distributions & versions on
o3 and create a state file which contains the
started job ids:
$ poetry run ./schedule_test_run.py
Wrote build state into kiwi_build_20210430_1619795290_483278.pickle
The created .pickle
file can be fed into the monitoring script monitor.py
to
query the current state of the jobs:
$ poetry run ./monitor.py -p kiwi_build_20210430_1619795290_483278.pickle
https://openqa.opensuse.org/tests/876: state: passed, result: done
https://openqa.opensuse.org/tests/877: state: passed, result: done
https://openqa.opensuse.org/tests/886: state: failed, result: done
https://openqa.opensuse.org/tests/920: state: failed, result: done
https://openqa.opensuse.org/tests/921: state: skipped, result: cancelled
https://openqa.opensuse.org/tests/922: state: failed, result: done
or to cancel them all:
$ poetry run ./monitor.py -c kiwi_build_20210430_1619795290_483278.pickle