[webkit-dev] Fwd: Getting more buildbots green

Marc-Antoine Ruel maruel at chromium.org
Wed Jan 28 09:51:28 PST 2009


Idea
One of the advantages of keeping the tree green is to enable the
implementation of a "try server". We've been using that for a while and even
with its caveat, it's particularly useful when multiple platforms are
supported by a code base.

You can see it in action there:
http://build.chromium.org/buildbot/try-server/waterfall

How we use it
When someone uploads a patch to our code review
tool<http://codereview.chromium.org/>with gcl.py, it also implicitly
calls trychange.py to send it to the try
server. The try server has 2 communication methods, a svn server to hold the
.diff files (which enable access control and logging) or direct HTTP
connection (a bit faster).

Try jobs can also be manually called. In webkit's case, it'd look like this:
trychange.py --url https://bugs.webkit.org/attachment.cgi?id=26067
--patchlevel
1

It then sends back an email for each platform with the equivalent waterfall
"strip" for the build. I attached an example at the end of this email.


Sources
The try server master.cfg<http://src.chromium.org/viewvc/chrome/trunk/tools/buildbot/config/master.tryserver/>
and
its related scripts<http://src.chromium.org/viewvc/chrome/trunk/tools/buildbot/>
.

trychange.py, gcl.py and
gclient.py<http://src.chromium.org/viewvc/chrome/trunk/depot_tools/src/release/>
.

gclient needs to be used to do a functional try server checkout. (sorry)
The commands are:
  gclient config
http://src.chromium.org/svn/trunk/tools/buildbot/config/master.tryserver/
  gclient sync

Our code review tool
sources<http://rietveld.googlecode.com/svn/branches/chromium/>.
Not directly related, just FYI.


Applied on webkit
In the webkit case, we could probably extract something much simpler. It
doesn't need gclient, gcl or the code review tool. Only something similar to
trychange.py and the try server scripts.

I attached a sample try result email.

M-A


---- CUT HERE ----
http://build.chromium.org/buildbot/try-server/

TRY FAILED

http://build.chromium.org/buildbot/try-server/builders/win/builds/1106

win
Build 1106<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106>
'maruel: disconnect' try job svnkill
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/shell/logs/stdio>update
scripts
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/shell_2/logs/stdio>taskkill
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/shell_3/logs/stdio>update
patch<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/gclient/logs/patch>
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/gclient/logs/stdio>
compile
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/compile/logs/stdio>Start
Crash Handler
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/Start%20Crash%20Handler/logs/stdio>ipc_tests
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/ipc_tests/logs/stdio>installer_unittests
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/installer_unittests/logs/stdio>unit_tests
13 disabled
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/unit_tests/logs/stdio>debugger_test
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/debugger_test/logs/stdio>ui_tests
crashed or hung
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/ui_tests/logs/stdio>test_shell_tests
1 disabled
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/test_shell_tests/logs/stdio>
base_unittests
1 disabled
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/base_unittests/logs/stdio>net_unittests
9 disabled
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/net_unittests/logs/stdio>media_unittests
stdio<http://build.chromium.org/buildbot/try-server/builders/win/builds/1106/steps/media_unittests/logs/stdio>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20090128/4230f32c/attachment.html>


More information about the webkit-dev mailing list