Module: tools Branch: master Commit: d6dc27434f5d1b480be3238ca525d6ed766571e9 URL: http://source.winehq.org/git/tools.git/?a=commit;h=d6dc27434f5d1b480be3238ca...
Author: Alexandre Julliard julliard@winehq.org Date: Tue May 27 18:15:55 2008 +0200
winetest: Enforce that the build id is a valid commit SHA1.
Get rid of the winetest.builds file.
---
winetest/README | 8 +------- winetest/dissect | 22 ++++++++-------------- winetest/service.cgi | 1 - winetest/winetest.conf | 1 - 4 files changed, 9 insertions(+), 23 deletions(-)
diff --git a/winetest/README b/winetest/README index 2a0215d..49ca6d0 100644 --- a/winetest/README +++ b/winetest/README @@ -14,7 +14,6 @@ the destination for that and presents the results in an ordered form. Configuration file, sets the following variables: $queuedir - queue incoming submissions here $datadir - processed data is served from here -$builds - list of allowed build tags
* winetest.cgi
@@ -35,8 +34,7 @@ at processing this report. If everything goes flawlessly the whole directory is renamed (based on the information learned in the process) to $datadir/BUILD/VERSION_TAG_DIGIT where DIGIT is for resolving name clashes and $datadir/BUILD/outdated is created to signal the change in -the given build. Allowed builds are those in $builds. See also the -head of the file. +the given build. See also the head of the file.
* gather
@@ -50,9 +48,5 @@ removes the outdated file. See also the head of the file.
These files are referenced by the index.html files created by gather.
-* winetest.builds - -The file to have $builds point to. -
Ferenc Wagner wferi@afavant.elte.hu, Wed, 18 Jan 2004 18:18:05 +0100 diff --git a/winetest/dissect b/winetest/dissect index 6293c1c..bbfe982 100755 --- a/winetest/dissect +++ b/winetest/dissect @@ -2,8 +2,7 @@ # # Searches for $queuedir/rep*/report.txt-s, preprocesses and moves # them into the appropriate $datadir/build/version directories, and -# creates $datadir/build/outdated. Allowed builds are read from -# $builds. Each generated file has .txt extension. +# creates $datadir/build/outdated. Each generated file has .txt extension. # # Files: winetest.conf # @@ -29,7 +28,7 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
use strict; -use vars qw/$builds $queuedir $datadir $maxmult $maxfilesize/; +use vars qw/$gitdir $queuedir $datadir $maxmult $maxfilesize/; require "winetest.conf";
my $name0=$0; @@ -44,6 +43,8 @@ my $summary_version=4; use File::Temp qw/tempdir/; use Errno qw/ENOTEMPTY/;
+$ENV{GIT_DIR} = $gitdir; + my ($report, $tmpdir);
sub mydie(@) { @@ -76,17 +77,10 @@ print SUM "Version $summary_version\n"; $_ = <IN>; /^Tests from build ([-.0-9a-zA-Z]+)\r?$/ or mydie "no build header: $_"; my $testbuild = $1; -if (!open BUILDS, "<$builds") { - print STDERR "$name0:error: unable to open '$builds' for reading: $!\n"; - exit 3; -} -while (<BUILDS>) { - next if /^#/; - chomp; - last if $testbuild =~ "^$_$"; -} -close BUILDS; -defined $_ or mydie "$1 not in $builds\n"; +$testbuild =~ /^[0-9a-f]{40}$/ or mydie "not a valid commit id $testbuild"; +my $commit = `git rev-parse --verify $testbuild^0 2>/dev/null`; +chomp $commit; +$testbuild eq $commit or mydie "not an existing commit $testbuild";
$_ = <IN>; /^Archive: (.*?)\r?$/ or mydie "no archive line: $_"; diff --git a/winetest/service.cgi b/winetest/service.cgi index 14c79b7..9f34633 100755 --- a/winetest/service.cgi +++ b/winetest/service.cgi @@ -210,7 +210,6 @@ sub releases_make { # all is good, store the cookie, and URL now, this activetes the release &write_file(">$base_path/$name.cookie", &md5sum($cookie)); &write_file(">$base_path/$name.url", $url); - &write_file(">>$data_root/$program.builds", $build);
return "OK"; } diff --git a/winetest/winetest.conf b/winetest/winetest.conf index e1b0297..b240ac0 100644 --- a/winetest/winetest.conf +++ b/winetest/winetest.conf @@ -1,7 +1,6 @@ # Hey Emacs! This is a -*-cperl-*- file!
$root = "/home/winehq/opt/winetest"; -$builds = "$root/winetest.builds"; # These two below should be on the same filesystem $queuedir = "$root/queue"; $datadir = "$root/data";