Libvpx buildbot waterfall.

I think I found a decent way to avoid duplicating the whole configuration for the libvpx waterfall. It's not perfect but it works. I still haven't figured out what the best way to manage the slaves would be however, since they will need to know which master to connect to, or they'll pick the default they're configured for in slaves.cfg, which is the WebRTC waterfall (can be overridden with the TESTING_MASTER property, but that's only to be used for development and testing.

BUG=None
TEST=Tested on local master and slaves.

Review URL: https://webrtc-codereview.appspot.com/595005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2310 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
kjellander@webrtc.org
2012-05-29 06:23:42 +00:00
parent ca8d788362
commit fe87f8ce08
13 changed files with 173 additions and 94 deletions

View File

@@ -501,8 +501,11 @@ class GenerateCodeCoverage(ShellCommand):
class WebRTCAndroidFactory(WebRTCFactory):
"""Sets up the Android build."""
def __init__(self, build_status_oracle, is_try_slave=False):
WebRTCFactory.__init__(self, build_status_oracle, is_try_slave)
def __init__(self, build_status_oracle, is_try_slave=False,
custom_deps_list=None):
WebRTCFactory.__init__(self, build_status_oracle=build_status_oracle,
is_try_slave=is_try_slave,
custom_deps_list=custom_deps_list)
def EnableBuild(self, product='toro'):
prefix = 'rm -rf out/target/product/%s/obj/' % product
@@ -527,8 +530,11 @@ class WebRTCAndroidFactory(WebRTCFactory):
class WebRTCAndroidNDKFactory(WebRTCFactory):
"""Sets up the Android NDK build."""
def __init__(self, build_status_oracle, is_try_slave=False):
WebRTCFactory.__init__(self, build_status_oracle, is_try_slave)
def __init__(self, build_status_oracle, is_try_slave=False,
custom_deps_list=None):
WebRTCFactory.__init__(self, build_status_oracle=build_status_oracle,
is_try_slave=is_try_slave,
custom_deps_list=custom_deps_list)
def EnableBuild(self):
self.AddSmartCleanStep()
@@ -771,8 +777,11 @@ class WebRTCLinuxFactory(WebRTCFactory):
class WebRTCMacFactory(WebRTCFactory):
"""Sets up the Mac build, both for make and xcode."""
def __init__(self, build_status_oracle, is_try_slave=False):
WebRTCFactory.__init__(self, build_status_oracle, is_try_slave)
def __init__(self, build_status_oracle, is_try_slave=False,
custom_deps_list=None):
WebRTCFactory.__init__(self, build_status_oracle=build_status_oracle,
is_try_slave=is_try_slave,
custom_deps_list=custom_deps_list)
self.build_type = 'both'
self.allowed_build_types = ['both', 'xcode', 'make']
@@ -869,8 +878,11 @@ class WebRTCWinFactory(WebRTCFactory):
BUILD_CMD = r'C:\Windows\Microsoft.NET\Framework\v3.5\msbuild.exe'
VCAM_PATH = r'C:\Program Files (x86)\e2eSoft\VCam\VCamManager.exe'
def __init__(self, build_status_oracle, is_try_slave=False):
WebRTCFactory.__init__(self, build_status_oracle, is_try_slave)
def __init__(self, build_status_oracle, is_try_slave=False,
custom_deps_list=None):
WebRTCFactory.__init__(self, build_status_oracle=build_status_oracle,
is_try_slave=is_try_slave,
custom_deps_list=custom_deps_list)
self.configuration = 'Debug'
self.platform = 'x64'
self.allowed_platforms = ['x64', 'Win32']

View File

@@ -27,8 +27,10 @@ class ChromiumWebRTCFactory(chromium_factory.ChromiumFactory):
tests=None, mode=None,
slave_type='BuilderTester', options=None,
compile_timeout=1200, build_url=None,
project=None, factory_properties=None):
self._solutions[0].custom_deps_list = [self.CUSTOM_DEPS_WEBRTC_LATEST]
project=None, factory_properties=None,
custom_deps_list=[]):
custom_deps_list.append(self.CUSTOM_DEPS_WEBRTC_LATEST)
self._solutions[0].custom_deps_list = custom_deps_list
factory = self.ChromiumFactory(target, clobber, tests, mode, slave_type,
options, compile_timeout, build_url, project,
factory_properties)
@@ -43,8 +45,10 @@ class ChromiumWebRTCFactory(chromium_factory.ChromiumFactory):
tests=None, mode=None,
slave_type='BuilderTester', options=None,
compile_timeout=1200, build_url=None,
project=None, factory_properties=None):
self._solutions[0].custom_deps_list = [self.CUSTOM_DEPS_WEBRTC_LATEST]
project=None, factory_properties=None,
custom_deps_list=[]):
custom_deps_list.append(self.CUSTOM_DEPS_WEBRTC_LATEST)
self._solutions[0].custom_deps_list = custom_deps_list
factory = self.ChromiumFactory(target, clobber, tests, mode, slave_type,
options, compile_timeout, build_url, project,
factory_properties)