Do-compile:

  Added support for MD5 verification of file transfers
parent 9adba28a
...@@ -202,6 +202,17 @@ if ($opt_stage == 0) ...@@ -202,6 +202,17 @@ if ($opt_stage == 0)
safe_cd($host); safe_cd($host);
if ($opt_stage == 0 && ! $opt_use_old_distribution) if ($opt_stage == 0 && ! $opt_use_old_distribution)
{ {
$md5_result= safe_system("my_md5sum -c ${opt_distribution}.md5");
if ($md5_result != 0)
{
abort("MD5 failed for $opt_distribution!");
}
else
{
info("SUCCESS: MD5 checks for $opt_distribution");
}
safe_system("gunzip < $opt_distribution | $tar xf -"); safe_system("gunzip < $opt_distribution | $tar xf -");
# Fix file times; This is needed because the time for files may be # Fix file times; This is needed because the time for files may be
...@@ -320,6 +331,9 @@ if ($opt_stage <= 3) ...@@ -320,6 +331,9 @@ if ($opt_stage <= 3)
$tar_file=<$pwd/$host/mysql*.t*gz>; $tar_file=<$pwd/$host/mysql*.t*gz>;
abort ("Could not find tarball!") unless ($tar_file); abort ("Could not find tarball!") unless ($tar_file);
# Generate the MD5 for the binary distribution
safe_system("my_md5sum $tar_file > ${tar_file}.md5}");
# #
# Unpack the binary distribution # Unpack the binary distribution
# #
...@@ -633,7 +647,10 @@ sub safe_system ...@@ -633,7 +647,10 @@ sub safe_system
my($com,$res)=@_; my($com,$res)=@_;
print LOG "$com\n"; print LOG "$com\n";
print "$host: $com\n" if ($opt_debug); print "$host: $com\n" if ($opt_debug);
system("$com >> $log 2>&1") && abort("error: Couldn't execute command, error: " . ($? / 256)); my $result= system("$com >> $log 2>&1");
abort("error: Couldn't execute command, error: " . ($? / 256)) unless $result == 0;
return $result;
} }
sub check_system sub check_system
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment