X-Git-Url: https://git.exim.org/buildfarm-client.git/blobdiff_plain/d105ee7b8bc1fd73a0a33fe11c33cf126e11223c..e6febaa33d14890c8f98eb9671b9534f719e5b75:/run_build diff --git a/run_build b/run_build index 952e4a9..2212415 100755 --- a/run_build +++ b/run_build @@ -32,7 +32,7 @@ See accompanying License file for license details ################################################### -use vars qw($VERSION); $VERSION = 'REL_0.1'; +our $VERSION = 'REL_0.1'; use strict; use warnings; @@ -43,6 +43,7 @@ use File::Copy; use File::Basename; use File::Temp; use File::Spec; +use FindBin qw'$Bin'; use IO::Handle; use POSIX qw(:signal_h strftime); use Data::Dumper; @@ -82,6 +83,8 @@ if ($0 =~ /(.*)\.pl$/) { exec $1, @ARGV; } +die "$0: please use an umask of 022\n" + if umask > 022; my %module_hooks; my $orig_dir = getcwd(); @@ -152,6 +155,18 @@ print_help() if ($help); # process config file # require $buildconf; +#use Data::Dumper; +#die Dumper \%EximBuild::conf; + +# some basic checks +die "$0: need read/write permissions on '$EximBuild::conf{global_lock_dir}': $!\n" + if not -r -w $EximBuild::conf{global_lock_dir}; + +# Does not seem to be necessary +#die "$0: permissions on '$EximBuild::conf{build_root}' should be >= 0775\n" +# if -d $EximBuild::conf{build_root} +# and ((stat $EximBuild::conf{build_root})[2] & 0775) != 0775; + # get the config data into some local variables my ( @@ -1430,7 +1445,9 @@ sub get_script_config_dump delete $conf->{secret}; if ($conf->{scm} eq 'git') { - chomp($conf->{farm}{revision} = `git describe --tags --always --dirty=+`); + chomp($conf->{farm}{revision} = `git -C $Bin describe --tags --always --dirty=+`); + $conf->{farm}{cwd} = getcwd(); + $conf->{farm}{bindir} = $Bin; } $Data::Dumper::Sortkeys = 1;