mirror of
https://github.com/rocky-linux/os-autoinst-distri-rocky.git
synced 2024-11-22 13:11:26 +00:00
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 <awilliam@redhat.com>
This commit is contained in:
parent
b09936ba0a
commit
0f8f6082eb
15
needles/anaconda/identification/version_31-iot-20200213.json
Normal file
15
needles/anaconda/identification/version_31-iot-20200213.json
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"ypos": 13,
|
||||||
|
"height": 20,
|
||||||
|
"width": 124,
|
||||||
|
"type": "match",
|
||||||
|
"xpos": 764
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"version_31_ident"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/anaconda/identification/version_31-iot-20200213.png
Normal file
BIN
needles/anaconda/identification/version_31-iot-20200213.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 62 KiB |
@ -133,6 +133,30 @@
|
|||||||
},
|
},
|
||||||
"version": "*"
|
"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-*": {
|
"fedora-KDE-live-iso-x86_64-*": {
|
||||||
"arch": "x86_64",
|
"arch": "x86_64",
|
||||||
"distri": "fedora",
|
"distri": "fedora",
|
||||||
@ -310,6 +334,18 @@
|
|||||||
"machine": "uefi",
|
"machine": "uefi",
|
||||||
"product": "fedora-Everything-boot-iso-x86_64-*"
|
"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": {
|
"fedora-KDE-live-iso-x86_64-*-64bit": {
|
||||||
"machine": "64bit",
|
"machine": "64bit",
|
||||||
"product": "fedora-KDE-live-iso-x86_64-*"
|
"product": "fedora-KDE-live-iso-x86_64-*"
|
||||||
@ -411,6 +447,8 @@
|
|||||||
},
|
},
|
||||||
"base_reboot_unmount": {
|
"base_reboot_unmount": {
|
||||||
"profiles": {
|
"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-KDE-live-iso-x86_64-*-64bit": 50,
|
||||||
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
||||||
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 20,
|
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 20,
|
||||||
@ -431,6 +469,8 @@
|
|||||||
},
|
},
|
||||||
"base_selinux": {
|
"base_selinux": {
|
||||||
"profiles": {
|
"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-KDE-live-iso-x86_64-*-64bit": 42,
|
||||||
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
||||||
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40,
|
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40,
|
||||||
@ -451,6 +491,8 @@
|
|||||||
},
|
},
|
||||||
"base_service_manipulation": {
|
"base_service_manipulation": {
|
||||||
"profiles": {
|
"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-KDE-live-iso-x86_64-*-64bit": 42,
|
||||||
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
||||||
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40,
|
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40,
|
||||||
@ -471,6 +513,8 @@
|
|||||||
},
|
},
|
||||||
"base_services_start": {
|
"base_services_start": {
|
||||||
"profiles": {
|
"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-KDE-live-iso-x86_64-*-64bit": 42,
|
||||||
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
"fedora-Server-dvd-iso-aarch64-*-aarch64": 40,
|
||||||
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40,
|
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 40,
|
||||||
@ -505,6 +549,8 @@
|
|||||||
},
|
},
|
||||||
"base_system_logging": {
|
"base_system_logging": {
|
||||||
"profiles": {
|
"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-KDE-live-iso-x86_64-*-64bit": 22,
|
||||||
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 20,
|
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 20,
|
||||||
"fedora-Server-dvd-iso-x86_64-*-64bit": 20,
|
"fedora-Server-dvd-iso-x86_64-*-64bit": 20,
|
||||||
@ -819,6 +865,7 @@
|
|||||||
},
|
},
|
||||||
"install_default": {
|
"install_default": {
|
||||||
"profiles": {
|
"profiles": {
|
||||||
|
"fedora-IoT-dvd_ostree-iso-x86_64-*-uefi": 21,
|
||||||
"fedora-Everything-boot-iso-ppc64le-*-ppc64le": 62,
|
"fedora-Everything-boot-iso-ppc64le-*-ppc64le": 62,
|
||||||
"fedora-Everything-boot-iso-x86_64-*-64bit": 10,
|
"fedora-Everything-boot-iso-x86_64-*-64bit": 10,
|
||||||
"fedora-Everything-boot-iso-x86_64-*-uefi": 11,
|
"fedora-Everything-boot-iso-x86_64-*-uefi": 11,
|
||||||
@ -838,6 +885,8 @@
|
|||||||
},
|
},
|
||||||
"install_default_upload": {
|
"install_default_upload": {
|
||||||
"profiles": {
|
"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-KDE-live-iso-x86_64-*-64bit": 15,
|
||||||
"fedora-Server-dvd-iso-aarch64-*-aarch64": 10,
|
"fedora-Server-dvd-iso-aarch64-*-aarch64": 10,
|
||||||
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 10,
|
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 10,
|
||||||
@ -1502,6 +1551,8 @@
|
|||||||
},
|
},
|
||||||
"release_identification": {
|
"release_identification": {
|
||||||
"profiles": {
|
"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-KDE-live-iso-x86_64-*-64bit": 50,
|
||||||
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 50,
|
"fedora-Server-dvd-iso-ppc64le-*-ppc64le": 50,
|
||||||
"fedora-Server-dvd-iso-x86_64-*-64bit": 50,
|
"fedora-Server-dvd-iso-x86_64-*-64bit": 50,
|
||||||
|
@ -15,6 +15,16 @@ sub run {
|
|||||||
$wait_time = 180;
|
$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
|
# Wait for the text login
|
||||||
boot_to_login_screen(timeout => $wait_time);
|
boot_to_login_screen(timeout => $wait_time);
|
||||||
|
|
||||||
|
@ -154,6 +154,12 @@ sub run {
|
|||||||
# OK, if we're here, we got actions, so head to a console. Switch
|
# 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
|
# to console after liveinst sometimes takes a while, so 30 secs
|
||||||
$self->root_console(timeout=>30);
|
$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) {
|
if (grep {$_ eq 'consoletty0'} @actions) {
|
||||||
# somehow, by this point, localized keyboard layout has been
|
# somehow, by this point, localized keyboard layout has been
|
||||||
# loaded for this tty, so for French and Arabic at least we
|
# 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
|
# in boot messages going to serial console on aarch64, we need
|
||||||
# them on tty0. We also need 'quiet' so we don't get kernel
|
# them on tty0. We also need 'quiet' so we don't get kernel
|
||||||
# messages, which screw up some needles
|
# 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
|
# 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) {
|
if (grep {$_ eq 'abrt'} @actions) {
|
||||||
# Chroot in the newly installed system and switch on ABRT systemwide
|
# 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) {
|
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";
|
my $root_password = get_var("ROOT_PASSWORD") || "weakpassword";
|
||||||
assert_script_run "echo 'root:$root_password' | chpasswd -R $mount";
|
assert_script_run "echo 'root:$root_password' | chpasswd -R $mount";
|
||||||
}
|
}
|
||||||
|
@ -34,15 +34,15 @@ sub run {
|
|||||||
# correct variables to compare the system data with.
|
# correct variables to compare the system data with.
|
||||||
# First, we know the basic stuff
|
# First, we know the basic stuff
|
||||||
my $id = get_var("DISTRI"); # Should be "fedora"
|
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)
|
# Split the ISO variable at "-" and read fields 4 (release version)
|
||||||
# and 5 (the build number).
|
# 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.
|
# Get rid of the ".iso" part of the tag.
|
||||||
$sbnum =~ s/\.iso//g;
|
$cannednum =~ s/\.iso//g;
|
||||||
# Now, we merge the fields into one expression to create the correct Silverblue tag
|
# 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.
|
# that will contain both the version number and the build number.
|
||||||
my $silvertag = "$sbver.$sbnum";
|
my $cannedtag = "$cannedver.$cannednum";
|
||||||
my $name = ucfirst($id);
|
my $name = ucfirst($id);
|
||||||
my $version_id = get_var("VERSION"); # Should be the version number or Rawhide.
|
my $version_id = get_var("VERSION"); # Should be the version number or Rawhide.
|
||||||
my $varstr = spell_version_number($version_id);
|
my $varstr = spell_version_number($version_id);
|
||||||
@ -69,6 +69,7 @@ sub run {
|
|||||||
CoreOS => ["coreos", "CoreOS"],
|
CoreOS => ["coreos", "CoreOS"],
|
||||||
KDE => ["kde", "KDE Plasma"],
|
KDE => ["kde", "KDE Plasma"],
|
||||||
Silverblue => ["workstation", "Workstation Edition"],
|
Silverblue => ["workstation", "Workstation Edition"],
|
||||||
|
IoT => ["iot", "IoT Edition"],
|
||||||
);
|
);
|
||||||
if (exists($variants{$subvariant})) {
|
if (exists($variants{$subvariant})) {
|
||||||
($variant_id, $variant) = @{$variants{$subvariant}};
|
($variant_id, $variant) = @{$variants{$subvariant}};
|
||||||
@ -76,16 +77,18 @@ sub run {
|
|||||||
}
|
}
|
||||||
|
|
||||||
my $version = "$version_id ($varstr)";
|
my $version = "$version_id ($varstr)";
|
||||||
# Version looks differently when the build is a Silverblue. We need to form
|
# Version looks different when the build is canned (because
|
||||||
# a different string here by using the above createad silvertag.
|
# rpm-ostree fiddles around with it, documented at
|
||||||
if ($subvariant eq "Silverblue") {
|
# https://github.com/projectatomic/rpm-ostree/blob/master/docs/manual/treefile.md )
|
||||||
$version = "$silvertag ($varstr)";
|
# 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 $platform_id = "platform:f$version_id";
|
||||||
my $pretty = "$name $version_id ($varstr)";
|
my $pretty = "$name $version_id ($varstr)";
|
||||||
# Same problem is when testing the PRETTY_NAME.
|
# Same problem is when testing the PRETTY_NAME.
|
||||||
if ($subvariant eq "Silverblue") {
|
if (get_var("CANNED")) {
|
||||||
$pretty = "$name $silvertag ($varstr)";
|
$pretty = "$name $cannedtag ($varstr)";
|
||||||
}
|
}
|
||||||
|
|
||||||
#Now. we can start testing the real values from the installed system.
|
#Now. we can start testing the real values from the installed system.
|
||||||
|
Loading…
Reference in New Issue
Block a user