Francois Gouget : testbot/bin: Document the purpose of the scripts.

Alexandre Julliard julliard at winehq.org
Tue Sep 4 12:42:04 CDT 2012


Module: tools
Branch: master
Commit: d5fff860f06bf717b92431e919caba05882c7b4d
URL:    http://source.winehq.org/git/tools.git/?a=commit;h=d5fff860f06bf717b92431e919caba05882c7b4d

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Tue Sep  4 00:11:16 2012 +0200

testbot/bin: Document the purpose of the scripts.

---

 testbot/bin/BuildSingleTest.pl          |    4 ++++
 testbot/bin/CheckForWinetestUpdate.pl   |    4 ++++
 testbot/bin/Engine.pl                   |   18 +++++++++++++++++-
 testbot/bin/Janitor.pl                  |    5 ++---
 testbot/bin/PatchNotificationHandler.pl |    3 ++-
 testbot/bin/PingEngine.pl               |    2 +-
 testbot/bin/Reconfig.pl                 |    4 ++++
 testbot/bin/RetrievePatches.pl          |    3 +++
 testbot/bin/RevertVM.pl                 |    5 +++++
 testbot/bin/WineRunBuild.pl             |    3 +++
 testbot/bin/WineRunReconfig.pl          |    3 +++
 testbot/bin/WineRunTask.pl              |    2 ++
 testbot/bin/WineSendLog.pl              |    3 ++-
 13 files changed, 52 insertions(+), 7 deletions(-)

diff --git a/testbot/bin/BuildSingleTest.pl b/testbot/bin/BuildSingleTest.pl
index d2b0d99..8018679 100755
--- a/testbot/bin/BuildSingleTest.pl
+++ b/testbot/bin/BuildSingleTest.pl
@@ -1,5 +1,9 @@
 #!/usr/bin/perl -Tw
 #
+# Performs the 'build' task in the build machine. Specifically this applies a
+# conformance test patch, rebuilds the impacted test and retrieves the
+# resulting 32 and 64 bit binaries.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/CheckForWinetestUpdate.pl b/testbot/bin/CheckForWinetestUpdate.pl
index 7755754..5285d89 100755
--- a/testbot/bin/CheckForWinetestUpdate.pl
+++ b/testbot/bin/CheckForWinetestUpdate.pl
@@ -1,5 +1,9 @@
 #!/usr/bin/perl -Tw
 #
+# Checks if a new winetest binary is available on http://test.winehq.org/data/.
+# If so, triggers an update of the build VM to the latest Wine source and
+# runs the full test suite on the standard Windows test VMs.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/Engine.pl b/testbot/bin/Engine.pl
index 422e810..947c24c 100755
--- a/testbot/bin/Engine.pl
+++ b/testbot/bin/Engine.pl
@@ -1,6 +1,6 @@
 #!/usr/bin/perl -Tw
 #
-# WineTestBot engine
+# The WineTestBot server, aka the engine that makes it all work.
 #
 # Copyright 2009 Ge van Geldorp
 #
@@ -528,6 +528,22 @@ sub InitVMs()
   }
 }
 
