ktest: Add SCP_TO_TARGET_INSTALL option
Currently the option used to scp both the modules to the target as well as the kernel image are the same (SCP_TO_TARGET). But some embedded boards may require them to be different. The modules may need to be put directly on the board, but the kernel image may need to go to a tftpserver. Add the option SCP_TO_TARGET_INSTALL that will allow the user to change the config so that they may have the modules and image got to different machines. Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
parent
6ca996cc7c
commit
02ad261704
|
@ -46,6 +46,7 @@ my %default = (
|
|||
"DIE_ON_FAILURE" => 1,
|
||||
"SSH_EXEC" => "ssh \$SSH_USER\@\$MACHINE \$SSH_COMMAND",
|
||||
"SCP_TO_TARGET" => "scp \$SRC_FILE \$SSH_USER\@\$MACHINE:\$DST_FILE",
|
||||
"SCP_TO_TARGET_INSTALL" => "\${SCP_TO_TARGET}",
|
||||
"REBOOT" => "ssh \$SSH_USER\@\$MACHINE reboot",
|
||||
"STOP_AFTER_SUCCESS" => 10,
|
||||
"STOP_AFTER_FAILURE" => 60,
|
||||
|
@ -91,6 +92,7 @@ my $powercycle_after_reboot;
|
|||
my $poweroff_after_halt;
|
||||
my $ssh_exec;
|
||||
my $scp_to_target;
|
||||
my $scp_to_target_install;
|
||||
my $power_off;
|
||||
my $grub_menu;
|
||||
my $grub_number;
|
||||
|
@ -243,6 +245,7 @@ my %option_map = (
|
|||
"BUILD_TARGET" => \$build_target,
|
||||
"SSH_EXEC" => \$ssh_exec,
|
||||
"SCP_TO_TARGET" => \$scp_to_target,
|
||||
"SCP_TO_TARGET_INSTALL" => \$scp_to_target_install,
|
||||
"CHECKOUT" => \$checkout,
|
||||
"TARGET_IMAGE" => \$target_image,
|
||||
"LOCALVERSION" => \$localversion,
|
||||
|
@ -1349,8 +1352,7 @@ sub run_ssh {
|
|||
}
|
||||
|
||||
sub run_scp {
|
||||
my ($src, $dst) = @_;
|
||||
my $cp_scp = $scp_to_target;
|
||||
my ($src, $dst, $cp_scp) = @_;
|
||||
|
||||
$cp_scp =~ s/\$SRC_FILE/$src/g;
|
||||
$cp_scp =~ s/\$DST_FILE/$dst/g;
|
||||
|
@ -1358,6 +1360,22 @@ sub run_scp {
|
|||
return run_command "$cp_scp";
|
||||
}
|
||||
|
||||
sub run_scp_install {
|
||||
my ($src, $dst) = @_;
|
||||
|
||||
my $cp_scp = $scp_to_target_install;
|
||||
|
||||
return run_scp($src, $dst, $cp_scp);
|
||||
}
|
||||
|
||||
sub run_scp_mod {
|
||||
my ($src, $dst) = @_;
|
||||
|
||||
my $cp_scp = $scp_to_target;
|
||||
|
||||
return run_scp($src, $dst, $cp_scp);
|
||||
}
|
||||
|
||||
sub get_grub_index {
|
||||
|
||||
if ($reboot_type ne "grub") {
|
||||
|
@ -1630,7 +1648,7 @@ sub install {
|
|||
|
||||
my $cp_target = eval_kernel_version $target_image;
|
||||
|
||||
run_scp "$outputdir/$build_target", "$cp_target" or
|
||||
run_scp_install "$outputdir/$build_target", "$cp_target" or
|
||||
dodie "failed to copy image";
|
||||
|
||||
my $install_mods = 0;
|
||||
|
@ -1665,7 +1683,7 @@ sub install {
|
|||
run_command "cd $tmpdir && tar -cjf $modtar lib/modules/$version" or
|
||||
dodie "making tarball";
|
||||
|
||||
run_scp "$tmpdir/$modtar", "/tmp" or
|
||||
run_scp_mod "$tmpdir/$modtar", "/tmp" or
|
||||
dodie "failed to copy modules";
|
||||
|
||||
unlink "$tmpdir/$modtar";
|
||||
|
|
|
@ -710,10 +710,18 @@
|
|||
# The variables SSH_USER, MACHINE and SSH_COMMAND are defined
|
||||
#SSH_EXEC = ssh $SSH_USER@$MACHINE $SSH_COMMAND";
|
||||
|
||||
# The way to copy a file to the target
|
||||
# The way to copy a file to the target (install and modules)
|
||||
# (default scp $SRC_FILE $SSH_USER@$MACHINE:$DST_FILE)
|
||||
# The variables SSH_USER, MACHINE, SRC_FILE and DST_FILE are defined.
|
||||
#SCP_TO_TARGET = scp $SRC_FILE $SSH_USER@$MACHINE:$DST_FILE
|
||||
# The variables SSH_USER, MACHINE are defined by the config
|
||||
# SRC_FILE and DST_FILE are ktest internal variables and
|
||||
# should only have '$' and not the '${}' notation.
|
||||
# (default scp $SRC_FILE ${SSH_USER}@${MACHINE}:$DST_FILE)
|
||||
#SCP_TO_TARGET = echo skip scp for $SRC_FILE $DST_FILE
|
||||
|
||||
# If install needs to be different than modules, then this
|
||||
# option will override the SCP_TO_TARGET for installation.
|
||||
# (default ${SCP_TO_TARGET} )
|
||||
#SCP_TO_TARGET_INSTALL = scp $SRC_FILE tftp@tftpserver:$DST_FILE
|
||||
|
||||
# The nice way to reboot the target
|
||||
# (default ssh $SSH_USER@$MACHINE reboot)
|
||||
|
|
Loading…
Reference in a new issue