git://git.exim.org
/
buildfarm-client.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix auto_update. (disabled auto_update was ignored)
[buildfarm-client.git]
/
run_build
diff --git
a/run_build
b/run_build
index fe3ea9294d4af1579228297f9c3e9b44bf74b369..a476bdbf7c675b8cb408df1486a6a529ac157507 100755
(executable)
--- a/
run_build
+++ b/
run_build
@@
-36,6
+36,7
@@
our $VERSION = 'REL_0.1';
use strict;
use warnings;
use strict;
use warnings;
+use 5.010;
use Config;
use Fcntl qw(:flock :seek);
use File::Path;
use Config;
use Fcntl qw(:flock :seek);
use File::Path;
@@
-43,7
+44,7
@@
use File::Copy;
use File::Basename;
use File::Temp;
use File::Spec;
use File::Basename;
use File::Temp;
use File::Spec;
-use FindBin qw'$Bin';
+use FindBin qw'$
Real
Bin';
use IO::Handle;
use POSIX qw(:signal_h strftime);
use Data::Dumper;
use IO::Handle;
use POSIX qw(:signal_h strftime);
use Data::Dumper;
@@
-71,6
+72,7
@@
BEGIN
: 'xxxxxx'
);
}
: 'xxxxxx'
);
}
+ push @INC, getcwd();
}
use EximBuild::SCM;
}
use EximBuild::SCM;
@@
-83,14
+85,13
@@
if ($0 =~ /(.*)\.pl$/) {
exec $1, @ARGV;
}
exec $1, @ARGV;
}
-die "$0: please use an umask of 022\n"
- if umask > 022;
+if (umask != 022) {
+ umask 022;
+ say "$0: forced umask to 022" if -t;
+}
my %module_hooks;
my $orig_dir = getcwd();
my %module_hooks;
my $orig_dir = getcwd();
-push @INC, $orig_dir;
-
-umask 022;
# make sure we exit nicely on any normal interrupt
# so the cleanup handler gets called.
# make sure we exit nicely on any normal interrupt
# so the cleanup handler gets called.
@@
-1036,14
+1037,11
@@
sub make_test
print time_str(),"running make test ...\n" if $verbose;
my $tests_range = $EximBuild::conf{range_num_tests} || "1 4";
my @makeout;
print time_str(),"running make test ...\n" if $verbose;
my $tests_range = $EximBuild::conf{range_num_tests} || "1 4";
my @makeout;
- @makeout =`(cd $exim/test
- autoconf && ./configure && $make )2>&1 `;
+ @makeout =`(cd $exim/test && ./configure && $make )2>&1 `;
my $status = $? >>8;
unless($status)
{
my $status = $? >>8;
unless($status)
{
- my @tmp = `(WORKDIR=\$PWD
- cd $exim/test
- ./runtest \$WORKDIR/$exim/src/build-*/exim -CONTINUE $tests_range )2>&1`;
+ my @tmp = `(cd $exim/test && ./runtest -CONTINUE $tests_range )2>&1`;
$status = $? >>8;
push @makeout, @tmp;
# Prepend the failed summary log outputs for ease of reading
$status = $? >>8;
push @makeout, @tmp;
# Prepend the failed summary log outputs for ease of reading
@@
-1057,10
+1055,13
@@
sub make_test
}
}
writelog('test',\@makeout);
}
}
writelog('test',\@makeout);
+ send_result('Test',$status,\@makeout) if $status;
+
+ @makeout = `cat $exim/test/run-summary.log`;
+ writelog('test-results',\@makeout);
+
print "======== make test logs ===========\n",@makeout
if ($verbose > 1);
print "======== make test logs ===========\n",@makeout
if ($verbose > 1);
-
- send_result('Test',$status,\@makeout) if $status;
$steps_completed .= " Test";
}
$steps_completed .= " Test";
}
@@
-1165,7
+1166,8
@@
sub configure
@tmp = `echo "Hardcoded Exim user info:"; id $exim_user
cd $exim && perl -pi -e 's/^EXIM_USER=.*/EXIM_USER=$exim_user/' $local_conf`;
push @confout, @tmp;
@tmp = `echo "Hardcoded Exim user info:"; id $exim_user
cd $exim && perl -pi -e 's/^EXIM_USER=.*/EXIM_USER=$exim_user/' $local_conf`;
push @confout, @tmp;
- my $me = `whoami`; chomp $me;
+ #my $me = `whoami`; chomp $me;
+ my $me = getpwuid($>) // die "$0: getpwuid($>): $!\n";
@tmp = `echo "Build Farm user info:"; id $me
cd $exim && perl -pi -e 's/^# CONFIGURE_OWNER=\$/CONFIGURE_OWNER=$me/' $local_conf`;
push @confout, @tmp;
@tmp = `echo "Build Farm user info:"; id $me
cd $exim && perl -pi -e 's/^# CONFIGURE_OWNER=\$/CONFIGURE_OWNER=$me/' $local_conf`;
push @confout, @tmp;
@@
-1452,9
+1454,10
@@
sub get_script_config_dump
delete $conf->{secret};
if ($conf->{scm} eq 'git') {
delete $conf->{secret};
if ($conf->{scm} eq 'git') {
- chomp($conf->{farm}{revision} = `
git -C $Bin
describe --tags --always --dirty=+`);
+ chomp($conf->{farm}{revision} = `
cd $RealBin && git
describe --tags --always --dirty=+`);
$conf->{farm}{cwd} = getcwd();
$conf->{farm}{cwd} = getcwd();
- $conf->{farm}{bindir} = $Bin;
+ $conf->{farm}{bindir} = $RealBin;
+ $conf->{farm}{perl} = $^V;
}
$Data::Dumper::Sortkeys = 1;
}
$Data::Dumper::Sortkeys = 1;