From 0f8f6082ebf56c9c2c70532838a27f26298c6baa Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Thu, 13 Feb 2020 11:50:32 -0800 Subject: [PATCH] Enable IoT testing with install and base tests IoT is becoming a release-blocking edition for F32, so we should be testing it for sure. We may add specific tests, but for now let's run the install and base tests on it. Signed-off-by: Adam Williamson --- .../version_31-iot-20200213.json | 15 ++++++ .../version_31-iot-20200213.png | Bin 0 -> 63420 bytes templates.fif.json | 51 ++++++++++++++++++ tests/_console_wait_login.pm | 10 ++++ tests/_do_install_and_reboot.pm | 17 +++--- tests/os_release.pm | 25 +++++---- 6 files changed, 99 insertions(+), 19 deletions(-) create mode 100644 needles/anaconda/identification/version_31-iot-20200213.json create mode 100644 needles/anaconda/identification/version_31-iot-20200213.png diff --git a/needles/anaconda/identification/version_31-iot-20200213.json b/needles/anaconda/identification/version_31-iot-20200213.json new file mode 100644 index 00000000..c83f60dc --- /dev/null +++ b/needles/anaconda/identification/version_31-iot-20200213.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "ypos": 13, + "height": 20, + "width": 124, + "type": "match", + "xpos": 764 + } + ], + "properties": [], + "tags": [ + "version_31_ident" + ] +} \ No newline at end of file diff --git a/needles/anaconda/identification/version_31-iot-20200213.png b/needles/anaconda/identification/version_31-iot-20200213.png new file mode 100644 index 0000000000000000000000000000000000000000..efcf33aad03dcfc84e846f43968d076f76781b49 GIT binary patch literal 63420 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

