Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 DEPS = [ | 5 DEPS = [ |
| 6 'chromium', | 6 'chromium', |
| 7 'depot_tools/bot_update', | 7 'depot_tools/bot_update', |
| 8 'depot_tools/gclient', | 8 'depot_tools/gclient', |
| 9 'file', | 9 'file', |
| 10 'recipe_engine/json', | 10 'recipe_engine/json', |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 56 ['--build-properties=%s' % api.json.dumps(build_properties, | 56 ['--build-properties=%s' % api.json.dumps(build_properties, |
| 57 separators=(',', ':')), | 57 separators=(',', ':')), |
| 58 ('--factory-properties={"GYP_DEFINES":" component=shared_library",' | 58 ('--factory-properties={"GYP_DEFINES":" component=shared_library",' |
| 59 '"android_bot_id":"chromedriver-fyi-tests-dbg","build_url":' | 59 '"android_bot_id":"chromedriver-fyi-tests-dbg","build_url":' |
| 60 '"gs://chromium-fyi-archive/chromium.fyi/Android Builder (dbg)",' | 60 '"gs://chromium-fyi-archive/chromium.fyi/Android Builder (dbg)",' |
| 61 '"clobber":false,"gclient_env":{},"target":"Debug",' | 61 '"clobber":false,"gclient_env":{},"target":"Debug",' |
| 62 '"target_os":"android"}')], | 62 '"target_os":"android"}')], |
| 63 allow_subannotations=True) | 63 allow_subannotations=True) |
| 64 | 64 |
| 65 | 65 |
| 66 def CFI_Linux_CF_steps(api): | |
| 67 build_properties = api.properties.legacy() | |
| 68 # update scripts step; implicitly run by recipe engine. | |
| 69 # bot_update step | |
| 70 src_cfg = api.gclient.make_config(GIT_MODE=True) | |
| 71 soln = src_cfg.solutions.add() | |
| 72 soln.name = "src" | |
| 73 soln.url = "https://chromium.googlesource.com/chromium/src.git" | |
| 74 soln.custom_deps = {'src/third_party/WebKit/LayoutTests': None} | |
| 75 soln.custom_vars = {'webkit_trunk': 'http://src.chromium.org/blink/trunk', | |
| 76 'googlecode_url': 'http://%s.googlecode.com/svn', | |
| 77 'nacl_trunk': | |
| 78 'http://src.chromium.org/native_client/trunk', | |
| 79 'sourceforge_url': | |
| 80 'https://svn.code.sf.net/p/%(repo)s/code', | |
| 81 'llvm_url': 'http://llvm.org/svn/llvm-project'} | |
| 82 src_cfg.got_revision_mapping.update( | |
| 83 {'src': 'got_revision', | |
| 84 'src/third_party/WebKit': 'got_webkit_revision', | |
| 85 'src/tools/swarming_client': 'got_swarming_client_revision', | |
| 86 'src/v8': 'got_v8_revision'}) | |
| 87 api.gclient.c = src_cfg | |
| 88 result = api.bot_update.ensure_checkout(force=True) | |
| 89 build_properties.update(result.json.output.get("properties", {})) | |
| 90 | |
| 91 # clobber before runhooks | |
| 92 api.file.rmtree('clobber', api.path['checkout'].join('out', 'Release')) | |
| 93 | |
| 94 # gclient revert step; made unnecessary by bot_update | |
| 95 # gclient update step; made unnecessary by bot_update | |
| 96 # gclient runhooks wrapper step | |
|
Nico
2016/06/09 20:36:55
this function is what controlled the bot in the re
| |
| 97 env = {'CHROMIUM_GYP_SYNTAX_CHECK': '1', | |
| 98 'LANDMINES_VERBOSE': '1', | |
| 99 'DEPOT_TOOLS_UPDATE': '0', | |
| 100 'GYP_DEFINES': ' component=static_library', | |
| 101 'LLVM_DOWNLOAD_GOLD_PLUGIN': '1'} | |
| 102 api.python("gclient runhooks wrapper", | |
| 103 api.path["build"].join("scripts", "slave", | |
| 104 "runhooks_wrapper.py"), | |
| 105 env=env) | |
| 106 # cleanup_temp step | |
| 107 api.chromium.cleanup_temp() | |
| 108 # compile.py step | |
| 109 args = ['--target', 'Release', 'chromium_builder_asan'] | |
| 110 api.python("compile", | |
| 111 api.path["build"].join("scripts", "slave", "compile.py"), | |
| 112 args=args) | |
| 113 # ClusterFuzz Archive step | |
| 114 # HACK(aneeshm): chromium_utils fails without this. | |
| 115 build_properties["primary_repo"] = "" | |
| 116 api.python( | |
| 117 'ClusterFuzz Archive', | |
| 118 api.path["build"].join("scripts", "slave", "chromium", | |
| 119 "cf_archive_build.py"), | |
| 120 args= | |
| 121 ['--target', 'Release', "--build-properties=%s" % | |
| 122 api.json.dumps(build_properties, | |
| 123 separators=(',', ':')), | |
| 124 ('--factory-properties={"blink_config":"chromium","cf_archive_build":' | |
| 125 'true,"cf_archive_name":"cfi","gclient_env":' | |
| 126 '{"CHROMIUM_GYP_SYNTAX_CHECK":"1","DEPOT_TOOLS_UPDATE":"0",' | |
| 127 '"GYP_DEFINES":" component=static_library","LANDMINES_VERBOSE":"1",' | |
| 128 '"LLVM_DOWNLOAD_GOLD_PLUGIN":"1"},"gs_acl":"public-read",' | |
| 129 '"gs_bucket":"gs://chromium-browser-cfi"}')], | |
| 130 cwd=api.path["slave_build"]) | |
| 131 | |
| 132 | |
| 133 dispatch_directory = { | 66 dispatch_directory = { |
| 134 'Android ChromeDriver Tests (dbg)': Android_ChromeDriver_Tests__dbg__steps, | 67 'Android ChromeDriver Tests (dbg)': Android_ChromeDriver_Tests__dbg__steps, |
| 135 'CFI Linux CF': CFI_Linux_CF_steps, | |
| 136 } | 68 } |
| 137 | 69 |
| 138 | 70 |
| 139 def RunSteps(api): | 71 def RunSteps(api): |
| 140 if api.properties["buildername"] not in dispatch_directory: | 72 if api.properties["buildername"] not in dispatch_directory: |
| 141 raise api.step.StepFailure("Builder unsupported by recipe.") | 73 raise api.step.StepFailure("Builder unsupported by recipe.") |
| 142 else: | 74 else: |
| 143 dispatch_directory[api.properties["buildername"]](api) | 75 dispatch_directory[api.properties["buildername"]](api) |
| 144 | 76 |
| 145 | 77 |
| 146 def GenTests(api): | 78 def GenTests(api): |
| 147 yield (api.test('Android_ChromeDriver_Tests__dbg_') + | 79 yield (api.test('Android_ChromeDriver_Tests__dbg_') + |
| 148 api.properties(mastername='chromium.fyi') + | 80 api.properties(mastername='chromium.fyi') + |
| 149 api.properties(buildername='Android ChromeDriver Tests (dbg)') + | 81 api.properties(buildername='Android ChromeDriver Tests (dbg)') + |
| 150 api.properties(revision='123456789abcdef') + | 82 api.properties(revision='123456789abcdef') + |
| 151 api.properties(got_revision='123456789abcdef') + | 83 api.properties(got_revision='123456789abcdef') + |
| 152 api.properties(buildnumber='42') + | 84 api.properties(buildnumber='42') + |
| 153 api.properties(slavename='TestSlave') | 85 api.properties(slavename='TestSlave') |
| 154 ) | 86 ) |
| 155 yield (api.test('CFI_Linux_CF') + | |
| 156 api.properties(mastername='chromium.fyi') + | |
| 157 api.properties(buildername='CFI Linux CF') + | |
| 158 api.properties(revision='123456789abcdef') + | |
| 159 api.properties(got_revision='123456789abcdef') + | |
| 160 api.properties(buildnumber='42') + | |
| 161 api.properties(slavename='TestSlave') | |
| 162 ) | |
| 163 yield (api.test('builder_not_in_dispatch_directory') + | 87 yield (api.test('builder_not_in_dispatch_directory') + |
| 164 api.properties(mastername='chromium.fyi') + | 88 api.properties(mastername='chromium.fyi') + |
| 165 api.properties(buildername='nonexistent_builder') + | 89 api.properties(buildername='nonexistent_builder') + |
| 166 api.properties(slavename='TestSlave') | 90 api.properties(slavename='TestSlave') |
| 167 ) | 91 ) |
| OLD | NEW |