Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 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 'archive', | 6 'archive', |
| 7 'bot_update', | 7 'bot_update', |
| 8 'chromium', | 8 'chromium', |
| 9 'gclient', | 9 'gclient', |
| 10 'json', | 10 'json', |
| (...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 445 'testing': {'platform': 'linux'}, | 445 'testing': {'platform': 'linux'}, |
| 446 }, | 446 }, |
| 447 'LinuxGit x64': { | 447 'LinuxGit x64': { |
| 448 'recipe_config': 'chromium', | 448 'recipe_config': 'chromium', |
| 449 'testing': {'platform': 'linux'}, | 449 'testing': {'platform': 'linux'}, |
| 450 }, | 450 }, |
| 451 } | 451 } |
| 452 }, | 452 }, |
| 453 'chromium.fyi': { | 453 'chromium.fyi': { |
| 454 'builders': { | 454 'builders': { |
| 455 'Linux ARM Cross-Compile': { | |
| 456 # TODO(phajdan.jr): Re-enable goma, http://crbug.com/349236 . | |
| 457 'recipe_config': 'chromium_no_goma', | |
| 458 'GYP_DEFINES': { | |
| 459 'target_arch': 'arm', | |
| 460 'arm_float_abi': 'hard', | |
| 461 'test_isolation_mode': 'archive', | |
| 462 }, | |
| 463 'chromium_config': 'chromium', | |
| 464 'runhooks_env': { | |
| 465 'AR': 'arm-linux-gnueabihf-ar', | |
| 466 'AS': 'arm-linux-gnueabihf-as', | |
| 467 'CC': 'arm-linux-gnueabihf-gcc', | |
| 468 'CC_host': 'gcc', | |
| 469 'CXX': 'arm-linux-gnueabihf-g++', | |
| 470 'CXX_host': 'g++', | |
| 471 'RANLIB': 'arm-linux-gnueabihf-ranlib', | |
| 472 }, | |
| 473 'compile_targets': [ | |
| 474 'chromium_swarm_tests', | |
|
nodir
2014/05/23 01:24:22
Pawel, can you confirm that this will compile brow
Paweł Hajdan Jr.
2014/05/23 08:49:46
If you want to be sure please add them explicitly
nodir
2014/05/27 19:17:15
Do we really need to specify targets here? They se
| |
| 475 ], | |
| 476 'testing': { | |
| 477 'platform': 'linux', | |
| 478 'test_spec_file': 'chromium_arm.json', | |
| 479 }, | |
| 480 }, | |
| 455 'Linux Trusty': { | 481 'Linux Trusty': { |
| 456 # TODO(phajdan.jr): Re-enable goma, http://crbug.com/349236 . | 482 # TODO(phajdan.jr): Re-enable goma, http://crbug.com/349236 . |
| 457 'recipe_config': 'chromium_no_goma', | 483 'recipe_config': 'chromium_no_goma', |
| 458 'chromium_config_kwargs': { | 484 'chromium_config_kwargs': { |
| 459 'BUILD_CONFIG': 'Release', | 485 'BUILD_CONFIG': 'Release', |
| 460 'TARGET_BITS': 64, | 486 'TARGET_BITS': 64, |
| 461 }, | 487 }, |
| 462 'bot_type': 'builder_tester', | 488 'bot_type': 'builder_tester', |
| 463 'compile_targets': [ | 489 'compile_targets': [ |
| 464 'all', | 490 'all', |
| (...skipping 1011 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1476 bot_config = master_dict.get('builders', {}).get(buildername) | 1502 bot_config = master_dict.get('builders', {}).get(buildername) |
| 1477 master_config = master_dict.get('settings', {}) | 1503 master_config = master_dict.get('settings', {}) |
| 1478 recipe_config_name = bot_config['recipe_config'] | 1504 recipe_config_name = bot_config['recipe_config'] |
| 1479 assert recipe_config_name, ( | 1505 assert recipe_config_name, ( |
| 1480 'Unrecognized builder name %r for master %r.' % ( | 1506 'Unrecognized builder name %r for master %r.' % ( |
| 1481 buildername, mastername)) | 1507 buildername, mastername)) |
| 1482 recipe_config = RECIPE_CONFIGS[recipe_config_name] | 1508 recipe_config = RECIPE_CONFIGS[recipe_config_name] |
| 1483 | 1509 |
| 1484 api.chromium.set_config(recipe_config['chromium_config'], | 1510 api.chromium.set_config(recipe_config['chromium_config'], |
| 1485 **bot_config.get('chromium_config_kwargs', {})) | 1511 **bot_config.get('chromium_config_kwargs', {})) |
| 1512 # Set GYP_DEFINES explicitly because chromium config constructor does | |
| 1513 # not support that. | |
| 1514 api.chromium.c.gyp_env.GYP_DEFINES.update(bot_config.get('GYP_DEFINES', {})) | |
| 1486 for c in recipe_config.get('chromium_apply_config', []): | 1515 for c in recipe_config.get('chromium_apply_config', []): |
| 1487 api.chromium.apply_config(c) | 1516 api.chromium.apply_config(c) |
| 1488 api.gclient.set_config(recipe_config['gclient_config']) | 1517 api.gclient.set_config(recipe_config['gclient_config']) |
| 1489 for c in recipe_config.get('gclient_apply_config', []): | 1518 for c in recipe_config.get('gclient_apply_config', []): |
| 1490 api.gclient.apply_config(c) | 1519 api.gclient.apply_config(c) |
| 1491 | 1520 |
| 1492 if api.platform.is_win: | 1521 if api.platform.is_win: |
| 1493 yield api.chromium.taskkill() | 1522 yield api.chromium.taskkill() |
| 1494 | 1523 |
| 1495 # Bot Update re-uses the gclient configs. | 1524 # Bot Update re-uses the gclient configs. |
| 1496 yield api.bot_update.ensure_checkout(), | 1525 yield api.bot_update.ensure_checkout(), |
| 1497 if not api.step_history.last_step().json.output['did_run']: | 1526 if not api.step_history.last_step().json.output['did_run']: |
| 1498 yield api.gclient.checkout(), | 1527 yield api.gclient.checkout(), |
| 1499 # Whatever step is run right before this line needs to emit got_revision. | 1528 # Whatever step is run right before this line needs to emit got_revision. |
| 1500 update_step = api.step_history.last_step() | 1529 update_step = api.step_history.last_step() |
| 1501 got_revision = update_step.presentation.properties['got_revision'] | 1530 got_revision = update_step.presentation.properties['got_revision'] |
| 1502 | 1531 |
| 1503 bot_type = bot_config.get('bot_type', 'builder_tester') | 1532 bot_type = bot_config.get('bot_type', 'builder_tester') |
| 1504 | 1533 |
| 1505 if not bot_config.get('disable_runhooks'): | 1534 if not bot_config.get('disable_runhooks'): |
| 1506 yield api.chromium.runhooks() | 1535 yield api.chromium.runhooks(env=bot_config.get('runhooks_env', {})) |
| 1507 | 1536 |
| 1537 test_spec_file = bot_config.get('testing', {}).get('test_spec_file', | |
| 1538 '%s.json' % mastername) | |
| 1539 test_spec_path = api.path['checkout'].join('testing', 'buildbot', | |
| 1540 test_spec_file) | |
| 1541 def test_spec_followup_fn(step_result): | |
| 1542 step_result.presentation.step_text = 'path: %s' % test_spec_path | |
| 1508 yield api.json.read( | 1543 yield api.json.read( |
| 1509 'read test spec', | 1544 'read test spec', |
| 1510 api.path['checkout'].join('testing', 'buildbot', '%s.json' % mastername), | 1545 test_spec_path, |
| 1511 step_test_data=lambda: api.json.test_api.output({})), | 1546 step_test_data=lambda: api.json.test_api.output({}), |
| 1547 followup_fn=test_spec_followup_fn), | |
| 1512 yield api.chromium.cleanup_temp() | 1548 yield api.chromium.cleanup_temp() |
| 1513 | 1549 |
| 1514 # For non-trybot recipes we should know (seed) all steps in advance, | 1550 # For non-trybot recipes we should know (seed) all steps in advance, |
| 1515 # once we read the test spec. Instead of yielding single steps | 1551 # once we read the test spec. Instead of yielding single steps |
| 1516 # or groups of steps, yield all of them at the end. | 1552 # or groups of steps, yield all of them at the end. |
| 1517 steps = [] | 1553 steps = [] |
| 1518 | 1554 |
| 1519 if bot_type in ['builder', 'builder_tester']: | 1555 if bot_type in ['builder', 'builder_tester']: |
| 1520 compile_targets = set(bot_config.get('compile_targets', [])) | 1556 compile_targets = set(bot_config.get('compile_targets', [])) |
| 1521 for test in bot_config.get('tests', []): | 1557 for test in bot_config.get('tests', []): |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1609 api.platform('linux', 64) + | 1645 api.platform('linux', 64) + |
| 1610 api.override_step_data('read test spec', api.json.output({ | 1646 api.override_step_data('read test spec', api.json.output({ |
| 1611 'Linux Tests': { | 1647 'Linux Tests': { |
| 1612 'gtest_tests': [ | 1648 'gtest_tests': [ |
| 1613 'base_unittests', | 1649 'base_unittests', |
| 1614 {'test': 'browser_tests', 'shard_index': 0, 'total_shards': 2}, | 1650 {'test': 'browser_tests', 'shard_index': 0, 'total_shards': 2}, |
| 1615 ], | 1651 ], |
| 1616 }, | 1652 }, |
| 1617 })) | 1653 })) |
| 1618 ) | 1654 ) |
| OLD | NEW |