ktest: Add POST_INSTALL to allow initrds to be created

Add a POST_INSTALL option that runs after the build and install
but before rebooting to the test kernel. This alls the user to
run a script that will install an initrd (or anything else that may
be special) before booting.

An environment variable KERNEL_VERSION is set.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
Steven Rostedt 2010-11-02 14:58:33 -04:00 committed by Steven Rostedt
parent a75fececff
commit 8b37ca8cac
2 changed files with 16 additions and 0 deletions

View File

@ -58,6 +58,7 @@ my $grub_menu;
my $grub_number;
my $target;
my $make;
my $post_install;
my $noclean;
my $minconfig;
my $addconfig;
@ -489,6 +490,15 @@ sub install {
dodie "failed to tar modules";
run_command "ssh $target rm -f /tmp/$modtar";
return if (!defined($post_install));
my $save_env = $ENV{KERNEL_VERSION};
$ENV{KERNEL_VERSION} = $version;
run_command "$post_install";
$ENV{KERNEL_VERSION} = $save_env;
}
sub check_buildlog {
@ -1055,6 +1065,7 @@ for (my $i = 1; $i <= $opt{"NUM_TESTS"}; $i++) {
$addconfig = set_test_option("ADD_CONFIG", $i);
$reboot_type = set_test_option("REBOOT_TYPE", $i);
$grub_menu = set_test_option("GRUB_MENU", $i);
$post_install = set_test_option("POST_INSTALL", $i);
$reboot_script = set_test_option("REBOOT_SCRIPT", $i);
$reboot_on_error = set_test_option("REBOOT_ON_ERROR", $i);
$poweroff_on_error = set_test_option("POWEROFF_ON_ERROR", $i);

View File

@ -93,6 +93,11 @@
# If you are building a 32bit x86 on a 64 bit host
#MAKE_CMD = CC=i386-gcc AS=i386-as make ARCH=i386
# If you need an initrd, you can add a script or code here to install
# it. The environment variable KERNEL_VERSION will be set to the
# kernel version that is used.
#POST_INSTALL = ssh user@target /sbin/mkinitrd --allow-missing -f /boot/initramfs-test.img $KERNEL_VERSION
# Way to reboot the box to the test kernel.
# Only valid options so far are "grub" and "script"
# (default grub)