Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(200)

Side by Side Diff: PRESUBMIT.py

Issue 197963003: Change top-level PRESUBMIT to support split tryserver (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | PRESUBMIT_test.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 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 """Top-level presubmit script for Chromium. 5 """Top-level presubmit script for Chromium.
6 6
7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
8 for more details about the presubmit API built into gcl. 8 for more details about the presubmit API built into gcl.
9 """ 9 """
10 10
(...skipping 1352 matching lines...) Expand 10 before | Expand all | Expand 10 after
1363 'net_unittests', 1363 'net_unittests',
1364 'unit_tests', 1364 'unit_tests',
1365 ) 1365 )
1366 1366
1367 for bot in builders_and_tests: 1367 for bot in builders_and_tests:
1368 if bot in swarm_enabled_builders: 1368 if bot in swarm_enabled_builders:
1369 builders_and_tests[bot] = [x + '_swarm' if x in swarm_enabled_tests else x 1369 builders_and_tests[bot] = [x + '_swarm' if x in swarm_enabled_tests else x
1370 for x in builders_and_tests[bot]] 1370 for x in builders_and_tests[bot]]
1371 1371
1372 if bots: 1372 if bots:
1373 return [(bot, set(builders_and_tests[bot])) for bot in bots] 1373 return {
1374 'tryserver.chromium': dict((bot, set(builders_and_tests[bot]))
1375 for bot in bots)
1376 }
1374 else: 1377 else:
1375 return [(bot, set(tests)) for bot, tests in builders_and_tests.iteritems()] 1378 return {
1379 'tryserver.chromium': dict(
1380 (bot, set(tests))
1381 for bot, tests in builders_and_tests.iteritems())
1382 }
1376 1383
1377 1384
1378 def CheckChangeOnCommit(input_api, output_api): 1385 def CheckChangeOnCommit(input_api, output_api):
1379 results = [] 1386 results = []
1380 results.extend(_CommonChecks(input_api, output_api)) 1387 results.extend(_CommonChecks(input_api, output_api))
1381 # TODO(thestig) temporarily disabled, doesn't work in third_party/ 1388 # TODO(thestig) temporarily disabled, doesn't work in third_party/
1382 #results.extend(input_api.canned_checks.CheckSvnModifiedDirectories( 1389 #results.extend(input_api.canned_checks.CheckSvnModifiedDirectories(
1383 # input_api, output_api, sources)) 1390 # input_api, output_api, sources))
1384 # Make sure the tree is 'open'. 1391 # Make sure the tree is 'open'.
1385 results.extend(input_api.canned_checks.CheckTreeIsOpen( 1392 results.extend(input_api.canned_checks.CheckTreeIsOpen(
1386 input_api, 1393 input_api,
1387 output_api, 1394 output_api,
1388 json_url='http://chromium-status.appspot.com/current?format=json')) 1395 json_url='http://chromium-status.appspot.com/current?format=json'))
1389 1396
1390 results.extend(input_api.canned_checks.CheckChangeHasBugField( 1397 results.extend(input_api.canned_checks.CheckChangeHasBugField(
1391 input_api, output_api)) 1398 input_api, output_api))
1392 results.extend(input_api.canned_checks.CheckChangeHasDescription( 1399 results.extend(input_api.canned_checks.CheckChangeHasDescription(
1393 input_api, output_api)) 1400 input_api, output_api))
1394 results.extend(_CheckSubversionConfig(input_api, output_api)) 1401 results.extend(_CheckSubversionConfig(input_api, output_api))
1395 return results 1402 return results
1396 1403
1397 1404
1398 def GetPreferredTrySlaves(project, change): 1405 def GetPreferredTryMasters(project, change):
1399 files = change.LocalPaths() 1406 files = change.LocalPaths()
1400 1407
1401 if not files or all(re.search(r'[\\/]OWNERS$', f) for f in files): 1408 if not files or all(re.search(r'[\\/]OWNERS$', f) for f in files):
1402 return [] 1409 return {}
1403 1410
1404 if all(re.search('\.(m|mm)$|(^|[/_])mac[/_.]', f) for f in files): 1411 if all(re.search('\.(m|mm)$|(^|[/_])mac[/_.]', f) for f in files):
1405 return GetDefaultTryConfigs([ 1412 return GetDefaultTryConfigs([
1406 'mac_chromium_compile_dbg', 1413 'mac_chromium_compile_dbg',
1407 'mac_chromium_rel', 1414 'mac_chromium_rel',
1408 'mac_rel' 1415 'mac_rel'
1409 ]) 1416 ])
1410 if all(re.search('(^|[/_])win[/_.]', f) for f in files): 1417 if all(re.search('(^|[/_])win[/_.]', f) for f in files):
1411 return GetDefaultTryConfigs(['win', 'win_rel']) 1418 return GetDefaultTryConfigs(['win', 'win_rel'])
1412 if all(re.search('(^|[/_])android[/_.]', f) for f in files): 1419 if all(re.search('(^|[/_])android[/_.]', f) for f in files):
1413 return GetDefaultTryConfigs([ 1420 return GetDefaultTryConfigs([
1414 'android_aosp', 1421 'android_aosp',
1415 'android_clang_dbg', 1422 'android_clang_dbg',
1416 'android_dbg', 1423 'android_dbg',
1417 ]) 1424 ])
1418 if all(re.search('[/_]ios[/_.]', f) for f in files): 1425 if all(re.search('[/_]ios[/_.]', f) for f in files):
1419 return GetDefaultTryConfigs(['ios_rel_device', 'ios_dbg_simulator']) 1426 return GetDefaultTryConfigs(['ios_rel_device', 'ios_dbg_simulator'])
1420 1427
1421 trybots = GetDefaultTryConfigs([ 1428 builders = [
1422 'android_clang_dbg', 1429 'android_clang_dbg',
1423 'android_dbg', 1430 'android_dbg',
1424 'ios_dbg_simulator', 1431 'ios_dbg_simulator',
1425 'ios_rel_device', 1432 'ios_rel_device',
1426 'linux_gtk', 1433 'linux_gtk',
1427 'linux_asan', 1434 'linux_asan',
1428 'linux_chromium_chromeos_rel', 1435 'linux_chromium_chromeos_rel',
1429 'linux_chromium_clang_dbg', 1436 'linux_chromium_clang_dbg',
1430 'linux_nacl_sdk_build', 1437 'linux_nacl_sdk_build',
1431 'linux_chromium_rel', 1438 'linux_chromium_rel',
1432 'linux_rel', 1439 'linux_rel',
1433 'mac_chromium_compile_dbg', 1440 'mac_chromium_compile_dbg',
1434 'mac_nacl_sdk_build', 1441 'mac_nacl_sdk_build',
1435 'mac_chromium_rel', 1442 'mac_chromium_rel',
1436 'mac_rel', 1443 'mac_rel',
1437 'win', 1444 'win',
1438 'win_nacl_sdk_build', 1445 'win_nacl_sdk_build',
1439 'win_rel', 1446 'win_rel',
1440 'win_x64_rel', 1447 'win_x64_rel',
1441 ]) 1448 ]
1442 1449
1443 # Match things like path/aura/file.cc and path/file_aura.cc. 1450 # Match things like path/aura/file.cc and path/file_aura.cc.
1444 # Same for chromeos. 1451 # Same for chromeos.
1445 if any(re.search('[/_](aura|chromeos)', f) for f in files): 1452 if any(re.search('[/_](aura|chromeos)', f) for f in files):
1446 trybots.extend(GetDefaultTryConfigs([ 1453 builders.extend([
1447 'linux_chromeos_asan', 'linux_chromium_chromeos_clang_dbg'])) 1454 'linux_chromeos_asan',
1455 'linux_chromium_chromeos_clang_dbg'
1456 ])
1448 1457
1449 # If there are gyp changes to base, build, or chromeos, run a full cros build 1458 # If there are gyp changes to base, build, or chromeos, run a full cros build
1450 # in addition to the shorter linux_chromeos build. Changes to high level gyp 1459 # in addition to the shorter linux_chromeos build. Changes to high level gyp
1451 # files have a much higher chance of breaking the cros build, which is 1460 # files have a much higher chance of breaking the cros build, which is
1452 # differnt from the linux_chromeos build that most chrome developers test 1461 # differnt from the linux_chromeos build that most chrome developers test
1453 # with. 1462 # with.
1454 if any(re.search('^(base|build|chromeos).*\.gypi?$', f) for f in files): 1463 if any(re.search('^(base|build|chromeos).*\.gypi?$', f) for f in files):
1455 trybots.extend(GetDefaultTryConfigs(['cros_x86'])) 1464 builders.extend(['cros_x86'])
1456 1465
1457 # The AOSP bot doesn't build the chrome/ layer, so ignore any changes to it 1466 # The AOSP bot doesn't build the chrome/ layer, so ignore any changes to it
1458 # unless they're .gyp(i) files as changes to those files can break the gyp 1467 # unless they're .gyp(i) files as changes to those files can break the gyp
1459 # step on that bot. 1468 # step on that bot.
1460 if (not all(re.search('^chrome', f) for f in files) or 1469 if (not all(re.search('^chrome', f) for f in files) or
1461 any(re.search('\.gypi?$', f) for f in files)): 1470 any(re.search('\.gypi?$', f) for f in files)):
1462 trybots.extend(GetDefaultTryConfigs(['android_aosp'])) 1471 builders.extend(['android_aosp'])
1463 1472
1464 return trybots 1473 return GetDefaultTryConfigs(builders)
OLDNEW
« no previous file with comments | « no previous file | PRESUBMIT_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698