Changeset 91144 in webkit


Ignore:
Timestamp:
Jul 15, 2011 9:03:18 PM (13 years ago)
Author:
abarth@webkit.org
Message:

gardening server should proxy buildbot status for garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=64588

Reviewed by Eric Seidel.

This information will be used to detect build breaks. I took this
opportunity to make ChromiumBuildBot non-static.

  • Scripts/webkitpy/common/host.py:
  • Scripts/webkitpy/tool/commands/rebaseline.py:
  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
  • Scripts/webkitpy/tool/mocktool.py:
  • Scripts/webkitpy/tool/servers/gardeningserver.py:
  • Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
Location:
trunk/Tools
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r91136 r91144  
     12011-07-15  Adam Barth  <abarth@webkit.org>
     2
     3        gardening server should proxy buildbot status for garden-o-matic
     4        https://bugs.webkit.org/show_bug.cgi?id=64588
     5
     6        Reviewed by Eric Seidel.
     7
     8        This information will be used to detect build breaks.  I took this
     9        opportunity to make ChromiumBuildBot non-static.
     10
     11        * Scripts/webkitpy/common/host.py:
     12        * Scripts/webkitpy/tool/commands/rebaseline.py:
     13        * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
     14        * Scripts/webkitpy/tool/mocktool.py:
     15        * Scripts/webkitpy/tool/servers/gardeningserver.py:
     16        * Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
     17
    1182011-07-15  Julien Chaffraix  <jchaffraix@webkit.org>
    219
  • trunk/Tools/Scripts/webkitpy/common/host.py

    r90770 r91144  
    3232from webkitpy.common.checkout.scm import default_scm
    3333from webkitpy.common.config.ports import WebKitPort
     34from webkitpy.common.memoized import memoized
    3435from webkitpy.common.net import bugzilla, buildbot, statusserver, web
     36from webkitpy.common.net.buildbot.chromiumbuildbot import ChromiumBuildBot
    3537from webkitpy.common.net.irc import ircproxy
    3638from webkitpy.common.system import executive, filesystem, platforminfo, user, workspace
     
    6870        return self._port
    6971
     72    @memoized
     73    def chromium_buildbot(self):
     74        return ChromiumBuildBot()
     75
    7076    def ensure_irc_connected(self, irc_delegate):
    7177        if not self._irc:
  • trunk/Tools/Scripts/webkitpy/tool/commands/rebaseline.py

    r91042 r91144  
    3434import webkitpy.common.config.urls as config_urls
    3535from webkitpy.common.net.buildbot import BuildBot
    36 from webkitpy.common.net.buildbot.chromiumbuildbot import ChromiumBuildBot
    3736from webkitpy.common.net.layouttestresults import LayoutTestResults
    3837from webkitpy.common.system.user import User
     
    9392    def _results_url(self, builder_name):
    9493        # FIXME: Generalize this command to work with non-build.chromium.org builders.
    95         # FIXME: We should really get the buildbot from the tool!
    96         builder = ChromiumBuildBot().builder_with_name(builder_name)
     94        builder = self._tool.chromium_buildbot().builder_with_name(builder_name)
    9795        return builder.accumulated_results_url()
    9896
  • trunk/Tools/Scripts/webkitpy/tool/commands/rebaseline_unittest.py

    r90770 r91144  
    4949        command.bind_to_tool(MockTool())
    5050        build = Mock()
    51         expected_stdout = "Retrieving http://build.chromium.org/f/chromium/layout_test_results/Webkit_Linux/results/layout-test-results/userscripts/another-test-actual.txt ...\n"
     51        expected_stdout = "Retrieving http://example.com/f/builders/Webkit Linux/results//userscripts/another-test-actual.txt ...\n"
    5252        OutputCapture().assert_outputs(self, command._rebaseline_test, ["Webkit Linux", "userscripts/another-test.html", "txt"], expected_stdout=expected_stdout)
    5353
  • trunk/Tools/Scripts/webkitpy/tool/mocktool.py

    r90978 r91144  
    401401        return "http://example.com/builders/%s/results/" % self.name()
    402402
     403    def accumulated_results_url(self):
     404        return "http://example.com/f/builders/%s/results/" % self.name()
     405
    403406    def force_build(self, username, comments):
    404407        log("MOCK: force_build: name=%s, username=%s, comments=%s" % (
     
    836839        self.user = MockUser()
    837840        self._scm = MockSCM()
     841        self._chromium_buildbot = MockBuildBot()
    838842        # Various pieces of code (wrongly) call filesystem.chdir(checkout_root).
    839843        # Making the checkout_root exist in the mock filesystem makes that chdir not raise.
     
    852856        return self._checkout
    853857
     858    def chromium_buildbot(self):
     859        return self._chromium_buildbot
     860
    854861    def ensure_irc_connected(self, delegate):
    855862        if not self._irc:
  • trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver.py

    r90968 r91144  
    6969            self._serve_json(commit_info.to_json())
    7070
     71    def buildbot(self):
     72        builder_statuses = self.server.tool.chromium_buildbot().builder_statuses()
     73        self._serve_json(builder_statuses)
     74
    7175    def rollout(self):
    7276        revision = self.query['revision'][0]
  • trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py

    r90968 r91144  
    7878        self._post_to_path("/changelog?revision=2314", expected_stderr=expected_stderr, expected_stdout=expected_stdout)
    7979
     80    def test_buildbot(self):
     81        expected_stdout = '== Begin JSON Response ==\n[{"is_green": true, "name": "Builder1", "activity": "building"}, {"is_green": true, "name": "Builder2", "activity": "idle"}]\n== End JSON Response ==\n'
     82        self._post_to_path("/buildbot", expected_stdout=expected_stdout, expected_stderr='')
     83
    8084    def test_rollout(self):
    8185        expected_stderr = "MOCK run_command: ['echo', 'rollout', '--force-clean', '--non-interactive', '2314', 'MOCK rollout reason']\n"
Note: See TracChangeset for help on using the changeset viewer.