From owner-svn-src-user@FreeBSD.ORG Mon Sep 24 15:15:41 2012 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E25D1106566C; Mon, 24 Sep 2012 15:15:41 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id CF1788FC0A; Mon, 24 Sep 2012 15:15:41 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q8OFFfgg042492; Mon, 24 Sep 2012 15:15:41 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q8OFFfsR042490; Mon, 24 Sep 2012 15:15:41 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201209241515.q8OFFfsR042490@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Mon, 24 Sep 2012 15:15:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r240888 - user/des/tinderbox X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Sep 2012 15:15:42 -0000 Author: des Date: Mon Sep 24 15:15:41 2012 New Revision: 240888 URL: http://svn.freebsd.org/changeset/base/240888 Log: If svn checkout or update fails, retry up to three times (four attempts total) at increasing intervals before giving up. When svn checkout or update succeeds, use svnversion to retrieve the version number and log it so it appears in the summary. Modified: user/des/tinderbox/tinderbox.pl Modified: user/des/tinderbox/tinderbox.pl ============================================================================== --- user/des/tinderbox/tinderbox.pl Mon Sep 24 15:02:31 2012 (r240887) +++ user/des/tinderbox/tinderbox.pl Mon Sep 24 15:15:41 2012 (r240888) @@ -95,6 +95,13 @@ my @svncmds = ( '/usr/local/bin/svn', ); +my @svnversioncmds = ( + '/usr/bin/svnversion', + '/usr/local/bin/svnversion', +); + +my $svnattempts = 4; + BEGIN { ($starttime) = POSIX::times(); } @@ -598,8 +605,18 @@ MAIN:{ } else { push(@svnargs, "checkout", $svnbase, $srcdir); } - spawn($svncmd, @svnargs) - or error("unable to check out the source tree"); + for (0..$svnattempts) { + last if spawn($svncmd, @svnargs); + error("unable to check out the source tree") + if ($_ == $svnattempts); + my $delay = 30 * ($_ + 1); + warning("sleeping $delay s and retrying..."); + sleep($delay); + } + my $svnversioncmd = [grep({ -x } @svnversioncmds)]->[0] + or error("unable to locate svnversion binary"); + my $svnversion = `$svnversioncmd $srcdir`; + message("At svn revision $svnversion"); } elsif (defined($cvsup)) { logstage("cvsupping the source tree"); open(my $fh, ">", "$sandbox/supfile")