>-vP#+0q-=~ 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 z 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 literal 0 HcmV?d00001 diff --git a/templates.fif.json b/templates.fif.json index d5062511..d801046b 100644 --- a/templates.fif.json +++ b/templates.fif.json @@ -133,6 +133,30 @@ }, "version": "*" }, + "fedora-IoT-dvd_ostree-iso-aarch64-*": { + "arch": "aarch64", + "distri": "fedora", + "flavor": "IoT-dvd_ostree-iso", + "settings": { + "CANNED": "1", + "PACKAGE_SET": "default", + "CONSOLE_INITIAL_SETUP": "1", + "TEST_TARGET": "ISO" + }, + "version": "*" + }, + "fedora-IoT-dvd_ostree-iso-x86_64-*": { + "arch": "x86_64", + "distri": "fedora", + "flavor": "IoT-dvd_ostree-iso", + "settings": { + "CANNED": "1", + "PACKAGE_SET": "default", + "CONSOLE_INITIAL_SETUP": "1", + "TEST_TARGET": "ISO" + }, + "version": "*" + }, "fedora-KDE-live-iso-x86_64-*": { "arch": "x86_64", "distri": "fedora", @@ -310,6 +334,18 @@ "machine": "uefi", "product": "fedora-Everything-boot-iso-x86_64-*" }, + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": { + "machine": "aarch64", + "product": "fedora-IoT-dvd_ostree-iso-aarch64-*" + }, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": { + "machine": "64bit", + "product": "fedora-IoT-dvd_ostree-iso-x86_64-*" + }, + "fedora-IoT-dvd_ostree-iso-x86_64-*-uefi": { + "machine": "uefi", + "product": "fedora-IoT-dvd_ostree-iso-x86_64-*" + }, "fedora-KDE-live-iso-x86_64-*-64bit": { "machine": "64bit", "product": "fedora-KDE-live-iso-x86_64-*" @@ -411,6 +447,8 @@ }, "base_reboot_unmount": { "profiles": { + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": 20, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": 40, "fedora-KDE-live-iso-x86_64-*-64bit": 50, "fedora-Server-dvd-iso-aarch64-*-aarch64": 40, "fedora-Server-dvd-iso-ppc64le-*-ppc64le": 20, @@ -431,6 +469,8 @@ }, "base_selinux": { "profiles": { + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": 20, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": 40, "fedora-KDE-live-iso-x86_64-*-64bit": 42, "fedora-Server-dvd-iso-aarch64-*-aarch64": 40, "fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40, @@ -451,6 +491,8 @@ }, "base_service_manipulation": { "profiles": { + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": 20, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": 40, "fedora-KDE-live-iso-x86_64-*-64bit": 42, "fedora-Server-dvd-iso-aarch64-*-aarch64": 40, "fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40, @@ -471,6 +513,8 @@ }, "base_services_start": { "profiles": { + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": 40, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": 40, "fedora-KDE-live-iso-x86_64-*-64bit": 42, "fedora-Server-dvd-iso-aarch64-*-aarch64": 40, "fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40, @@ -505,6 +549,8 @@ }, "base_system_logging": { "profiles": { + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": 20, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": 20, "fedora-KDE-live-iso-x86_64-*-64bit": 22, "fedora-Server-dvd-iso-ppc64le-*-ppc64le": 20, "fedora-Server-dvd-iso-x86_64-*-64bit": 20, @@ -819,6 +865,7 @@ }, "install_default": { "profiles": { + "fedora-IoT-dvd_ostree-iso-x86_64-*-uefi": 21, "fedora-Everything-boot-iso-ppc64le-*-ppc64le": 62, "fedora-Everything-boot-iso-x86_64-*-64bit": 10, "fedora-Everything-boot-iso-x86_64-*-uefi": 11, @@ -838,6 +885,8 @@ }, "install_default_upload": { "profiles": { + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": 20, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": 20, "fedora-KDE-live-iso-x86_64-*-64bit": 15, "fedora-Server-dvd-iso-aarch64-*-aarch64": 10, "fedora-Server-dvd-iso-ppc64le-*-ppc64le": 10, @@ -1502,6 +1551,8 @@ }, "release_identification": { "profiles": { + "fedora-IoT-dvd_ostree-iso-aarch64-*-aarch64": 20, + "fedora-IoT-dvd_ostree-iso-x86_64-*-64bit": 20, "fedora-KDE-live-iso-x86_64-*-64bit": 50, "fedora-Server-dvd-iso-ppc64le-*-ppc64le": 50, "fedora-Server-dvd-iso-x86_64-*-64bit": 50, diff --git a/tests/_console_wait_login.pm b/tests/_console_wait_login.pm index e53da856..b40a806b 100644 --- a/tests/_console_wait_login.pm +++ b/tests/_console_wait_login.pm @@ -15,6 +15,16 @@ sub run { $wait_time = 180; } + # handle initial-setup, if we're expecting it (the variable is set + # and this is an install test) + my $testname = get_var("TEST"); + if (get_var("CONSOLE_INITIAL_SETUP") && index($testname, 'install') != -1) { + assert_screen "console_initial_setup", $wait_time; + type_string "q\n"; + type_string "yes\n"; + $wait_time = 180; + } + # Wait for the text login boot_to_login_screen(timeout => $wait_time); diff --git a/tests/_do_install_and_reboot.pm b/tests/_do_install_and_reboot.pm index 5839ebe6..af4d4d14 100644 --- a/tests/_do_install_and_reboot.pm +++ b/tests/_do_install_and_reboot.pm @@ -154,6 +154,12 @@ sub run { # OK, if we're here, we got actions, so head to a console. Switch # to console after liveinst sometimes takes a while, so 30 secs $self->root_console(timeout=>30); + # this is something a couple of actions may need to know + my $mount = "/mnt/sysimage"; + if (get_var("CANNED")) { + # finding the actual host system root is fun for ostree... + $mount = "/mnt/sysimage/ostree/deploy/fedora*/deploy/*.?"; + } if (grep {$_ eq 'consoletty0'} @actions) { # somehow, by this point, localized keyboard layout has been # loaded for this tty, so for French and Arabic at least we @@ -164,20 +170,15 @@ sub run { # in boot messages going to serial console on aarch64, we need # them on tty0. We also need 'quiet' so we don't get kernel # messages, which screw up some needles - assert_script_run 'sed -i -e "s,\(GRUB_CMDLINE_LINUX.*\)\",\1 console=tty0 quiet\",g" /mnt/sysimage/etc/default/grub'; + assert_script_run 'sed -i -e "s,\(GRUB_CMDLINE_LINUX.*\)\",\1 console=tty0 quiet\",g" ' . $mount . '/etc/default/grub'; # regenerate the bootloader config - assert_script_run "chroot /mnt/sysimage grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg"; + assert_script_run "chroot $mount grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg"; } if (grep {$_ eq 'abrt'} @actions) { # Chroot in the newly installed system and switch on ABRT systemwide - assert_script_run "chroot /mnt/sysimage abrt-auto-reporting 1"; + assert_script_run "chroot $mount abrt-auto-reporting 1"; } if (grep {$_ eq 'rootpw'} @actions) { - my $mount = "/mnt/sysimage"; - if (get_var("CANNED")) { - # finding the actual host system root is fun for ostree... - $mount = "/mnt/sysimage/ostree/deploy/fedora/deploy/*.?"; - } my $root_password = get_var("ROOT_PASSWORD") || "weakpassword"; assert_script_run "echo 'root:$root_password' | chpasswd -R $mount"; } diff --git a/tests/os_release.pm b/tests/os_release.pm index 1f5789a1..f2458a38 100644 --- a/tests/os_release.pm +++ b/tests/os_release.pm @@ -34,15 +34,15 @@ sub run { # correct variables to compare the system data with. # First, we know the basic stuff my $id = get_var("DISTRI"); # Should be "fedora" - my $isovar = get_var("ISO"); # Takes the build string for Silverblue variants. + my $isovar = get_var("ISO"); # Takes the build string for canned variants. # Split the ISO variable at "-" and read fields 4 (release version) # and 5 (the build number). - my ($sbver, $sbnum) = (split /-/, $isovar)[4, 5]; + my ($cannedver, $cannednum) = (split /-/, $isovar)[4, 5]; # Get rid of the ".iso" part of the tag. - $sbnum =~ s/\.iso//g; - # Now, we merge the fields into one expression to create the correct Silverblue tag + $cannednum =~ s/\.iso//g; + # Now, we merge the fields into one expression to create the correct canned tag # that will contain both the version number and the build number. - my $silvertag = "$sbver.$sbnum"; + my $cannedtag = "$cannedver.$cannednum"; my $name = ucfirst($id); my $version_id = get_var("VERSION"); # Should be the version number or Rawhide. my $varstr = spell_version_number($version_id); @@ -69,6 +69,7 @@ sub run { CoreOS => ["coreos", "CoreOS"], KDE => ["kde", "KDE Plasma"], Silverblue => ["workstation", "Workstation Edition"], + IoT => ["iot", "IoT Edition"], ); if (exists($variants{$subvariant})) { ($variant_id, $variant) = @{$variants{$subvariant}}; @@ -76,16 +77,18 @@ sub run { } my $version = "$version_id ($varstr)"; - # Version looks differently when the build is a Silverblue. We need to form - # a different string here by using the above createad silvertag. - if ($subvariant eq "Silverblue") { - $version = "$silvertag ($varstr)"; + # Version looks different when the build is canned (because + # rpm-ostree fiddles around with it, documented at + # https://github.com/projectatomic/rpm-ostree/blob/master/docs/manual/treefile.md ) + # We need to form a different string here by using the above created cannedtag. + if (get_var("CANNED")) { + $version = "$cannedtag ($varstr)"; } my $platform_id = "platform:f$version_id"; my $pretty = "$name $version_id ($varstr)"; # Same problem is when testing the PRETTY_NAME. - if ($subvariant eq "Silverblue") { - $pretty = "$name $silvertag ($varstr)"; + if (get_var("CANNED")) { + $pretty = "$name $cannedtag ($varstr)"; } #Now. we can start testing the real values from the installed system.