Bug 106259

Summary: garden-o-matic shouldn’t hard-code a list of buildbots for build.webkit.org
Product: WebKit Reporter: Ryosuke Niwa <rniwa>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: abarth, dbates, dglazkov, dpranke, eric, simon.fraser, timloh, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 107057    
Bug Blocks:    
Attachments:
Description Flags
Patch
ossy: review-
Patch none

Description Ryosuke Niwa 2013-01-07 15:00:33 PST
garden-o-magic apparently has a hard-codced list of builders and slaves on build.webkit.org. It should instead use http://trac.webkit.org/browser/trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json
Comment 1 Ojan Vafai 2013-01-07 15:02:15 PST
For the chromium bots, it will need to query build.chromium.org and have a mapping from bot name to whether it's debug/release and what it's "version" is (e.g. lion, snowleopard, etc).

We already query build.chromium.org and build.webkit.org for the list of bots so that we can show non-layout test errors in garden-o-matic.
Comment 2 Timothy Loh 2013-01-17 20:07:37 PST
Created attachment 183355 [details]
Patch
Comment 3 WebKit Review Bot 2013-01-17 20:09:38 PST
Attachment 183355 [details] did not pass style-queue:

Traceback (most recent call last):
  File "/mnt/git/webkit-style-queue/Tools/Scripts/webkit-patch", line 44, in <module>
    from webkitpy.tool.main import WebKitPatch
  File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/tool/main.py", line 37, in <module>
    from webkitpy.common.host import Host
  File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/common/host.py", line 38, in <module>
    from webkitpy.common.net.buildbot.chromiumbuildbot import ChromiumBuildBot
  File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/common/net/buildbot/chromiumbuildbot.py", line 32, in <module>
    from webkitpy.layout_tests.port.builders import builder_path_from_name
  File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/layout_tests/port/__init__.py", line 31, in <module>
    import builders  # Why is this in port?
  File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/layout_tests/port/builders.py", line 117, in <module>
    _exact_matches = _get_build_chromium_org_builders()
  File "/mnt/git/webkit-style-queue/Tools/Scripts/webkitpy/layout_tests/port/builders.py", line 112, in _get_build_chromium_org_builders
    raise Exception("Unknown version '%s' for builder '%s'" % (version, name))
Exception: Unknown version 'Android' for builder 'WebKit Android (GalaxyNexus)'


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Ryosuke Niwa 2013-01-17 20:10:47 PST
Comment on attachment 183355 [details]
Patch

We need some sort of sanity check tests for this.
Comment 5 Csaba Osztrogonác 2013-01-17 21:34:54 PST
Comment on attachment 183355 [details]
Patch

it killed EWS bots, they can't process it.
Comment 6 Timothy Loh 2013-01-20 15:10:42 PST
Created attachment 183690 [details]
Patch
Comment 7 Eric Seidel (no email) 2013-01-20 23:34:44 PST
Comment on attachment 183690 [details]
Patch

Should we include the current copy of the json in a unittest to verify that all teh parser rules work?

I mean, this looks OK.  I suspect we're going to need to edit this code as the json changes.  I'm not sure what keeps us from getting confused as someone adds non-standardly named builders?  We have unittests for the master.cfg file for webkit.org.  I don't know what (if any) unittests exist for the chromium one.