diff --git a/lib/cockpit.pm b/lib/cockpit.pm index 3fe933a6..9e4bf4a6 100644 --- a/lib/cockpit.pm +++ b/lib/cockpit.pm @@ -39,9 +39,16 @@ sub start_cockpit { sub select_cockpit_update { # This method navigates to to the updates screen - assert_screen ["cockpit_software_updates", "cockpit_leftbar_scroll"], 120; + # From Firefox 100 on, we get 'adaptive scrollbars', which means + # the scrollbar is just invisible unless you moved the mouse + # recently. So we click in the search box and hit 'down' to scroll + # the sidebar as often as needed to show the button + assert_screen ["cockpit_software_updates", "cockpit_search"], 120; click_lastmatch; - assert_and_click "cockpit_software_updates" if (match_has_tag "cockpit_leftbar_scroll"); + if (match_has_tag "cockpit_search") { + send_key_until_needlematch("cockpit_software_updates", "down", 10); + assert_and_click "cockpit_software_updates"; + } # wait for the updates to download assert_screen 'cockpit_updates_check', 300; } diff --git a/needles/anaconda/identification/rocky-leftbar_generic-20221014.json b/needles/anaconda/identification/rocky-leftbar_generic-20221014.json new file mode 100644 index 00000000..0f6edb64 --- /dev/null +++ b/needles/anaconda/identification/rocky-leftbar_generic-20221014.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "ypos": 2, + "height": 764, + "type": "match", + "width": 144, + "xpos": 3 + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "leftbar_generic" + ] +} \ No newline at end of file diff --git a/needles/anaconda/identification/rocky-leftbar_generic-20221014.png b/needles/anaconda/identification/rocky-leftbar_generic-20221014.png new file mode 100644 index 00000000..0251f20d Binary files /dev/null and b/needles/anaconda/identification/rocky-leftbar_generic-20221014.png differ diff --git a/needles/anaconda/identification/russian/rocky-topbar_generic-russian-prerelease-20221014.json b/needles/anaconda/identification/russian/rocky-topbar_generic-russian-prerelease-20221014.json new file mode 100644 index 00000000..ac04a2e4 --- /dev/null +++ b/needles/anaconda/identification/russian/rocky-topbar_generic-russian-prerelease-20221014.json @@ -0,0 +1,17 @@ +{ + "area": [ + { + "ypos": 24, + "xpos": 171, + "width": 683, + "height": 32, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-russian", + "topbar_generic" + ] +} \ No newline at end of file diff --git a/needles/anaconda/identification/russian/rocky-topbar_generic-russian-prerelease-20221014.png b/needles/anaconda/identification/russian/rocky-topbar_generic-russian-prerelease-20221014.png new file mode 100644 index 00000000..f5f19985 Binary files /dev/null and b/needles/anaconda/identification/russian/rocky-topbar_generic-russian-prerelease-20221014.png differ diff --git a/needles/anaconda/install_destination/russian/rocky-encrypt_data_russian-20221014.json b/needles/anaconda/install_destination/russian/rocky-encrypt_data_russian-20221014.json new file mode 100644 index 00000000..a47d4229 --- /dev/null +++ b/needles/anaconda/install_destination/russian/rocky-encrypt_data_russian-20221014.json @@ -0,0 +1,17 @@ +{ + "area": [ + { + "ypos": 582, + "width": 170, + "xpos": 19, + "type": "match", + "height": 21 + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-russian", + "anaconda_install_destination_encrypt_data" + ] +} \ No newline at end of file diff --git a/needles/anaconda/install_destination/russian/rocky-encrypt_data_russian-20221014.png b/needles/anaconda/install_destination/russian/rocky-encrypt_data_russian-20221014.png new file mode 100644 index 00000000..8226dae5 Binary files /dev/null and b/needles/anaconda/install_destination/russian/rocky-encrypt_data_russian-20221014.png differ diff --git a/needles/anaconda/install_process/japanese/rocky-install_done_reboot_japanese-20221111.json b/needles/anaconda/install_process/japanese/rocky-install_done_reboot_japanese-20221111.json new file mode 100644 index 00000000..fe06a1ac --- /dev/null +++ b/needles/anaconda/install_process/japanese/rocky-install_done_reboot_japanese-20221111.json @@ -0,0 +1,24 @@ +{ + "area": [ + { + "width": 305, + "type": "match", + "xpos": 716, + "ypos": 634, + "height": 14 + }, + { + "xpos": 873, + "type": "match", + "width": 105, + "height": 14, + "ypos": 698 + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-japanese", + "anaconda_install_done" + ] +} \ No newline at end of file diff --git a/needles/anaconda/install_process/japanese/rocky-install_done_reboot_japanese-20221111.png b/needles/anaconda/install_process/japanese/rocky-install_done_reboot_japanese-20221111.png new file mode 100644 index 00000000..44d31a2b Binary files /dev/null and b/needles/anaconda/install_process/japanese/rocky-install_done_reboot_japanese-20221111.png differ diff --git a/needles/anaconda/universal/arabic/rocky-accept_fate_arabic-20221009.json b/needles/anaconda/universal/arabic/rocky-accept_fate_arabic-20221009.json new file mode 100644 index 00000000..d6acb938 --- /dev/null +++ b/needles/anaconda/universal/arabic/rocky-accept_fate_arabic-20221009.json @@ -0,0 +1,17 @@ +{ + "area": [ + { + "xpos": 261, + "ypos": 524, + "width": 105, + "height": 11, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-arabic", + "anaconda_rawhide_accept_fate" + ] +} \ No newline at end of file diff --git a/needles/anaconda/universal/arabic/rocky-accept_fate_arabic-20221009.png b/needles/anaconda/universal/arabic/rocky-accept_fate_arabic-20221009.png new file mode 100644 index 00000000..cd58617e Binary files /dev/null and b/needles/anaconda/universal/arabic/rocky-accept_fate_arabic-20221009.png differ diff --git a/needles/anaconda/universal/french/rocky-accept_fate_french-20221009.json b/needles/anaconda/universal/french/rocky-accept_fate_french-20221009.json new file mode 100644 index 00000000..a29232d2 --- /dev/null +++ b/needles/anaconda/universal/french/rocky-accept_fate_french-20221009.json @@ -0,0 +1,17 @@ +{ + "area": [ + { + "xpos": 649, + "ypos": 585, + "width": 110, + "height": 15, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-french", + "anaconda_rawhide_accept_fate" + ] +} \ No newline at end of file diff --git a/needles/anaconda/universal/french/rocky-accept_fate_french-20221009.png b/needles/anaconda/universal/french/rocky-accept_fate_french-20221009.png new file mode 100644 index 00000000..9a542a69 Binary files /dev/null and b/needles/anaconda/universal/french/rocky-accept_fate_french-20221009.png differ diff --git a/needles/anaconda/universal/japanese/rocky-accept_fate_japanese-20221009.json b/needles/anaconda/universal/japanese/rocky-accept_fate_japanese-20221009.json new file mode 100644 index 00000000..173a4af6 --- /dev/null +++ b/needles/anaconda/universal/japanese/rocky-accept_fate_japanese-20221009.json @@ -0,0 +1,17 @@ +{ + "area": [ + { + "xpos": 697, + "ypos": 622, + "width": 54, + "height": 13, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-japanese", + "anaconda_rawhide_accept_fate" + ] +} \ No newline at end of file diff --git a/needles/anaconda/universal/japanese/rocky-accept_fate_japanese-20221009.png b/needles/anaconda/universal/japanese/rocky-accept_fate_japanese-20221009.png new file mode 100644 index 00000000..c6577acf Binary files /dev/null and b/needles/anaconda/universal/japanese/rocky-accept_fate_japanese-20221009.png differ diff --git a/needles/anaconda/universal/rocky-accept_fate-20210805.png b/needles/anaconda/universal/rocky-accept_fate-20210805.png deleted file mode 100644 index 98ff7ee9..00000000 Binary files a/needles/anaconda/universal/rocky-accept_fate-20210805.png and /dev/null differ diff --git a/needles/anaconda/universal/rocky-accept_fate-20210805.json b/needles/anaconda/universal/rocky-accept_fate-20221006.json similarity index 64% rename from needles/anaconda/universal/rocky-accept_fate-20210805.json rename to needles/anaconda/universal/rocky-accept_fate-20221006.json index 97b7f3f9..85376107 100644 --- a/needles/anaconda/universal/rocky-accept_fate-20210805.json +++ b/needles/anaconda/universal/rocky-accept_fate-20221006.json @@ -1,11 +1,11 @@ { "area": [ { - "ypos": 705, - "height": 19, - "xpos": 674, "type": "match", - "width": 343 + "ypos": 594, + "xpos": 647, + "width": 124, + "height": 19 } ], "properties": [], @@ -14,4 +14,4 @@ "LANGUAGE-english", "anaconda_rawhide_accept_fate" ] -} +} \ No newline at end of file diff --git a/needles/anaconda/universal/rocky-accept_fate-20221006.png b/needles/anaconda/universal/rocky-accept_fate-20221006.png new file mode 100644 index 00000000..306fd5ae Binary files /dev/null and b/needles/anaconda/universal/rocky-accept_fate-20221006.png differ diff --git a/needles/anaconda/universal/russian/rocky-accept_fate_russian-20221009.json b/needles/anaconda/universal/russian/rocky-accept_fate_russian-20221009.json new file mode 100644 index 00000000..02c2e1a6 --- /dev/null +++ b/needles/anaconda/universal/russian/rocky-accept_fate_russian-20221009.json @@ -0,0 +1,17 @@ +{ + "area": [ + { + "xpos": 700, + "ypos": 522, + "width": 81, + "height": 15, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-russian", + "anaconda_rawhide_accept_fate" + ] +} \ No newline at end of file diff --git a/needles/anaconda/universal/russian/rocky-accept_fate_russian-20221009.png b/needles/anaconda/universal/russian/rocky-accept_fate_russian-20221009.png new file mode 100644 index 00000000..0251f20d Binary files /dev/null and b/needles/anaconda/universal/russian/rocky-accept_fate_russian-20221009.png differ diff --git a/needles/cockpit/cockpit_leftbar_scroll-20200530.json b/needles/cockpit/cockpit_leftbar_scroll-20200530.json deleted file mode 100644 index 7a51ea98..00000000 --- a/needles/cockpit/cockpit_leftbar_scroll-20200530.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "area": [ - { - "height": 55, - "type": "match", - "width": 43, - "xpos": 196, - "ypos": 711 - } - ], - "properties": [], - "tags": [ - "cockpit_leftbar_scroll" - ] -} \ No newline at end of file diff --git a/needles/cockpit/cockpit_leftbar_scroll-20200530.png b/needles/cockpit/cockpit_leftbar_scroll-20200530.png deleted file mode 100644 index 8e16a589..00000000 Binary files a/needles/cockpit/cockpit_leftbar_scroll-20200530.png and /dev/null differ diff --git a/needles/cockpit/cockpit_updates_auto-enable-20210429.json b/needles/cockpit/cockpit_updates_auto-enable-20210429.json deleted file mode 100644 index 2835c7bc..00000000 --- a/needles/cockpit/cockpit_updates_auto-enable-20210429.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "area": [ - { - "width": 48, - "xpos": 922, - "type": "match", - "ypos": 508, - "height": 19 - } - ], - "properties": [], - "tags": [ - "cockpit_updates_auto" - ] -} \ No newline at end of file diff --git a/needles/cockpit/cockpit_updates_auto-enable-20210429.png b/needles/cockpit/cockpit_updates_auto-enable-20210429.png deleted file mode 100644 index 19d109fb..00000000 Binary files a/needles/cockpit/cockpit_updates_auto-enable-20210429.png and /dev/null differ diff --git a/needles/cockpit/rocky-cockpit_leftbar_scroll-20210917.json b/needles/cockpit/rocky-cockpit_leftbar_scroll-20210917.json deleted file mode 100644 index c83dbadf..00000000 --- a/needles/cockpit/rocky-cockpit_leftbar_scroll-20210917.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "area": [ - { - "ypos": 694, - "width": 43, - "height": 55, - "xpos": 196, - "type": "match" - } - ], - "properties": [], - "tags": [ - "ENV-DISTRI-rocky", - "cockpit_leftbar_scroll" - ] -} diff --git a/needles/cockpit/rocky-cockpit_leftbar_scroll-20210917.png b/needles/cockpit/rocky-cockpit_leftbar_scroll-20210917.png deleted file mode 100644 index 515a5350..00000000 Binary files a/needles/cockpit/rocky-cockpit_leftbar_scroll-20210917.png and /dev/null differ diff --git a/needles/cockpit/rocky-cockpit_login-20221006.json b/needles/cockpit/rocky-cockpit_login-20221006.json new file mode 100644 index 00000000..b25f84fa --- /dev/null +++ b/needles/cockpit/rocky-cockpit_login-20221006.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "height": 77, + "width": 232, + "ypos": 200, + "xpos": 572, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_login" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_login-20221006.png b/needles/cockpit/rocky-cockpit_login-20221006.png new file mode 100644 index 00000000..2b10e75a Binary files /dev/null and b/needles/cockpit/rocky-cockpit_login-20221006.png differ diff --git a/needles/cockpit/rocky-cockpit_login-previous_tabs-20221006.json b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221006.json new file mode 100644 index 00000000..f6ad3e63 --- /dev/null +++ b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221006.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "ypos": 221, + "xpos": 572, + "type": "match", + "height": 77, + "width": 232 + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_login" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_login-previous_tabs-20221006.png b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221006.png new file mode 100644 index 00000000..2b8ff38f Binary files /dev/null and b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221006.png differ diff --git a/needles/cockpit/rocky-cockpit_login-previous_tabs-20221111.json b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221111.json new file mode 100644 index 00000000..6f185e58 --- /dev/null +++ b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221111.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "ypos": 205, + "height": 77, + "type": "match", + "xpos": 572, + "width": 232 + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_login" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_login-previous_tabs-20221111.png b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221111.png new file mode 100644 index 00000000..391f40f2 Binary files /dev/null and b/needles/cockpit/rocky-cockpit_login-previous_tabs-20221111.png differ diff --git a/needles/cockpit/rocky-cockpit_search-20221006.json b/needles/cockpit/rocky-cockpit_search-20221006.json new file mode 100644 index 00000000..374b755e --- /dev/null +++ b/needles/cockpit/rocky-cockpit_search-20221006.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 21, + "ypos": 207, + "width": 174, + "height": 27, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_search" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_search-20221006.png b/needles/cockpit/rocky-cockpit_search-20221006.png new file mode 100644 index 00000000..ccbdd4f5 Binary files /dev/null and b/needles/cockpit/rocky-cockpit_search-20221006.png differ diff --git a/needles/cockpit/rocky-cockpit_search-20221112.json b/needles/cockpit/rocky-cockpit_search-20221112.json new file mode 100644 index 00000000..07186b64 --- /dev/null +++ b/needles/cockpit/rocky-cockpit_search-20221112.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "width": 174, + "type": "match", + "xpos": 29, + "height": 27, + "ypos": 205 + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_search" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_search-20221112.png b/needles/cockpit/rocky-cockpit_search-20221112.png new file mode 100644 index 00000000..33908927 Binary files /dev/null and b/needles/cockpit/rocky-cockpit_search-20221112.png differ diff --git a/needles/cockpit/rocky-cockpit_software_updates-20221008.json b/needles/cockpit/rocky-cockpit_software_updates-20221008.json new file mode 100644 index 00000000..e8d5ec71 --- /dev/null +++ b/needles/cockpit/rocky-cockpit_software_updates-20221008.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "height": 22, + "width": 62, + "ypos": 689, + "xpos": 83, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_software_updates" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_software_updates-20221008.png b/needles/cockpit/rocky-cockpit_software_updates-20221008.png new file mode 100644 index 00000000..3104886d Binary files /dev/null and b/needles/cockpit/rocky-cockpit_software_updates-20221008.png differ diff --git a/needles/cockpit/rocky-cockpit_updates_auto-20220724.json b/needles/cockpit/rocky-cockpit_updates_auto-20220724.json deleted file mode 100644 index 21a3cbbd..00000000 --- a/needles/cockpit/rocky-cockpit_updates_auto-20220724.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "area": [ - { - "width": 53, - "height": 22, - "click_point": { - "xpos": 24.5, - "ypos": 11.5 - }, - "type": "match", - "xpos": 909, - "ypos": 447 - }, - { - "xpos": 262, - "ypos": 448, - "width": 145, - "height": 20, - "type": "match" - }, - { - "xpos": 408, - "ypos": 448, - "width": 75, - "height": 20, - "type": "match" - } - ], - "properties": [], - "tags": [ - "ENV-DISTRI-rocky", - "cockpit_updates_auto" - ] -} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_updates_auto-20220724.png b/needles/cockpit/rocky-cockpit_updates_auto-20220724.png deleted file mode 100644 index 6fdf7ec5..00000000 Binary files a/needles/cockpit/rocky-cockpit_updates_auto-20220724.png and /dev/null differ diff --git a/needles/cockpit/rocky-cockpit_updates_auto-20221008.json b/needles/cockpit/rocky-cockpit_updates_auto-20221008.json new file mode 100644 index 00000000..99350022 --- /dev/null +++ b/needles/cockpit/rocky-cockpit_updates_auto-20221008.json @@ -0,0 +1,20 @@ +{ + "area": [ + { + "xpos": 264, + "ypos": 447, + "width": 716, + "height": 21, + "type": "match", + "click_point": { + "xpos": 681, + "ypos": 11.5 + } + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_updates_auto" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_updates_auto-20221008.png b/needles/cockpit/rocky-cockpit_updates_auto-20221008.png new file mode 100644 index 00000000..28ed7720 Binary files /dev/null and b/needles/cockpit/rocky-cockpit_updates_auto-20221008.png differ diff --git a/needles/cockpit/rocky-cockpit_updates_auto-20221112.json b/needles/cockpit/rocky-cockpit_updates_auto-20221112.json new file mode 100644 index 00000000..bf407828 --- /dev/null +++ b/needles/cockpit/rocky-cockpit_updates_auto-20221112.json @@ -0,0 +1,20 @@ +{ + "area": [ + { + "ypos": 447, + "click_point": { + "xpos": 681, + "ypos": 11.5 + }, + "height": 21, + "width": 716, + "xpos": 264, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "cockpit_updates_auto" + ] +} \ No newline at end of file diff --git a/needles/cockpit/rocky-cockpit_updates_auto-20221112.png b/needles/cockpit/rocky-cockpit_updates_auto-20221112.png new file mode 100644 index 00000000..f37ed393 Binary files /dev/null and b/needles/cockpit/rocky-cockpit_updates_auto-20221112.png differ diff --git a/needles/firefox/rocky-firefox_close_tabs-20221006.json b/needles/firefox/rocky-firefox_close_tabs-20221006.json new file mode 100644 index 00000000..359846e5 --- /dev/null +++ b/needles/firefox/rocky-firefox_close_tabs-20221006.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "width": 110, + "height": 23, + "type": "match", + "xpos": 607, + "ypos": 196 + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "firefox_close_tabs" + ] +} \ No newline at end of file diff --git a/needles/firefox/rocky-firefox_close_tabs-20221006.png b/needles/firefox/rocky-firefox_close_tabs-20221006.png new file mode 100644 index 00000000..bccb98b6 Binary files /dev/null and b/needles/firefox/rocky-firefox_close_tabs-20221006.png differ diff --git a/needles/gnome/arabic/rocky-skip_button_arabic-20221111.json b/needles/gnome/arabic/rocky-skip_button_arabic-20221111.json new file mode 100644 index 00000000..58d748c0 --- /dev/null +++ b/needles/gnome/arabic/rocky-skip_button_arabic-20221111.json @@ -0,0 +1,17 @@ +{ + "area": [ + { + "ypos": 39, + "height": 24, + "width": 49, + "xpos": 14, + "type": "match" + } + ], + "properties": [], + "tags": [ + "ENV-DISTRI-rocky", + "LANGUAGE-arabic", + "skip_button" + ] +} \ No newline at end of file diff --git a/needles/gnome/arabic/rocky-skip_button_arabic-20221111.png b/needles/gnome/arabic/rocky-skip_button_arabic-20221111.png new file mode 100644 index 00000000..380dd229 Binary files /dev/null and b/needles/gnome/arabic/rocky-skip_button_arabic-20221111.png differ diff --git a/run-openqa-tests.sh b/run-openqa-tests.sh deleted file mode 100755 index 1b2d0cbc..00000000 --- a/run-openqa-tests.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -set -e - -ROCKY_FLAVOR="${ROCKY_FLAVOR:-boot-iso}" -ROCKY_VERSION="${ROCKY_VERSION:-8.6}" -ROCKY_ARCH="${ROCKY_ARCH:=x86_64}" -ROCKY_PACKAGE_SET="${ROCKY_PACKAGE_SET:=minimal}" -ROCKY_EXTRA_ARGS="${ROCKY_EXTRA_ARGS:-}" -BUILD_PREFIX="${ROCKY_VERSION}_${ROCKY_FLAVOR}" -BUILD_NAME="${BUILD_PREFIX}_$(date +%Y%m%d.%H%M%S).0" - -if [[ "$ROCKY_FLAVOR" == "dvd-iso" || "$ROCKY_FLAVOR" == "universal" ]]; then - ISO_TYPE=dvd1 -elif [[ "$ROCKY_FLAVOR" == "minimal-iso" ]]; then - ISO_TYPE=minimal -elif [[ "$ROCKY_FLAVOR" == "boot-iso" ]]; then - ISO_TYPE=boot -else - echo "Usage: $0 [universal|dvd-iso|minimal-iso|boot-iso]" - exit 1 -fi - -export PS4='# ' -set -o xtrace -openqa-cli api \ - -X POST isos \ - ISO="Rocky-$ROCKY_VERSION-$ROCKY_ARCH-$ISO_TYPE.iso" \ - ARCH="$ROCKY_ARCH" \ - DISTRI=rocky \ - FLAVOR="$ROCKY_FLAVOR" \ - VERSION="$ROCKY_VERSION" \ - BUILD="$BUILD_NAME" \ - PACKAGE_SET="$ROCKY_PACKAGE_SET" \ - IDENTIFICATION=false \ - "${ROCKY_EXTRA_ARGS}" diff --git a/build-report.sh b/scripts/build-report.sh similarity index 100% rename from build-report.sh rename to scripts/build-report.sh diff --git a/scripts/cancel-build.sh b/scripts/cancel-build.sh new file mode 100755 index 00000000..a5b78a08 --- /dev/null +++ b/scripts/cancel-build.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +BUILD="$1" + +## Usage: Cancels all outstanding openQA jobs for the specified build +# scripts/cancel-build.sh 20221014.133700-My-Named-Build + +jobs_in_build=$(openqa-cli api jobs build="$BUILD" | jq -r '.jobs[].id' | xargs) + +for id in $jobs_in_build +do + openqa-cli api -X POST "jobs/$id/cancel" +done diff --git a/scripts/run-all-flavors.sh b/scripts/run-all-flavors.sh new file mode 100755 index 00000000..fc12e8d7 --- /dev/null +++ b/scripts/run-all-flavors.sh @@ -0,0 +1,75 @@ +#!/bin/bash +set -e + +MAJOR_VERSION=9 +MINOR_VERSION=0 + +## Usage: Posts ISOs to openQA for each of the universal, dvd-iso, package-set, minimal-iso, and boot-iso FLAVORs. +# scripts/run-all-flavors.sh + +ROCKY_VERSION="$MAJOR_VERSION.$MINOR_VERSION" +ROCKY_ARCH="${ROCKY_ARCH:=x86_64}" +ROCKY_EXTRA_ARGS="${ROCKY_EXTRA_ARGS:-}" +BUILD_PREFIX="-$(date +%Y%m%d.%H%M%S).0-$(git branch --show-current)" +ISO_PREFIX="Rocky-$ROCKY_VERSION-$ROCKY_ARCH" +DVD_ISOTYPE=dvd1 + +if [[ "$MAJOR_VERSION" -gt "8" ]]; then + DVD_ISOTYPE=dvd +fi + +# Update fif templates +./fifloader.py --clean --load templates.fif.json templates-updates.fif.json + +# POST all the flavors +export PS4='# ' +set -o xtrace +openqa-cli api \ + -X POST isos \ + ISO="$ISO_PREFIX-$DVD_ISOTYPE.iso" \ + ARCH="$ROCKY_ARCH" \ + DISTRI=rocky \ + FLAVOR=universal \ + VERSION="$ROCKY_VERSION" \ + BUILD="$BUILD_PREFIX-universal-$ROCKY_VERSION" \ + "${ROCKY_EXTRA_ARGS}" + +openqa-cli api \ + -X POST isos \ + ISO="$ISO_PREFIX-$DVD_ISOTYPE.iso" \ + ARCH="$ROCKY_ARCH" \ + DISTRI=rocky \ + FLAVOR="dvd-iso" \ + VERSION="$ROCKY_VERSION" \ + BUILD="$BUILD_PREFIX-dvd-$ROCKY_VERSION" \ + "${ROCKY_EXTRA_ARGS}" + +openqa-cli api \ + -X POST isos \ + ISO="$ISO_PREFIX-$DVD_ISOTYPE.iso" \ + ARCH="$ROCKY_ARCH" \ + DISTRI=rocky \ + FLAVOR=package-set \ + VERSION="$ROCKY_VERSION" \ + BUILD="$BUILD_PREFIX-packageset-$ROCKY_VERSION" \ + "${ROCKY_EXTRA_ARGS}" + +openqa-cli api \ + -X POST isos \ + ISO="$ISO_PREFIX-minimal.iso" \ + ARCH="$ROCKY_ARCH" \ + DISTRI=rocky \ + FLAVOR=minimal-iso \ + VERSION="$ROCKY_VERSION" \ + BUILD="$BUILD_PREFIX-minimal-$ROCKY_VERSION" \ + "${ROCKY_EXTRA_ARGS}" + +openqa-cli api \ + -X POST isos \ + ISO="$ISO_PREFIX-boot.iso" \ + ARCH="$ROCKY_ARCH" \ + DISTRI=rocky \ + FLAVOR=boot-iso \ + VERSION="$ROCKY_VERSION" \ + BUILD="$BUILD_PREFIX-boot-$ROCKY_VERSION" \ + "${ROCKY_EXTRA_ARGS}" diff --git a/scripts/run-openqa-tests.sh b/scripts/run-openqa-tests.sh new file mode 100755 index 00000000..7f8fa91b --- /dev/null +++ b/scripts/run-openqa-tests.sh @@ -0,0 +1,59 @@ +#!/bin/bash +set -e + +MAJOR_VERSION=9 +MINOR_VERSION=0 + +## Usage: Post an ISO for the specified FLAVOR. Defaults to boot-iso. +# +## Run the boot-iso FLAVOR +# scripts/run-openqa-tests.sh +# +## Run the package-set FLAVOR +# ROCKY_FLAVOR=package-set scripts/run-openqa-tests.sh +# +## Run the localization test suites +# ROCKY_FLAVOR ROCKY_EXTRA_ARGS=TEST=install_arabic_language,install_asian_language,install_european_language,install_cyrillic_language scripts/run-openqa-tests.sh + +ROCKY_FLAVOR="${ROCKY_FLAVOR:-boot-iso}" +ROCKY_VERSION="$MAJOR_VERSION.$MINOR_VERSION" +ROCKY_ARCH="${ROCKY_ARCH:=x86_64}" +ROCKY_EXTRA_ARGS="${ROCKY_EXTRA_ARGS:-}" +BUILD_PREFIX="-$(date +%Y%m%d.%H%M%S).0-$(git branch --show-current)" +BUILD_NAME="$BUILD_PREFIX-$ROCKY_FLAVOR-$ROCKY_VERSION" + +ISO_PREFIX="Rocky-$ROCKY_VERSION-$ROCKY_ARCH" + +if [[ "$ROCKY_FLAVOR" == "dvd-iso" || "$ROCKY_FLAVOR" == "universal" ]]; then + if [[ "$MAJOR_VERSION" -gt "8" ]]; then + ISO_TYPE=dvd + else + ISO_TYPE=dvd1 + fi +elif [[ "$ROCKY_FLAVOR" == "minimal-iso" ]]; then + ISO_TYPE=minimal +elif [[ "$ROCKY_FLAVOR" == "boot-iso" || "$ROCKY_FLAVOR" == "package-set" ]]; then + # package-set also works with dvd image + ISO_TYPE=boot +else + echo "Usage: $0 [universal|dvd-iso|minimal-iso|package-set|boot-iso]" + exit 1 +fi + +ROCKY_ISO="$ISO_PREFIX-$ISO_TYPE.iso" + +# Update fif templates +./fifloader.py --clean --load templates.fif.json templates-updates.fif.json + +# Run the tests +export PS4='# ' +set -o xtrace +openqa-cli api \ + -X POST isos \ + ISO="$ROCKY_ISO" \ + ARCH="$ROCKY_ARCH" \ + DISTRI=rocky \ + FLAVOR="$ROCKY_FLAVOR" \ + VERSION="$ROCKY_VERSION" \ + BUILD="$BUILD_NAME" \ + "$ROCKY_EXTRA_ARGS" diff --git a/templates.fif.json b/templates.fif.json index 161cfec9..53b63d66 100644 --- a/templates.fif.json +++ b/templates.fif.json @@ -237,6 +237,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "base_reboot_unmount", "ROOT_PASSWORD": "weakpassword", @@ -251,6 +252,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "base_system_logging", "ROOT_PASSWORD": "weakpassword", @@ -265,6 +267,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "base_update_cli", "ROOT_PASSWORD": "weakpassword", @@ -279,6 +282,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "base_package_install_remove", "ROOT_PASSWORD": "weakpassword", @@ -293,6 +297,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "base_services_start", "ROOT_PASSWORD": "weakpassword", @@ -307,6 +312,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "base_selinux", "ROOT_PASSWORD": "weakpassword", @@ -321,6 +327,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "base_service_manipulation", "ROOT_PASSWORD": "weakpassword", @@ -591,6 +598,7 @@ "rocky-dvd-iso-x86_64-*-uefi": 31 }, "settings": { + "DESKTOP": "gnome", "PARTITIONING": "custom_standard_partition_ext4", "ROOT_PASSWORD": "weakpassword" } @@ -882,6 +890,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "modularity_module_list modularity_enable_disable_module modularity_install_module", "ROOT_PASSWORD": "weakpassword", @@ -923,6 +932,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "_setup_browser server_cockpit_default", "ROOT_PASSWORD": "weakpassword", @@ -952,6 +962,7 @@ }, "settings": { "BOOTFROM": "c", + "DESKTOP": "gnome", "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", "POSTINSTALL": "server_filesystem_default", "ROOT_PASSWORD": "weakpassword", diff --git a/tests/_graphical_wait_login.pm b/tests/_graphical_wait_login.pm index 1eb86359..2d629134 100644 --- a/tests/_graphical_wait_login.pm +++ b/tests/_graphical_wait_login.pm @@ -42,7 +42,7 @@ sub run { unless (get_var("HDD_1") && !(get_var("PARTITIONING") eq "custom_resize_lvm")) { # in 9.0, license screens are not shown by default # https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/9.0_release_notes/index#enhancement_installer-and-image-creation - unless ($version eq '9.0') { + unless (get_version_major() > 8) { # for Rocky Linux here happens to be a license acceptance screen # the initial appearance can sometimes take really long assert_screen "gdm_initial_setup_license", 120;