Module: tools Branch: master Commit: c30f9cb730189d8a1ba07e77973bd173d401a888 URL: https://source.winehq.org/git/tools.git/?a=commit;h=c30f9cb730189d8a1ba07e77...
Author: Francois Gouget fgouget@codeweavers.com Date: Mon Sep 16 15:32:13 2019 +0200
testbot/Reconfig: Clone the Wine source repository if it is missing.
This simplifies setting up a new build VM. Also trace the git commands.
Signed-off-by: Francois Gouget fgouget@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
testbot/lib/Build/Utils.pm | 14 +++++++++++--- testbot/lib/WineTestBot/Config.pm | 8 ++++++-- 2 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/testbot/lib/Build/Utils.pm b/testbot/lib/Build/Utils.pm index 0225392..57a5f4b 100644 --- a/testbot/lib/Build/Utils.pm +++ b/testbot/lib/Build/Utils.pm @@ -79,11 +79,19 @@ sub GitPull($) { my ($Dir) = @_;
- InfoMsg "\nUpdating the $Dir source\n"; - system("cd '$DataDir/$Dir' && git pull"); + if (!-d "$DataDir/$Dir") + { + InfoMsg "\nRetrieving the $Dir source\n"; + system("set -x && git clone $RepoURLs{$Dir}"); + } + else + { + InfoMsg "\nUpdating the $Dir source\n"; + system("cd '$DataDir/$Dir' && set -x && git pull"); + } if ($? != 0) { - LogMsg "Git pull failed\n"; + LogMsg "Git clone/pull failed\n"; return !1; }
diff --git a/testbot/lib/WineTestBot/Config.pm b/testbot/lib/WineTestBot/Config.pm index b68c4f5..38ab999 100644 --- a/testbot/lib/WineTestBot/Config.pm +++ b/testbot/lib/WineTestBot/Config.pm @@ -26,7 +26,7 @@ WineTestBot::Config - Site-independent configuration settings =cut
use vars qw (@ISA @EXPORT @EXPORT_OK $UseSSL $LogDir $DataDir $BinDir - $DbDataSource $DbUsername $DbPassword $MaxRevertingVMs + %RepoURLs $DbDataSource $DbUsername $DbPassword $MaxRevertingVMs $MaxRevertsWhileRunningVMs $MaxActiveVMs $MaxRunningVMs $MaxVMsWhenIdle $SleepAfterRevert $WaitForToolsInVM $VMToolTimeout $MaxVMErrors $MaxTaskTries $AdminEMail $RobotEMail @@ -42,7 +42,7 @@ use vars qw (@ISA @EXPORT @EXPORT_OK $UseSSL $LogDir $DataDir $BinDir
require Exporter; @ISA = qw(Exporter); -@EXPORT = qw($UseSSL $LogDir $DataDir $BinDir +@EXPORT = qw($UseSSL $LogDir $DataDir $BinDir %RepoURLs $MaxRevertingVMs $MaxRevertsWhileRunningVMs $MaxActiveVMs $MaxRunningVMs $MaxVMsWhenIdle $SleepAfterRevert $WaitForToolsInVM $VMToolTimeout $MaxVMErrors $MaxTaskTries $AdminEMail @@ -79,6 +79,10 @@ sub PrependPaths(@) }
+%RepoURLs = ( + "wine" => "git://source.winehq.org/git/wine.git", +); + # See the ScheduleOnHost() documentation in lib/WineTestBot/Jobs.pm $MaxRevertingVMs = 1; $MaxRevertsWhileRunningVMs = 0;