Adding Mac and Windows Large Tests bots.
This also means the old LinuxVideo bot is renamed to LinuxLargeTests. BUG=None TEST=Tested successfully with local buildbot master and remote slaves. Review URL: https://webrtc-codereview.appspot.com/582005 git-svn-id: http://webrtc.googlecode.com/svn/trunk@2251 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
fbfbdbe9ea
commit
e96b54f442
8
tools/.gitignore
vendored
8
tools/.gitignore
vendored
@ -39,6 +39,7 @@ twistd.pid
|
||||
/continuous_build/build_internal/masters/master.webrtc/android-ndk
|
||||
/continuous_build/build_internal/masters/master.webrtc/chromeos
|
||||
/continuous_build/build_internal/masters/master.webrtc/linux-clang
|
||||
/continuous_build/build_internal/masters/master.webrtc/linux-large-tests
|
||||
/continuous_build/build_internal/masters/master.webrtc/linux-slave-1
|
||||
/continuous_build/build_internal/masters/master.webrtc/linux-slave-2
|
||||
/continuous_build/build_internal/masters/master.webrtc/linux-slave-4
|
||||
@ -47,6 +48,7 @@ twistd.pid
|
||||
/continuous_build/build_internal/masters/master.webrtc/linux-valgrind
|
||||
/continuous_build/build_internal/masters/master.webrtc/LinuxChrome
|
||||
/continuous_build/build_internal/masters/master.webrtc/LinuxChromeBloat
|
||||
/continuous_build/build_internal/masters/master.webrtc/mac-large-tests/
|
||||
/continuous_build/build_internal/masters/master.webrtc/mac-slave-2
|
||||
/continuous_build/build_internal/masters/master.webrtc/mac-slave-3
|
||||
/continuous_build/build_internal/masters/master.webrtc/MacChrome
|
||||
@ -54,7 +56,7 @@ twistd.pid
|
||||
/continuous_build/build_internal/masters/master.webrtc/win-32-dbg
|
||||
/continuous_build/build_internal/masters/master.webrtc/win-32-release
|
||||
/continuous_build/build_internal/masters/master.webrtc/WinChrome
|
||||
/continuous_build/build_internal/masters/master.webrtc/video
|
||||
/continuous_build/build_internal/masters/master.webrtc/win-large-tests
|
||||
/continuous_build/build_internal/masters/master.tryserver.webrtc/android-trybot
|
||||
/continuous_build/build_internal/masters/master.tryserver.webrtc/android-ndk-trybot
|
||||
/continuous_build/build_internal/masters/master.tryserver.webrtc/linux-trybot-1
|
||||
@ -64,7 +66,3 @@ twistd.pid
|
||||
/continuous_build/build_internal/masters/master.tryserver.webrtc/public_html
|
||||
/continuous_build/build_internal/masters/master.tryserver.webrtc/win-trybot-1
|
||||
/continuous_build/build_internal/masters/master.tryserver.webrtc/win-trybot-2
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -49,7 +49,9 @@ webrtc_scheduler = Scheduler(name='all', branch='trunk',
|
||||
'LinuxClang',
|
||||
'LinuxValgrind',
|
||||
'Linux64DBG-GCC4.6',
|
||||
'LinuxVideoTest',
|
||||
'LinuxLargeTests',
|
||||
'MacLargeTests',
|
||||
'WinLargeTests',
|
||||
'Android',
|
||||
'AndroidNDK',
|
||||
'ChromeOS',
|
||||
@ -106,9 +108,9 @@ NORMAL_TESTS = {
|
||||
# Physical machine tests run on hardware with audio device and webcam present.
|
||||
PHYSICAL_MACHINE_TESTS = {
|
||||
# Test name Linux Mac Windows
|
||||
'audio_device_test_api': (False, True, True), # Issue 339
|
||||
'audio_device_test_api': (False, False, False), # Issue 257+339
|
||||
'video_render_module_test': (True, True, True),
|
||||
'vie_auto_test': (True, False, False),
|
||||
'vie_auto_test': (True, True, True),
|
||||
'voe_auto_test': (True, True, True),
|
||||
}
|
||||
|
||||
@ -168,13 +170,13 @@ linux_factory_32_dbg.EnableTests(linux_normal_tests)
|
||||
|
||||
# The video factory needs to prepare for valgrind since some tests will run
|
||||
# under tooling. Not all tests will though since that would be too slow.
|
||||
linux_factory_video = utils.WebRTCLinuxFactory(
|
||||
utils.BuildStatusOracle('linux_factory_video'),
|
||||
linux_factory_large_tests = utils.WebRTCLinuxFactory(
|
||||
utils.BuildStatusOracle('linux_factory_large_tests'),
|
||||
custom_deps_list=VALGRIND_DEPS_LIST)
|
||||
linux_factory_video.EnableCoverage(
|
||||
linux_factory_large_tests.EnableCoverage(
|
||||
coverage_url='http://webrtc-build-bot-se.lul/coverage/')
|
||||
linux_factory_video.EnableBuild(compile_for_memory_tooling=True)
|
||||
linux_factory_video.EnableTests(linux_physical_machine_tests)
|
||||
linux_factory_large_tests.EnableBuild(compile_for_memory_tooling=True)
|
||||
linux_factory_large_tests.EnableTests(linux_physical_machine_tests)
|
||||
|
||||
chromeos_factory = utils.WebRTCLinuxFactory(
|
||||
utils.BuildStatusOracle('chromeos_factory'))
|
||||
@ -214,6 +216,11 @@ mac_factory_32_release = utils.WebRTCMacFactory(
|
||||
mac_factory_32_release.EnableBuild(build_type='both', release=True)
|
||||
mac_factory_32_release.EnableTests(mac_normal_tests)
|
||||
|
||||
mac_factory_large_tests = utils.WebRTCMacFactory(
|
||||
utils.BuildStatusOracle('mac_factory_large_tests'))
|
||||
mac_factory_large_tests.EnableBuild(build_type='make')
|
||||
mac_factory_large_tests.EnableTests(mac_physical_machine_tests)
|
||||
|
||||
# Windows
|
||||
win_factory_32_Debug = utils.WebRTCWinFactory(
|
||||
utils.BuildStatusOracle('win_factory_32_debug'))
|
||||
@ -225,6 +232,11 @@ win_factory_32_Release = utils.WebRTCWinFactory(
|
||||
win_factory_32_Release.EnableBuild(configuration='Release')
|
||||
win_factory_32_Release.EnableTests(windows_normal_tests)
|
||||
|
||||
win_factory_large_tests = utils.WebRTCWinFactory(
|
||||
utils.BuildStatusOracle('win_factory_large_tests'))
|
||||
win_factory_large_tests.EnableBuild()
|
||||
win_factory_large_tests.EnableTests(windows_physical_machine_tests)
|
||||
|
||||
####### BUILDERS
|
||||
linux_builder_64_debug = {
|
||||
'name': 'Linux64DBG',
|
||||
@ -262,6 +274,12 @@ mac_builder_32_release = {
|
||||
'builddir': 'mac-slave-2',
|
||||
'factory': mac_factory_32_release,
|
||||
}
|
||||
mac_builder_large_tests = {
|
||||
'name': 'MacLargeTests',
|
||||
'slavename': 'dhcp-172-28-249-168',
|
||||
'builddir': 'mac-large-tests',
|
||||
'factory': mac_factory_large_tests,
|
||||
}
|
||||
chromeos_builder = {
|
||||
'name': 'ChromeOS',
|
||||
'slavename': 'webrtc-cb-linux-slave-3',
|
||||
@ -280,11 +298,17 @@ win_builder_32_release = {
|
||||
'builddir': 'win-32-release',
|
||||
'factory': win_factory_32_Release,
|
||||
}
|
||||
linux_builder_video = {
|
||||
'name': 'LinuxVideoTest',
|
||||
win_builder_large_tests = {
|
||||
'name': 'WinLargeTests',
|
||||
'slavename': 'webrtc-test-w',
|
||||
'builddir': 'win-large-tests',
|
||||
'factory': win_factory_large_tests,
|
||||
}
|
||||
linux_builder_large_tests = {
|
||||
'name': 'LinuxLargeTests',
|
||||
'slavename': 'webrtc-build-bot-se',
|
||||
'builddir': 'video',
|
||||
'factory': linux_factory_video,
|
||||
'builddir': 'linux-large-tests',
|
||||
'factory': linux_factory_large_tests,
|
||||
}
|
||||
linux_builder_clang = {
|
||||
'name': 'LinuxClang',
|
||||
@ -328,7 +352,9 @@ c['builders'] = [
|
||||
linux_builder_clang,
|
||||
linux_builder_valgrind,
|
||||
linux_builder_gcc_4_6,
|
||||
linux_builder_video,
|
||||
win_builder_large_tests,
|
||||
mac_builder_large_tests,
|
||||
linux_builder_large_tests,
|
||||
android_builder_1,
|
||||
android_builder_ndk,
|
||||
chromeos_builder,
|
||||
|
@ -1,10 +1,11 @@
|
||||
# -*- python -*-
|
||||
# ex: set syntax=python:
|
||||
# Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
# See master.experimental/slaves.cfg for documentation.
|
||||
#!/usr/bin/env python
|
||||
# Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
|
||||
def linux():
|
||||
@ -94,7 +95,7 @@ def linux():
|
||||
'os': 'linux',
|
||||
'version': 'lucid',
|
||||
'bits': '64',
|
||||
'builder': 'LinuxVideoTest',
|
||||
'builder': 'LinuxLargeTests',
|
||||
'hostname': 'webrtc-build-bot-se',
|
||||
},
|
||||
{
|
||||
@ -125,6 +126,14 @@ def mac():
|
||||
'builder': 'MacOS32Release',
|
||||
'hostname': 'dhcp-172-28-249-167',
|
||||
},
|
||||
{
|
||||
'master': 'WebRTC',
|
||||
'os': 'mac',
|
||||
'version': '10.7',
|
||||
'bits': '64',
|
||||
'builder': 'MacLargeTests',
|
||||
'hostname': 'dhcp-172-28-249-168',
|
||||
},
|
||||
{
|
||||
'master': 'WebRTC',
|
||||
'os': 'mac',
|
||||
@ -153,6 +162,14 @@ def windows():
|
||||
'builder': 'Win32Release',
|
||||
'hostname': 'webrtc-win2k8-2',
|
||||
},
|
||||
{
|
||||
'master': 'WebRTC',
|
||||
'os': 'win',
|
||||
'version': 'win7',
|
||||
'bits': '64',
|
||||
'builder': 'WinLargeTests',
|
||||
'hostname': 'webrtc-test-w',
|
||||
},
|
||||
{
|
||||
'master': 'WebRTC',
|
||||
'os': 'win',
|
||||
|
@ -7,7 +7,7 @@
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
__author__ = 'ivinnichenko@webrtc.org (Illya Vinnichenko)'
|
||||
__author__ = 'kjellander@webrtc.org (Henrik Kjellander)'
|
||||
|
||||
import ntpath
|
||||
import os
|
||||
@ -750,6 +750,41 @@ class WebRTCMacFactory(WebRTCFactory):
|
||||
descriptor='EnableMake')
|
||||
self.AddCommonMakeStep('all')
|
||||
|
||||
def EnableTest(self, test):
|
||||
"""Adds a step for running a test on Mac.
|
||||
|
||||
In general, this method will interpret the name as the name of a binary
|
||||
in the default build output directory, except for a few special cases
|
||||
which require custom command lines.
|
||||
|
||||
Args:
|
||||
test: the test name as a string.
|
||||
"""
|
||||
if test == 'vie_auto_test':
|
||||
# Start ManyCam before the test starts:
|
||||
self.AddCommonStep(cmd=['open', '/Applications/ManyCam/ManyCam.app'],
|
||||
descriptor=['Starting ManyCam'])
|
||||
# TODO(phoglund): Enable the full stack test once it is completed and
|
||||
# nonflaky.
|
||||
cmd = (
|
||||
'out/Debug/vie_auto_test --automated --gtest_filter="'
|
||||
'ViEStandardIntegrationTest.*:'
|
||||
'ViEVideoVerificationTest.*:'
|
||||
'-ViEVideoVerificationTest.RunsFullStackWithoutErrors:'
|
||||
'ViEVideoVerificationTest.RunsFileTestWithoutErrors:' # bug 524
|
||||
'ViEStandardIntegrationTest.RunsRtpRtcpTestWithoutErrors" ' # bug 477
|
||||
'--capture_test_ensure_resolution_alignment_in_capture_device=false')
|
||||
self.AddCommonTestRunStep(test=test, cmd=cmd)
|
||||
self.AddCommonStep(cmd=['killall', 'ManyCam'],
|
||||
descriptor=['Stopping ManyCam'])
|
||||
elif test == 'voe_auto_test':
|
||||
cmd = ('out/Debug/voe_auto_test --automated '
|
||||
# Disabled test until bug 527 is resolved.
|
||||
'--gtest_filter=-VolumeTest.SetVolumeBeforePlayoutWorks')
|
||||
self.AddCommonTestRunStep(test=test, cmd=cmd)
|
||||
else:
|
||||
self.AddCommonTestRunStep(test)
|
||||
|
||||
def AddCommonTestRunStep(self, test, extra_text=None, cmd=None):
|
||||
descriptor = [test, extra_text] if extra_text else [test]
|
||||
if cmd is None:
|
||||
@ -790,6 +825,8 @@ class WebRTCWinFactory(WebRTCFactory):
|
||||
# Must provide full path to the command since we cannot add custom paths to
|
||||
# the PATH environment variable when using Chromium buildbot startup scripts.
|
||||
BUILD_CMD = r'C:\Windows\Microsoft.NET\Framework\v3.5\msbuild.exe'
|
||||
VCAM_PROCESS_NAME = 'VCamManager'
|
||||
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)
|
||||
@ -861,6 +898,38 @@ class WebRTCWinFactory(WebRTCFactory):
|
||||
'/p:Configuration=Release;Platform=%s' % (self.platform)]
|
||||
self.AddCommonStep(cmd, descriptor='Build(Release)')
|
||||
|
||||
def EnableTest(self, test):
|
||||
"""Adds a step for running a test on Windows.
|
||||
|
||||
In general, this method will interpret the name as the name of a binary
|
||||
in the default build output directory, except for a few special cases
|
||||
which require custom command lines.
|
||||
|
||||
Args:
|
||||
test: the test name as a string.
|
||||
"""
|
||||
if test == 'vie_auto_test':
|
||||
# Start VCam before the test starts:
|
||||
self.AddCommonStep(cmd=['cmd', '-c', WebRTCWinFactory.VCAM_PATH],
|
||||
descriptor=['Starting VCam'])
|
||||
# TODO(phoglund): Enable the full stack test once it is completed and
|
||||
# nonflaky.
|
||||
cmd = (
|
||||
'build\\Debug\\vie_auto_test.exe --automated --gtest_filter="'
|
||||
'ViEStandardIntegrationTest.*:'
|
||||
'ViEVideoVerificationTest.*:'
|
||||
'-ViEVideoVerificationTest.RunsFullStackWithoutErrors:'
|
||||
'ViEStandardIntegrationTest.RunsRtpRtcpTestWithoutErrors" ' # bug 477
|
||||
'--capture_test_ensure_resolution_alignment_in_capture_device=false')
|
||||
self.AddCommonTestRunStep(test=test, cmd=cmd)
|
||||
self.AddCommonStep(cmd=['tskill', WebRTCWinFactory.VCAM_PROCESS_NAME],
|
||||
descriptor=['Stopping VCam'])
|
||||
elif test == 'voe_auto_test':
|
||||
cmd = 'build\\Debug\\voe_auto_test.exe --automated'
|
||||
self.AddCommonTestRunStep(test=test, cmd=cmd)
|
||||
else:
|
||||
self.AddCommonTestRunStep(test)
|
||||
|
||||
def AddCommonTestRunStep(self, test, cmd=None):
|
||||
descriptor = [test]
|
||||
if self.configuration == 'Debug' or self.configuration == 'both':
|
||||
|
Loading…
x
Reference in New Issue
Block a user