+=pod
+=over 12
+
+=item C<SafetyNet()>
+
+This is called on startup and regularly after that to catch thing that fall
+through the cracks, possibly because of an Engine restart.
+Specifically it updates the status of all the current Jobs, Steps and
+Tasks, then schedules Tasks to be run, checks the staging directory for
+wine-patches emails dropped by WinePatchesHandler.pl, for notifications of
+changes on Wine's Patches web site dropped by PatchNotificationHandler.pl, and
+checks whether any pending patchsets are now complete and thus can be scheduled.
+
+=back
+=cut
+
 sub SafetyNet
 {
   my $Jobs = CreateJobs();
diff --git a/testbot/bin/Janitor.pl b/testbot/bin/Janitor.pl
index c4ad4cd..033bd5d 100755
--- a/testbot/bin/Janitor.pl
+++ b/testbot/bin/Janitor.pl
@@ -1,8 +1,7 @@
 #!/usr/bin/perl -Tw
 #
-# Janitorial tasks
-# Run this from crontab once per day, e.g.
-# 17 1 * * * /usr/lib/winetestbot/bin/Janitor.pl
+# This script performs janitorial tasks. It removes incomplete patch series,
+# archives old jobs and purges older jobs and patches.
 #
 # Copyright 2009 Ge van Geldorp
 #
diff --git a/testbot/bin/PatchNotificationHandler.pl b/testbot/bin/PatchNotificationHandler.pl
index 84ccf87..81cd376 100755
--- a/testbot/bin/PatchNotificationHandler.pl
+++ b/testbot/bin/PatchNotificationHandler.pl
@@ -1,6 +1,7 @@
 #!/usr/bin/perl -Tw
 #
-# Tell the engine to expect a winetest.exe update on test.winehq.org
+# Notifies WineTestBot that there are new patches to test on
+# http://source.winehq.org/patches.
 #
 # Copyright 2009 Ge van Geldorp
 #
diff --git a/testbot/bin/PingEngine.pl b/testbot/bin/PingEngine.pl
index 6f2581b..4faddf6 100755
--- a/testbot/bin/PingEngine.pl
+++ b/testbot/bin/PingEngine.pl
@@ -1,6 +1,6 @@
 #!/usr/bin/perl -Tw
 #
-# Ping WineTestBot engine to see if it is alive
+# Pings the WineTestBot engine to see if it is still alive.
 #
 # Copyright 2009 Ge van Geldorp
 #
diff --git a/testbot/bin/Reconfig.pl b/testbot/bin/Reconfig.pl
index c5308f4..aecc6a3 100755
--- a/testbot/bin/Reconfig.pl
+++ b/testbot/bin/Reconfig.pl
@@ -1,5 +1,9 @@
 #!/usr/bin/perl -Tw
 #
+# Performs the 'reconfig' task in the build machine. Specifically this updates
+# the build machine's Wine repository, re-runs configure, and rebuilds the
+# 32 and 64 bit winetest binaries.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/RetrievePatches.pl b/testbot/bin/RetrievePatches.pl
index c0f17c8..18b3aa7 100755
--- a/testbot/bin/RetrievePatches.pl
+++ b/testbot/bin/RetrievePatches.pl
@@ -1,5 +1,8 @@
 #!/usr/bin/perl -Tw
 #
+# Retrieve the latest patches from http://source.winehq.org/patches and submit
+# them for testing. See also PatchNotificationHandler.pl.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/RevertVM.pl b/testbot/bin/RevertVM.pl
index 4d7b64f..c62d498 100755
--- a/testbot/bin/RevertVM.pl
+++ b/testbot/bin/RevertVM.pl
@@ -1,5 +1,10 @@
 #!/usr/bin/perl -Tw
 #
+# Reverts a VM so that it is ready to run jobs. Note that in addition to the
+# hypervisor revert operation this implies letting the VM settle down and
+# checking that it responds to our commands. If this fails the administrator
+# is notified and the VM is marked as offline.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/WineRunBuild.pl b/testbot/bin/WineRunBuild.pl
index d11d4bf..2699351 100755
--- a/testbot/bin/WineRunBuild.pl
+++ b/testbot/bin/WineRunBuild.pl
@@ -1,5 +1,8 @@
 #!/usr/bin/perl -Tw
 #
+# Communicates with the build machine to have it perform the 'build' task.
+# See the bin/BuildSingleTest.pl script.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/WineRunReconfig.pl b/testbot/bin/WineRunReconfig.pl
index 3a02a9e..4aacd81 100755
--- a/testbot/bin/WineRunReconfig.pl
+++ b/testbot/bin/WineRunReconfig.pl
@@ -1,5 +1,8 @@
 #!/usr/bin/perl -Tw
 #
+# Communicates with the build machine to have it perform the 'reconfig' task.
+# See the bin/Reconfig.pl script.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/WineRunTask.pl b/testbot/bin/WineRunTask.pl
index 71cc9f5..6db920c 100755
--- a/testbot/bin/WineRunTask.pl
+++ b/testbot/bin/WineRunTask.pl
@@ -1,5 +1,7 @@
 #!/usr/bin/perl -Tw
 #
+# Sends and runs the tasks in the Windows test VMs.
+#
 # Copyright 2009 Ge van Geldorp
 #
 # This library is free software; you can redistribute it and/or
diff --git a/testbot/bin/WineSendLog.pl b/testbot/bin/WineSendLog.pl
index 1f92083..c4147a6 100755
--- a/testbot/bin/WineSendLog.pl
+++ b/testbot/bin/WineSendLog.pl
@@ -1,6 +1,7 @@
 #!/usr/bin/perl -Tw
 #
-# Send job log to submitting user
+# Sends the job log to the submitting user and informs the Wine Patches web
+# site of the test results.
 #
 # Copyright 2009 Ge van Geldorp
 #




More information about the wine-cvs mailing list