From d73a9317048d4758d863c482e5dcdaf7c54790e1 Mon Sep 17 00:00:00 2001 From: espie Date: Tue, 6 Nov 2012 08:26:29 +0000 Subject: [PATCH] don't mix up wait_timeout and waiting_timeout, as noticed by naddy@. re-enable wait_timeout on localhost temporarily (should be done in another way, most probably by checking whether repo is on nfs, we can steal code from VStat.pm) pass umask through ssh. This took us long enough to figure out, and it's considerably simpler than tweaking every login class once again. --- infrastructure/bin/dpb | 4 ++-- infrastructure/lib/DPB/Core.pm | 9 +++++---- infrastructure/lib/DPB/Core/Distant.pm | 5 +++-- infrastructure/man/man1/dpb.1 | 8 ++++---- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/infrastructure/bin/dpb b/infrastructure/bin/dpb index 5504dcc7328..ea033873a0c 100755 --- a/infrastructure/bin/dpb +++ b/infrastructure/bin/dpb @@ -1,7 +1,7 @@ #! /usr/bin/perl # ex:ts=8 sw=4: -# $OpenBSD: dpb,v 1.59 2012/10/13 09:00:02 espie Exp $ +# $OpenBSD: dpb,v 1.60 2012/11/06 08:26:29 espie Exp $ # # Copyright (c) 2010 Marc Espie # @@ -263,7 +263,7 @@ sub start_cores my $default_prop = { junk => 250, parallel => '/2', - waiting_timeout => 600, + wait_timeout => 600, }; if ($state->{config}) { diff --git a/infrastructure/lib/DPB/Core.pm b/infrastructure/lib/DPB/Core.pm index cbfdae562bc..ac7d9345228 100644 --- a/infrastructure/lib/DPB/Core.pm +++ b/infrastructure/lib/DPB/Core.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Core.pm,v 1.19 2012/10/13 09:06:55 espie Exp $ +# $OpenBSD: Core.pm,v 1.20 2012/11/06 08:26:29 espie Exp $ # # Copyright (c) 2010 Marc Espie # @@ -27,12 +27,13 @@ sub new my ($class, $name, $prop) = @_; $prop //= {}; $prop->{sf} //= 1; + $prop->{umask} //= sprintf("0%o", umask); if (defined $prop->{stuck}) { $prop->{stuck_timeout} = $prop->{stuck} * $prop->{sf}; } - if ($class->name_is_localhost($name)) { - delete $prop->{waiting_timeout}; - } +# if ($class->name_is_localhost($name)) { +# delete $prop->{wait_timeout}; +# } $hosts->{$name} //= bless {host => $name, prop => $prop }, $class; } diff --git a/infrastructure/lib/DPB/Core/Distant.pm b/infrastructure/lib/DPB/Core/Distant.pm index e7b4bd22946..5e4b2a3b753 100644 --- a/infrastructure/lib/DPB/Core/Distant.pm +++ b/infrastructure/lib/DPB/Core/Distant.pm @@ -1,5 +1,5 @@ # ex:ts=8 sw=4: -# $OpenBSD: Distant.pm,v 1.6 2012/10/13 08:47:32 espie Exp $ +# $OpenBSD: Distant.pm,v 1.7 2012/11/06 08:26:29 espie Exp $ # # Copyright (c) 2010 Marc Espie # @@ -84,7 +84,8 @@ sub exec if ($self->{dir}) { $cmd = "cd $self->{dir} && $cmd"; } - $self->_run($cmd); + my $umask = $self->{master}{host}{prop}{umask}; + $self->_run("umask $umask && $cmd"); } package DPB::Task::SshMaster; diff --git a/infrastructure/man/man1/dpb.1 b/infrastructure/man/man1/dpb.1 index 7b9220c0a68..f719cc1c685 100644 --- a/infrastructure/man/man1/dpb.1 +++ b/infrastructure/man/man1/dpb.1 @@ -1,4 +1,4 @@ -.\" $OpenBSD: dpb.1,v 1.48 2012/10/27 11:17:56 espie Exp $ +.\" $OpenBSD: dpb.1,v 1.49 2012/11/06 08:26:29 espie Exp $ .\" .\" Copyright (c) 2010 Marc Espie .\" @@ -14,7 +14,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: October 27 2012 $ +.Dd $Mdocdate: November 6 2012 $ .Dt DPB 1 .Os .Sh NAME @@ -205,11 +205,11 @@ This can be instead set on a per-core basis as the .Sq stuck property. Note that this will always be divided by the core's speed factor. -.It Ar WAITING_TIMEOUT +.It Ar WAIT_TIMEOUT Timeout (in seconds) to wait before giving up on NFS packages showing up. Set to 0 to disable. Defaults to 10 minutes. -Disabled on localhost. +.\" Disabled on localhost. .El .It Fl e The listing job is extra and won't be given back to the pool when it's