| OLD | NEW |
| (Empty) | |
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. |
| 4 |
| 5 from master import master_config |
| 6 from master.factory import chromeos_factory |
| 7 from master.factory import chromium_factory |
| 8 |
| 9 defaults = {} |
| 10 |
| 11 helper = master_config.Helper(defaults) |
| 12 B = helper.Builder |
| 13 F = helper.Factory |
| 14 S = helper.Scheduler |
| 15 P = helper.Periodic |
| 16 |
| 17 |
| 18 def linux(): |
| 19 return chromium_factory.ChromiumFactory('src/build', 'linux2') |
| 20 |
| 21 |
| 22 def CreateCbuildbotFactory(checkout_factory, target, short_name): |
| 23 """Generate and register a ChromeOS builder along with its slave(s). |
| 24 |
| 25 Args: |
| 26 checkout_factory: Factory with the steps to pull out a Chromium source tree |
| 27 (shouldn't contain any compile steps). |
| 28 target: Target name in Chrome OS's puppet configuration scripts. |
| 29 short_name: String only used to name the build directory. |
| 30 """ |
| 31 # Extend the checkout_factory with Cbuildbot build steps to build and test |
| 32 # CrOS using the Chrome from the above Chromium source tree. |
| 33 return chromeos_factory.CbuildbotFactory( |
| 34 params=target, |
| 35 buildroot='/b/cbuild.%s' % short_name, |
| 36 dry_run=True, |
| 37 chrome_root='.', # Where checkout_factory has put "Chrome". |
| 38 factory=checkout_factory, |
| 39 slave_manager=False).get_factory() |
| 40 |
| 41 |
| 42 # Use unused slave_type strings to avoid adding the normal compile step. |
| 43 latest_webrtc_trunk_factory = linux().ChromiumWebRTCLatestTrunkFactory( |
| 44 slave_type='WebRtcCros') |
| 45 latest_webrtc_stable_factory = linux().ChromiumWebRTCLatestStableFactory( |
| 46 slave_type='WebRtcCros') |
| 47 |
| 48 S('cros_webrtc_trunk_scheduler', branch='trunk', treeStableTimer=0) |
| 49 S('cros_webrtc_stable_scheduler', branch='stable', treeStableTimer=0) |
| 50 P('cros_every_4_hours_scheduler', periodicBuildTimer=4*60*60) |
| 51 trunk_schedulers = 'cros_webrtc_trunk_scheduler|cros_every_4_hours_scheduler' |
| 52 stable_schedulers = 'cros_webrtc_stable_scheduler|cros_every_4_hours_scheduler' |
| 53 |
| 54 defaults['category'] = 'chromiumos' |
| 55 |
| 56 # x86. |
| 57 B('ChromiumOS x86 [latest WebRTC trunk]', |
| 58 factory='chromeos_x86_webrtc_trunk_factory', scheduler=trunk_schedulers, |
| 59 notify_on_missing=True) |
| 60 F('chromeos_x86_webrtc_trunk_factory', |
| 61 CreateCbuildbotFactory(checkout_factory=latest_webrtc_trunk_factory, |
| 62 target='x86-webrtc-chrome-pfq-informational', |
| 63 short_name='x86')) |
| 64 |
| 65 B('ChromiumOS x86 [latest WebRTC stable]', |
| 66 factory='chromeos_x86_webrtc_stable_factory', scheduler=stable_schedulers, |
| 67 notify_on_missing=True) |
| 68 F('chromeos_x86_webrtc_stable_factory', |
| 69 CreateCbuildbotFactory(checkout_factory=latest_webrtc_stable_factory, |
| 70 target='x86-webrtc-chrome-pfq-informational', |
| 71 short_name='x86')) |
| 72 # AMD64. |
| 73 B('ChromiumOS amd64 [latest WebRTC trunk]', |
| 74 factory='chromeos_amd64_webrtc_trunk_factory', scheduler=trunk_schedulers, |
| 75 notify_on_missing=True) |
| 76 F('chromeos_amd64_webrtc_trunk_factory', |
| 77 CreateCbuildbotFactory(checkout_factory=latest_webrtc_trunk_factory, |
| 78 target='amd64-webrtc-chrome-pfq-informational', |
| 79 short_name='amd64')) |
| 80 |
| 81 B('ChromiumOS amd64 [latest WebRTC stable]', |
| 82 factory='chromeos_amd64_webrtc_stable_factory', scheduler=stable_schedulers, |
| 83 notify_on_missing=True) |
| 84 F('chromeos_amd64_webrtc_stable_factory', |
| 85 CreateCbuildbotFactory(checkout_factory=latest_webrtc_stable_factory, |
| 86 target='amd64-webrtc-chrome-pfq-informational', |
| 87 short_name='amd64')) |
| 88 |
| 89 # ARM. |
| 90 B('ChromiumOS daisy [latest WebRTC trunk]', |
| 91 factory='chromeos_daisy_webrtc_trunk_factory', scheduler=trunk_schedulers, |
| 92 notify_on_missing=True) |
| 93 F('chromeos_daisy_webrtc_trunk_factory', |
| 94 CreateCbuildbotFactory(checkout_factory=latest_webrtc_trunk_factory, |
| 95 target='daisy-webrtc-chrome-pfq-informational', |
| 96 short_name='daisy')) |
| 97 |
| 98 B('ChromiumOS daisy [latest WebRTC stable]', |
| 99 factory='chromeos_daisy_webrtc_stable_factory', scheduler=stable_schedulers, |
| 100 notify_on_missing=True) |
| 101 F('chromeos_daisy_webrtc_stable_factory', |
| 102 CreateCbuildbotFactory(checkout_factory=latest_webrtc_stable_factory, |
| 103 target='daisy-webrtc-chrome-pfq-informational', |
| 104 short_name='daisy')) |
| 105 |
| 106 |
| 107 def Update(config, active_master, c): |
| 108 return helper.Update(c) |
| OLD | NEW |