libv8 4.5.95.5 → 5.0.71.48.0beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +45 -19
- data/CHANGELOG.md +14 -0
- data/README.md +30 -15
- data/Rakefile +7 -6
- data/ext/libv8/arch.rb +5 -4
- data/ext/libv8/builder.rb +25 -19
- data/ext/libv8/compiler.rb +6 -33
- data/ext/libv8/location.rb +7 -8
- data/lib/libv8/version.rb +1 -1
- data/libv8.gemspec +1 -1
- data/patches/build-standalone-static-library.patch +14 -0
- data/patches/disable-building-tests.patch +48 -10
- data/patches/fPIC-for-static.patch +3 -3
- data/release/x86-linux/Vagrantfile +8 -4
- data/release/x86_64-freebsd10/Vagrantfile +86 -0
- data/release/x86_64-linux/Vagrantfile +8 -4
- data/spec/compiler_spec.rb +5 -29
- data/spec/support/compiler_helpers.rb +2 -4
- data/vendor/depot_tools/.gitignore +15 -3
- data/vendor/depot_tools/OWNERS +2 -2
- data/vendor/depot_tools/PRESUBMIT.py +4 -2
- data/vendor/depot_tools/WATCHLISTS +6 -0
- data/vendor/depot_tools/apply_issue.py +70 -38
- data/vendor/depot_tools/bootstrap/win/README.md +66 -0
- data/vendor/depot_tools/bootstrap/win/git-bash.template.sh +12 -0
- data/vendor/depot_tools/bootstrap/win/git.template.bat +5 -0
- data/vendor/depot_tools/bootstrap/win/profile.d.python.sh +20 -0
- data/vendor/depot_tools/bootstrap/win/win_tools.bat +96 -45
- data/vendor/depot_tools/breakpad.py +6 -141
- data/vendor/depot_tools/buildbucket.py +45 -31
- data/vendor/depot_tools/cbuildbot +1 -0
- data/vendor/depot_tools/checkout.py +2 -1
- data/vendor/depot_tools/chrome_set_ver +1 -0
- data/vendor/depot_tools/cit +8 -0
- data/vendor/depot_tools/cit.bat +11 -0
- data/vendor/depot_tools/cit.py +120 -0
- data/vendor/depot_tools/codereview.settings +0 -2
- data/vendor/depot_tools/commit_queue +1 -5
- data/vendor/depot_tools/commit_queue.bat +1 -4
- data/vendor/depot_tools/commit_queue.py +78 -29
- data/vendor/depot_tools/cpplint.py +22 -14
- data/vendor/depot_tools/cros +1 -0
- data/vendor/depot_tools/cros_sdk +1 -0
- data/vendor/depot_tools/depot-tools-auth.py +3 -3
- data/vendor/depot_tools/download_from_google_storage.py +101 -21
- data/vendor/depot_tools/drover.py +2 -3
- data/vendor/depot_tools/fetch.py +31 -27
- data/vendor/depot_tools/{recipes → fetch_configs}/android.py +4 -4
- data/vendor/depot_tools/fetch_configs/breakpad.py +45 -0
- data/vendor/depot_tools/{recipes → fetch_configs}/chromium.py +3 -3
- data/vendor/depot_tools/{recipes/recipe_util.py → fetch_configs/config_util.py} +3 -3
- data/vendor/depot_tools/fetch_configs/crashpad.py +41 -0
- data/vendor/depot_tools/{recipes → fetch_configs}/dart.py +3 -3
- data/vendor/depot_tools/{recipes/pdfium.py → fetch_configs/dartino.py} +14 -13
- data/vendor/depot_tools/{recipes → fetch_configs}/dartium.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/depot_tools.py +3 -3
- data/vendor/depot_tools/fetch_configs/gyp.py +42 -0
- data/vendor/depot_tools/{recipes → fetch_configs}/infra.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/infra_internal.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/ios.py +4 -4
- data/vendor/depot_tools/{recipes → fetch_configs}/mojo.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/nacl.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/naclports.py +3 -3
- data/vendor/depot_tools/fetch_configs/pdfium.py +40 -0
- data/vendor/depot_tools/{recipes → fetch_configs}/skia.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/skia_buildbot.py +3 -3
- data/vendor/depot_tools/fetch_configs/syzygy.py +41 -0
- data/vendor/depot_tools/{recipes → fetch_configs}/v8.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/webrtc.py +3 -3
- data/vendor/depot_tools/{recipes → fetch_configs}/webrtc_android.py +4 -4
- data/vendor/depot_tools/{recipes → fetch_configs}/webrtc_ios.py +4 -4
- data/vendor/depot_tools/fix_encoding.py +6 -6
- data/vendor/depot_tools/gcl.py +11 -21
- data/vendor/depot_tools/gclient +10 -0
- data/vendor/depot_tools/gclient-new-workdir.py +7 -38
- data/vendor/depot_tools/gclient.bat +2 -2
- data/vendor/depot_tools/gclient.py +85 -65
- data/vendor/depot_tools/gclient_scm.py +83 -10
- data/vendor/depot_tools/gclient_utils.py +5 -1
- data/vendor/depot_tools/gerrit_util.py +243 -26
- data/vendor/depot_tools/git-auto-svn +1 -1
- data/vendor/depot_tools/git-cache +1 -1
- data/vendor/depot_tools/git-cherry-pick-upload +1 -1
- data/vendor/depot_tools/git-cl +1 -1
- data/vendor/depot_tools/git-drover +6 -0
- data/vendor/depot_tools/git-find-releases +6 -0
- data/vendor/depot_tools/git-footers +1 -1
- data/vendor/depot_tools/git-freeze +1 -1
- data/vendor/depot_tools/git-gs +1 -1
- data/vendor/depot_tools/git-hyper-blame +6 -0
- data/vendor/depot_tools/git-map +1 -1
- data/vendor/depot_tools/git-map-branches +1 -1
- data/vendor/depot_tools/git-mark-merge-base +1 -1
- data/vendor/depot_tools/git-nav-downstream +1 -1
- data/vendor/depot_tools/git-new-branch +1 -1
- data/vendor/depot_tools/git-number +1 -1
- data/vendor/depot_tools/git-rebase-update +1 -1
- data/vendor/depot_tools/git-rename-branch +1 -1
- data/vendor/depot_tools/git-reparent-branch +1 -1
- data/vendor/depot_tools/git-retry +1 -1
- data/vendor/depot_tools/git-squash-branch +1 -1
- data/vendor/depot_tools/git-thaw +1 -1
- data/vendor/depot_tools/git-try +1 -1
- data/vendor/depot_tools/git-upstream-diff +1 -1
- data/vendor/depot_tools/git_auto_svn.py +24 -6
- data/vendor/depot_tools/git_cache.py +74 -27
- data/vendor/depot_tools/git_cl.py +2118 -747
- data/vendor/depot_tools/git_common.py +100 -6
- data/vendor/depot_tools/git_dates.py +62 -0
- data/vendor/depot_tools/git_drover.py +424 -0
- data/vendor/depot_tools/git_find_releases.py +65 -0
- data/vendor/depot_tools/git_footers.py +42 -0
- data/vendor/depot_tools/git_hyper_blame.py +391 -0
- data/vendor/depot_tools/git_map_branches.py +8 -6
- data/vendor/depot_tools/git_new_branch.py +6 -1
- data/vendor/depot_tools/git_rebase_update.py +56 -16
- data/vendor/depot_tools/git_reparent_branch.py +13 -0
- data/vendor/depot_tools/git_try.py +0 -2
- data/vendor/depot_tools/gsutil.py +51 -20
- data/vendor/depot_tools/infra/config/OWNERS +3 -1
- data/vendor/depot_tools/infra/config/cq.cfg +7 -3
- data/vendor/depot_tools/infra/config/recipes.cfg +9 -0
- data/vendor/depot_tools/luci_hacks/README.md +35 -0
- data/vendor/depot_tools/{bootstrap/virtualenv/tests → luci_hacks}/__init__.py +0 -0
- data/vendor/depot_tools/luci_hacks/luci_recipe_run.isolate +12 -0
- data/vendor/depot_tools/luci_hacks/luci_recipe_run.py +81 -0
- data/vendor/depot_tools/luci_hacks/trigger_luci_job.py +128 -0
- data/vendor/depot_tools/man/html/depot_tools.html +9 -1
- data/vendor/depot_tools/man/html/depot_tools_tutorial.html +4 -4
- data/vendor/depot_tools/man/html/git-drover.html +191 -35
- data/vendor/depot_tools/man/html/git-hyper-blame.html +878 -0
- data/vendor/depot_tools/man/html/git-rebase-update.html +9 -4
- data/vendor/depot_tools/man/man1/git-drover.1 +189 -36
- data/vendor/depot_tools/man/man1/git-hyper-blame.1 +128 -0
- data/vendor/depot_tools/man/man1/git-rebase-update.1 +8 -6
- data/vendor/depot_tools/man/man7/depot_tools.7 +9 -4
- data/vendor/depot_tools/man/src/_git-hyper-blame_desc.helper.txt +1 -0
- data/vendor/depot_tools/man/src/common_demo_functions.sh +5 -0
- data/vendor/depot_tools/man/src/depot_tools_tutorial.txt +1 -1
- data/vendor/depot_tools/man/src/git-drover.demo.1.sh +11 -16
- data/vendor/depot_tools/man/src/git-drover.demo.3.sh +27 -0
- data/vendor/depot_tools/man/src/git-drover.demo.4.sh +39 -0
- data/vendor/depot_tools/man/src/git-drover.txt +49 -3
- data/vendor/depot_tools/man/src/git-hyper-blame.demo.1.sh +3 -0
- data/vendor/depot_tools/man/src/git-hyper-blame.demo.2.sh +4 -0
- data/vendor/depot_tools/man/src/git-hyper-blame.demo.common.sh +57 -0
- data/vendor/depot_tools/man/src/git-hyper-blame.txt +85 -0
- data/vendor/depot_tools/man/src/git-rebase-update.txt +5 -1
- data/vendor/depot_tools/my_activity.py +6 -21
- data/vendor/depot_tools/ninja +2 -2
- data/vendor/depot_tools/ninja-linux32 +0 -0
- data/vendor/depot_tools/ninja-linux64 +0 -0
- data/vendor/depot_tools/ninja-mac +0 -0
- data/vendor/depot_tools/ninja.exe +0 -0
- data/vendor/depot_tools/presubmit_canned_checks.py +83 -69
- data/vendor/depot_tools/presubmit_support.py +126 -42
- data/vendor/depot_tools/pylint.py +5 -1
- data/vendor/depot_tools/python_runner.sh +55 -0
- data/vendor/depot_tools/recipe_modules/bot_update/__init__.py +32 -0
- data/vendor/depot_tools/recipe_modules/bot_update/api.py +283 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/basic.json +56 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/basic_output_manifest.json +63 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/basic_with_branch_heads.json +57 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/clobber.json +44 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/forced.json +57 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/gerrit_no_reset.json +44 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/no_shallow.json +44 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/off.json +43 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/reset_root_solution_revision.json +43 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/svn_mode.json +59 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/trychange.json +58 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/trychange_oauth2.json +60 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob.json +58 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail.json +60 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail_patch.json +81 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail_patch_download.json +81 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_gerrit_angle.json +49 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_v8.json +61 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_v8_head_by_default.json +51 -0
- data/vendor/depot_tools/recipe_modules/bot_update/example.py +172 -0
- data/vendor/depot_tools/{bootstrap/virtualenv/virtualenv_support → recipe_modules/bot_update/resources}/__init__.py +0 -0
- data/vendor/depot_tools/recipe_modules/bot_update/resources/bot_update.py +1764 -0
- data/vendor/depot_tools/recipe_modules/bot_update/test_api.py +86 -0
- data/vendor/depot_tools/recipe_modules/depot_tools/__init__.py +3 -0
- data/vendor/depot_tools/recipe_modules/depot_tools/api.py +27 -0
- data/vendor/depot_tools/recipe_modules/gclient/__init__.py +10 -0
- data/vendor/depot_tools/recipe_modules/gclient/api.py +378 -0
- data/vendor/depot_tools/recipe_modules/gclient/config.py +671 -0
- data/vendor/depot_tools/recipe_modules/gclient/example.expected/basic.json +172 -0
- data/vendor/depot_tools/recipe_modules/gclient/example.expected/revision.json +174 -0
- data/vendor/depot_tools/recipe_modules/gclient/example.expected/tryserver.json +185 -0
- data/vendor/depot_tools/recipe_modules/gclient/example.py +100 -0
- data/vendor/depot_tools/recipe_modules/gclient/test_api.py +37 -0
- data/vendor/depot_tools/recipe_modules/git/__init__.py +9 -0
- data/vendor/depot_tools/recipe_modules/git/api.py +377 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/basic.json +177 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/basic_branch.json +177 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/basic_file_name.json +179 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/basic_hash.json +176 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/basic_ref.json +177 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/basic_submodule_update_force.json +178 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/can_fail_build.json +153 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/cannot_fail_build.json +181 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/cat-file_test.json +199 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_delta.json +250 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_failed.json +181 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_with_bad_output.json +182 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_with_bad_output_fails_build.json +102 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/curl_trace_file.json +181 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/platform_win.json +186 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/rebase_failed.json +179 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/remote_not_origin.json +179 -0
- data/vendor/depot_tools/recipe_modules/git/example.expected/set_got_revision.json +178 -0
- data/vendor/depot_tools/recipe_modules/git/example.py +147 -0
- data/vendor/depot_tools/recipe_modules/git/resources/git_setup.py +61 -0
- data/vendor/depot_tools/recipe_modules/git/test_api.py +18 -0
- data/vendor/depot_tools/recipe_modules/git_cl/__init__.py +4 -0
- data/vendor/depot_tools/recipe_modules/git_cl/api.py +25 -0
- data/vendor/depot_tools/recipe_modules/git_cl/config.py +22 -0
- data/vendor/depot_tools/recipe_modules/git_cl/example.expected/basic.json +66 -0
- data/vendor/depot_tools/recipe_modules/git_cl/example.py +41 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/__init__.py +4 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/api.py +12 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/basic.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_buildbot_linux.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_buildbot_mac.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_buildbot_win.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_kitchen_linux.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_kitchen_mac.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_kitchen_win.json +14 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/example.py +28 -0
- data/vendor/depot_tools/recipe_modules/infra_paths/path_config.py +45 -0
- data/vendor/depot_tools/recipe_modules/presubmit/__init__.py +4 -0
- data/vendor/depot_tools/recipe_modules/presubmit/api.py +20 -0
- data/vendor/depot_tools/recipe_modules/presubmit/example.expected/basic.json +18 -0
- data/vendor/depot_tools/recipe_modules/presubmit/example.py +15 -0
- data/vendor/depot_tools/recipe_modules/rietveld/__init__.py +5 -0
- data/vendor/depot_tools/recipe_modules/rietveld/api.py +94 -0
- data/vendor/depot_tools/recipe_modules/rietveld/example.expected/basic.json +30 -0
- data/vendor/depot_tools/recipe_modules/rietveld/example.py +24 -0
- data/vendor/depot_tools/recipe_modules/tryserver/__init__.py +15 -0
- data/vendor/depot_tools/recipe_modules/tryserver/api.py +280 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_git_patch.json +104 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_rietveld_patch.json +58 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_rietveld_patch_new.json +58 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_svn_patch.json +68 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_wrong_patch.json +43 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_wrong_patch_new.json +43 -0
- data/vendor/depot_tools/recipe_modules/tryserver/example.py +53 -0
- data/vendor/depot_tools/recipe_modules/tryserver/test_api.py +7 -0
- data/vendor/depot_tools/recipes.py +136 -0
- data/vendor/depot_tools/repo +1 -1
- data/vendor/depot_tools/rietveld.py +46 -15
- data/vendor/depot_tools/roll_dep.py +97 -36
- data/vendor/depot_tools/scm.py +3 -3
- data/vendor/depot_tools/setup_color.py +94 -0
- data/vendor/depot_tools/subprocess2.py +10 -1
- data/vendor/depot_tools/third_party/cq_client/OWNERS +0 -1
- data/vendor/depot_tools/third_party/cq_client/README.md +47 -9
- data/vendor/depot_tools/third_party/cq_client/cq.pb.go +617 -0
- data/vendor/depot_tools/third_party/cq_client/cq.proto +75 -17
- data/vendor/depot_tools/third_party/cq_client/cq_pb2.py +168 -41
- data/vendor/depot_tools/third_party/cq_client/testdata/cq_gerrit.cfg +55 -0
- data/vendor/depot_tools/third_party/cq_client/{test/cq_example.cfg → testdata/cq_rietveld.cfg} +14 -6
- data/vendor/depot_tools/third_party/fancy_urllib/README +5 -4
- data/vendor/depot_tools/third_party/fancy_urllib/__init__.py +114 -52
- data/vendor/depot_tools/third_party/protobuf26/README.chromium +9 -6
- data/vendor/depot_tools/third_party/upload.py +17 -31
- data/vendor/depot_tools/trychange.py +0 -2
- data/vendor/depot_tools/update_depot_tools +29 -11
- data/vendor/depot_tools/update_depot_tools.bat +4 -9
- data/vendor/depot_tools/upload_to_google_storage.py +42 -5
- data/vendor/depot_tools/win_toolchain/OWNERS +1 -0
- data/vendor/depot_tools/win_toolchain/get_toolchain_if_necessary.py +227 -52
- data/vendor/depot_tools/win_toolchain/package_from_installed.py +203 -88
- metadata +161 -81
- data/patches/arm/do-not-imply-vfp3-and-armv7.patch +0 -16
- data/patches/arm/do-not-use-vfp2.patch +0 -13
- data/patches/clang51/no-unused-variable.patch +0 -12
- data/vendor/depot_tools/bootstrap/.gitignore +0 -2
- data/vendor/depot_tools/bootstrap/bootstrap.py +0 -234
- data/vendor/depot_tools/bootstrap/deps.pyl +0 -15
- data/vendor/depot_tools/bootstrap/util.py +0 -87
- data/vendor/depot_tools/bootstrap/virtualenv/.gitignore +0 -10
- data/vendor/depot_tools/bootstrap/virtualenv/.travis.yml +0 -28
- data/vendor/depot_tools/bootstrap/virtualenv/AUTHORS.txt +0 -91
- data/vendor/depot_tools/bootstrap/virtualenv/CONTRIBUTING.rst +0 -21
- data/vendor/depot_tools/bootstrap/virtualenv/LICENSE.txt +0 -22
- data/vendor/depot_tools/bootstrap/virtualenv/MANIFEST.in +0 -11
- data/vendor/depot_tools/bootstrap/virtualenv/README.rst +0 -10
- data/vendor/depot_tools/bootstrap/virtualenv/bin/rebuild-script.py +0 -71
- data/vendor/depot_tools/bootstrap/virtualenv/docs/changes.rst +0 -747
- data/vendor/depot_tools/bootstrap/virtualenv/docs/conf.py +0 -149
- data/vendor/depot_tools/bootstrap/virtualenv/docs/development.rst +0 -61
- data/vendor/depot_tools/bootstrap/virtualenv/docs/index.rst +0 -137
- data/vendor/depot_tools/bootstrap/virtualenv/docs/installation.rst +0 -58
- data/vendor/depot_tools/bootstrap/virtualenv/docs/make.bat +0 -170
- data/vendor/depot_tools/bootstrap/virtualenv/docs/reference.rst +0 -256
- data/vendor/depot_tools/bootstrap/virtualenv/docs/userguide.rst +0 -249
- data/vendor/depot_tools/bootstrap/virtualenv/scripts/virtualenv +0 -3
- data/vendor/depot_tools/bootstrap/virtualenv/setup.py +0 -111
- data/vendor/depot_tools/bootstrap/virtualenv/tests/test_activate.sh +0 -94
- data/vendor/depot_tools/bootstrap/virtualenv/tests/test_activate_expected.output +0 -2
- data/vendor/depot_tools/bootstrap/virtualenv/tests/test_virtualenv.py +0 -139
- data/vendor/depot_tools/bootstrap/virtualenv/tests/tox.ini +0 -12
- data/vendor/depot_tools/bootstrap/virtualenv/tox.ini +0 -17
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv.py +0 -2367
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.bat +0 -26
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.csh +0 -42
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.fish +0 -74
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.ps1 +0 -150
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.sh +0 -80
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate_this.py +0 -34
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/deactivate.bat +0 -20
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/distutils-init.py +0 -101
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/distutils.cfg +0 -6
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/site.py +0 -758
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_support/pip-6.0-py2.py3-none-any.whl +0 -0
- data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_support/setuptools-8.2.1-py2.py3-none-any.whl +0 -0
- data/vendor/depot_tools/bootstrap/win/README.google +0 -16
- data/vendor/depot_tools/cbuildbot +0 -96
- data/vendor/depot_tools/chrome_set_ver +0 -96
- data/vendor/depot_tools/cros +0 -96
- data/vendor/depot_tools/cros_sdk +0 -96
- data/vendor/depot_tools/git-cl-upload-hook +0 -52
- data/vendor/depot_tools/git-crup +0 -45
- data/vendor/depot_tools/python_git_runner.sh +0 -36
- data/vendor/depot_tools/recipes/blink.py +0 -59
- data/vendor/depot_tools/third_party/cq_client/test/validate_config_test.py +0 -52
- data/vendor/depot_tools/third_party/cq_client/validate_config.py +0 -108
- data/vendor/depot_tools/win_toolchain/toolchain2013.py +0 -494
@@ -27,16 +27,18 @@ Branches are colorized as follows:
|
|
27
27
|
|
28
28
|
import argparse
|
29
29
|
import collections
|
30
|
-
import
|
30
|
+
import os
|
31
31
|
import subprocess2
|
32
|
-
|
33
|
-
from third_party import colorama
|
34
|
-
from third_party.colorama import Fore, Style
|
32
|
+
import sys
|
35
33
|
|
36
34
|
from git_common import current_branch, upstream, tags, get_branches_info
|
37
35
|
from git_common import get_git_version, MIN_UPSTREAM_TRACK_GIT_VERSION, hash_one
|
38
36
|
from git_common import run
|
39
37
|
|
38
|
+
import setup_color
|
39
|
+
|
40
|
+
from third_party.colorama import Fore, Style
|
41
|
+
|
40
42
|
DEFAULT_SEPARATOR = ' ' * 4
|
41
43
|
|
42
44
|
|
@@ -174,7 +176,7 @@ class BranchMapper(object):
|
|
174
176
|
return not parent or parent in self.__gone_branches
|
175
177
|
|
176
178
|
def __color_for_branch(self, branch, branch_hash):
|
177
|
-
if branch.startswith('origin'):
|
179
|
+
if branch.startswith('origin/'):
|
178
180
|
color = Fore.RED
|
179
181
|
elif branch.startswith('branch-heads'):
|
180
182
|
color = Fore.BLUE
|
@@ -271,7 +273,7 @@ class BranchMapper(object):
|
|
271
273
|
|
272
274
|
|
273
275
|
def main(argv):
|
274
|
-
|
276
|
+
setup_color.init()
|
275
277
|
if get_git_version() < MIN_UPSTREAM_TRACK_GIT_VERSION:
|
276
278
|
print >> sys.stderr, (
|
277
279
|
'This tool will not show all tracking information for git version '
|
@@ -3,6 +3,10 @@
|
|
3
3
|
# Use of this source code is governed by a BSD-style license that can be
|
4
4
|
# found in the LICENSE file.
|
5
5
|
|
6
|
+
"""
|
7
|
+
Create new branch tracking origin/master by default.
|
8
|
+
"""
|
9
|
+
|
6
10
|
import argparse
|
7
11
|
import sys
|
8
12
|
|
@@ -14,7 +18,8 @@ from git_common import hash_one
|
|
14
18
|
|
15
19
|
def main(args):
|
16
20
|
parser = argparse.ArgumentParser(
|
17
|
-
formatter_class=argparse.ArgumentDefaultsHelpFormatter
|
21
|
+
formatter_class=argparse.ArgumentDefaultsHelpFormatter,
|
22
|
+
description=__doc__,
|
18
23
|
)
|
19
24
|
parser.add_argument('branch_name')
|
20
25
|
g = parser.add_mutually_exclusive_group()
|
@@ -49,9 +49,8 @@ def fetch_remotes(branch_tree):
|
|
49
49
|
remotes = set()
|
50
50
|
tag_set = git.tags()
|
51
51
|
fetchspec_map = {}
|
52
|
-
all_fetchspec_configs = git.
|
53
|
-
|
54
|
-
for fetchspec_config in all_fetchspec_configs.splitlines():
|
52
|
+
all_fetchspec_configs = git.config_regexp(r'^remote\..*\.fetch')
|
53
|
+
for fetchspec_config in all_fetchspec_configs:
|
55
54
|
key, _, fetchspec = fetchspec_config.partition(' ')
|
56
55
|
dest_spec = fetchspec.partition(':')[2]
|
57
56
|
remote_name = key.split('.')[1]
|
@@ -87,32 +86,54 @@ def remove_empty_branches(branch_tree):
|
|
87
86
|
tag_set = git.tags()
|
88
87
|
ensure_root_checkout = git.once(lambda: git.run('checkout', git.root()))
|
89
88
|
|
90
|
-
deletions =
|
89
|
+
deletions = {}
|
90
|
+
reparents = {}
|
91
91
|
downstreams = collections.defaultdict(list)
|
92
92
|
for branch, parent in git.topo_iter(branch_tree, top_down=False):
|
93
93
|
downstreams[parent].append(branch)
|
94
94
|
|
95
|
-
|
95
|
+
# If branch and parent have the same tree, then branch has to be marked
|
96
|
+
# for deletion and its children and grand-children reparented to parent.
|
97
|
+
if git.hash_one(branch+":") == git.hash_one(parent+":"):
|
96
98
|
ensure_root_checkout()
|
97
99
|
|
98
100
|
logging.debug('branch %s merged to %s', branch, parent)
|
99
101
|
|
102
|
+
# Mark branch for deletion while remembering the ordering, then add all
|
103
|
+
# its children as grand-children of its parent and record reparenting
|
104
|
+
# information if necessary.
|
105
|
+
deletions[branch] = len(deletions)
|
106
|
+
|
100
107
|
for down in downstreams[branch]:
|
101
108
|
if down in deletions:
|
102
109
|
continue
|
103
110
|
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
111
|
+
# Record the new and old parent for down, or update such a record
|
112
|
+
# if it already exists. Keep track of the ordering so that reparenting
|
113
|
+
# happen in topological order.
|
114
|
+
downstreams[parent].append(down)
|
115
|
+
if down not in reparents:
|
116
|
+
reparents[down] = (len(reparents), parent, branch)
|
109
117
|
else:
|
110
|
-
|
111
|
-
|
112
|
-
|
118
|
+
order, _, old_parent = reparents[down]
|
119
|
+
reparents[down] = (order, parent, old_parent)
|
120
|
+
|
121
|
+
# Apply all reparenting recorded, in order.
|
122
|
+
for branch, value in sorted(reparents.iteritems(), key=lambda x:x[1][0]):
|
123
|
+
_, parent, old_parent = value
|
124
|
+
if parent in tag_set:
|
125
|
+
git.set_branch_config(branch, 'remote', '.')
|
126
|
+
git.set_branch_config(branch, 'merge', 'refs/tags/%s' % parent)
|
127
|
+
print ('Reparented %s to track %s [tag] (was tracking %s)'
|
128
|
+
% (branch, parent, old_parent))
|
129
|
+
else:
|
130
|
+
git.run('branch', '--set-upstream-to', parent, branch)
|
131
|
+
print ('Reparented %s to track %s (was tracking %s)'
|
132
|
+
% (branch, parent, old_parent))
|
113
133
|
|
114
|
-
|
115
|
-
|
134
|
+
# Apply all deletions recorded, in order.
|
135
|
+
for branch, _ in sorted(deletions.iteritems(), key=lambda x: x[1]):
|
136
|
+
print git.run('branch', '-d', branch)
|
116
137
|
|
117
138
|
|
118
139
|
def rebase_branch(branch, parent, start_hash):
|
@@ -196,6 +217,8 @@ def rebase_branch(branch, parent, start_hash):
|
|
196
217
|
def main(args=None):
|
197
218
|
parser = argparse.ArgumentParser()
|
198
219
|
parser.add_argument('--verbose', '-v', action='store_true')
|
220
|
+
parser.add_argument('--keep-going', '-k', action='store_true',
|
221
|
+
help='Keep processing past failed rebases.')
|
199
222
|
parser.add_argument('--no_fetch', '--no-fetch', '-n',
|
200
223
|
action='store_true',
|
201
224
|
help='Skip fetching remotes.')
|
@@ -245,6 +268,7 @@ def main(args=None):
|
|
245
268
|
logging.debug('merge_base: %s' % pformat(merge_base))
|
246
269
|
|
247
270
|
retcode = 0
|
271
|
+
unrebased_branches = []
|
248
272
|
# Rebase each branch starting with the root-most branches and working
|
249
273
|
# towards the leaves.
|
250
274
|
for branch, parent in git.topo_iter(branch_tree):
|
@@ -254,7 +278,23 @@ def main(args=None):
|
|
254
278
|
ret = rebase_branch(branch, parent, merge_base[branch])
|
255
279
|
if not ret:
|
256
280
|
retcode = 1
|
257
|
-
|
281
|
+
|
282
|
+
if opts.keep_going:
|
283
|
+
print '--keep-going set, continuing with next branch.'
|
284
|
+
unrebased_branches.append(branch)
|
285
|
+
if git.in_rebase():
|
286
|
+
git.run_with_retcode('rebase', '--abort')
|
287
|
+
if git.in_rebase(): # pragma: no cover
|
288
|
+
print 'Failed to abort rebase. Something is really wrong.'
|
289
|
+
break
|
290
|
+
else:
|
291
|
+
break
|
292
|
+
|
293
|
+
if unrebased_branches:
|
294
|
+
print
|
295
|
+
print 'The following branches could not be cleanly rebased:'
|
296
|
+
for branch in unrebased_branches:
|
297
|
+
print ' %s' % branch
|
258
298
|
|
259
299
|
if not retcode:
|
260
300
|
remove_empty_branches(branch_tree)
|
@@ -31,11 +31,14 @@ def main(args):
|
|
31
31
|
# TODO(iannucci): Allow specification of the branch-to-reparent
|
32
32
|
|
33
33
|
branch = current_branch()
|
34
|
+
|
34
35
|
if opts.root:
|
35
36
|
new_parent = root_ref
|
36
37
|
elif opts.lkgr:
|
37
38
|
new_parent = 'lkgr'
|
38
39
|
else:
|
40
|
+
if not opts.new_parent:
|
41
|
+
parser.error('Must specify new parent somehow')
|
39
42
|
new_parent = opts.new_parent
|
40
43
|
cur_parent = upstream(branch)
|
41
44
|
|
@@ -44,6 +47,16 @@ def main(args):
|
|
44
47
|
if new_parent == cur_parent:
|
45
48
|
parser.error('Cannot reparent a branch to its existing parent')
|
46
49
|
|
50
|
+
if not cur_parent:
|
51
|
+
msg = (
|
52
|
+
"Unable to determine %s@{upstream}.\n\nThis can happen if you didn't use "
|
53
|
+
"`git new-branch` to create the branch and haven't used "
|
54
|
+
"`git branch --set-upstream-to` to assign it one.\n\nPlease assign an "
|
55
|
+
"upstream branch and then run this command again."
|
56
|
+
)
|
57
|
+
print >> sys.stderr, msg % branch
|
58
|
+
return 1
|
59
|
+
|
47
60
|
mbase = get_or_create_merge_base(branch, cur_parent)
|
48
61
|
|
49
62
|
all_tags = tags()
|
@@ -8,12 +8,15 @@
|
|
8
8
|
|
9
9
|
import argparse
|
10
10
|
import base64
|
11
|
+
import contextlib
|
11
12
|
import hashlib
|
12
13
|
import json
|
13
14
|
import os
|
14
15
|
import shutil
|
15
16
|
import subprocess
|
16
17
|
import sys
|
18
|
+
import tempfile
|
19
|
+
import time
|
17
20
|
import urllib2
|
18
21
|
import zipfile
|
19
22
|
|
@@ -26,7 +29,6 @@ DEFAULT_BIN_DIR = os.path.join(THIS_DIR, 'external_bin', 'gsutil')
|
|
26
29
|
DEFAULT_FALLBACK_GSUTIL = os.path.join(
|
27
30
|
THIS_DIR, 'third_party', 'gsutil', 'gsutil')
|
28
31
|
|
29
|
-
|
30
32
|
class InvalidGsutilError(Exception):
|
31
33
|
pass
|
32
34
|
|
@@ -73,44 +75,72 @@ def check_gsutil(gsutil_bin):
|
|
73
75
|
[sys.executable, gsutil_bin, 'version'],
|
74
76
|
stdout=subprocess.PIPE, stderr=subprocess.STDOUT) == 0
|
75
77
|
|
76
|
-
|
78
|
+
@contextlib.contextmanager
|
79
|
+
def temporary_directory(base):
|
80
|
+
tmpdir = tempfile.mkdtemp(prefix='gsutil_py', dir=base)
|
81
|
+
try:
|
82
|
+
yield tmpdir
|
83
|
+
finally:
|
84
|
+
if os.path.isdir(tmpdir):
|
85
|
+
shutil.rmtree(tmpdir)
|
86
|
+
|
87
|
+
def ensure_gsutil(version, target, clean):
|
77
88
|
bin_dir = os.path.join(target, 'gsutil_%s' % version)
|
78
89
|
gsutil_bin = os.path.join(bin_dir, 'gsutil', 'gsutil')
|
79
|
-
if os.path.isfile(gsutil_bin) and check_gsutil(gsutil_bin):
|
90
|
+
if not clean and os.path.isfile(gsutil_bin) and check_gsutil(gsutil_bin):
|
80
91
|
# Everything is awesome! we're all done here.
|
81
92
|
return gsutil_bin
|
82
93
|
|
83
|
-
if os.path.
|
94
|
+
if not os.path.exists(target):
|
95
|
+
os.makedirs(target)
|
96
|
+
with temporary_directory(target) as instance_dir:
|
84
97
|
# Clean up if we're redownloading a corrupted gsutil.
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
98
|
+
cleanup_path = os.path.join(instance_dir, 'clean')
|
99
|
+
try:
|
100
|
+
os.rename(bin_dir, cleanup_path)
|
101
|
+
except (OSError, IOError):
|
102
|
+
cleanup_path = None
|
103
|
+
if cleanup_path:
|
104
|
+
shutil.rmtree(cleanup_path)
|
105
|
+
|
106
|
+
download_dir = os.path.join(instance_dir, 'download')
|
107
|
+
target_zip_filename = download_gsutil(version, instance_dir)
|
108
|
+
with zipfile.ZipFile(target_zip_filename, 'r') as target_zip:
|
109
|
+
target_zip.extractall(download_dir)
|
110
|
+
|
111
|
+
try:
|
112
|
+
os.rename(download_dir, bin_dir)
|
113
|
+
except (OSError, IOError):
|
114
|
+
# Something else did this in parallel.
|
115
|
+
pass
|
92
116
|
|
93
117
|
# Final check that the gsutil bin is okay. This should never fail.
|
94
118
|
if not check_gsutil(gsutil_bin):
|
95
119
|
raise InvalidGsutilError()
|
96
|
-
|
97
120
|
return gsutil_bin
|
98
121
|
|
99
122
|
|
100
|
-
def run_gsutil(force_version, fallback, target, args):
|
123
|
+
def run_gsutil(force_version, fallback, target, args, clean=False):
|
101
124
|
if force_version:
|
102
|
-
gsutil_bin = ensure_gsutil(force_version, target)
|
125
|
+
gsutil_bin = ensure_gsutil(force_version, target, clean)
|
103
126
|
else:
|
104
127
|
gsutil_bin = fallback
|
105
|
-
|
128
|
+
disable_update = ['-o', 'GSUtil:software_update_check_period=0']
|
129
|
+
cmd = [sys.executable, gsutil_bin] + disable_update + args
|
106
130
|
return subprocess.call(cmd)
|
107
131
|
|
108
132
|
|
109
133
|
def parse_args():
|
134
|
+
bin_dir = os.environ.get('DEPOT_TOOLS_GSUTIL_BIN_DIR', DEFAULT_BIN_DIR)
|
135
|
+
|
110
136
|
parser = argparse.ArgumentParser()
|
111
|
-
parser.add_argument('--force-version')
|
137
|
+
parser.add_argument('--force-version', default='4.13')
|
138
|
+
parser.add_argument('--clean', action='store_true',
|
139
|
+
help='Clear any existing gsutil package, forcing a new download.')
|
112
140
|
parser.add_argument('--fallback', default=DEFAULT_FALLBACK_GSUTIL)
|
113
|
-
parser.add_argument('--target', default=
|
141
|
+
parser.add_argument('--target', default=bin_dir,
|
142
|
+
help='The target directory to download/store a gsutil version in. '
|
143
|
+
'(default is %(default)s).')
|
114
144
|
parser.add_argument('args', nargs=argparse.REMAINDER)
|
115
145
|
|
116
146
|
args, extras = parser.parse_known_args()
|
@@ -118,12 +148,13 @@ def parse_args():
|
|
118
148
|
args.args.pop(0)
|
119
149
|
if extras:
|
120
150
|
args.args = extras + args.args
|
121
|
-
return args
|
151
|
+
return args
|
122
152
|
|
123
153
|
|
124
154
|
def main():
|
125
|
-
|
126
|
-
return run_gsutil(force_version, fallback, target, args
|
155
|
+
args = parse_args()
|
156
|
+
return run_gsutil(args.force_version, args.fallback, args.target, args.args,
|
157
|
+
clean=args.clean)
|
127
158
|
|
128
159
|
if __name__ == '__main__':
|
129
160
|
sys.exit(main())
|
@@ -24,14 +24,18 @@ rietveld {
|
|
24
24
|
|
25
25
|
verifiers {
|
26
26
|
reviewer_lgtm {
|
27
|
-
committer_list: "
|
27
|
+
committer_list: "project-infra-committers"
|
28
28
|
}
|
29
29
|
|
30
30
|
try_job {
|
31
31
|
buckets {
|
32
|
-
name: "tryserver.
|
32
|
+
name: "tryserver.infra"
|
33
33
|
builders {
|
34
|
-
name: "
|
34
|
+
name: "Depot Tools Presubmit"
|
35
|
+
}
|
36
|
+
builders {
|
37
|
+
name: "Recipe Roll Downstream Tester"
|
38
|
+
experiment_percentage: 100
|
35
39
|
}
|
36
40
|
}
|
37
41
|
}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
LUCI Hacks - A set of shims used to provide an iterable end-to-end demo.
|
2
|
+
|
3
|
+
The main goal of Luci Hakcs is to be able to use iterate on Milo as if it was
|
4
|
+
displaying real data. These are a couple of hacks used to get LUCI running from
|
5
|
+
"git cl try --luci" to displaying a page on Milo. These include:
|
6
|
+
|
7
|
+
luci_recipe_run.py:
|
8
|
+
* Downloading a depot_tools tarball onto swarming from Google Storage to bootstrap gclient.
|
9
|
+
** LUCI shouldn't require depot_tools or gclient.
|
10
|
+
* Running gclient on a swarming slave to bootstrap a full build+infra checkout.
|
11
|
+
** M1: This should check out the recipes repo instead.
|
12
|
+
** M2: The recipes repo should have been already isolated.
|
13
|
+
* Seeding properties by emitting annotation in stdout so that Milo can pick it
|
14
|
+
up
|
15
|
+
* Running annotated_run.py from a fake build directory "build/slave/bot/build"
|
16
|
+
|
17
|
+
trigger_luci_job.py:
|
18
|
+
* Master/Builder -> Recipe + Platform mapping is hardcoded into this file. This
|
19
|
+
is information that is otherwise encoded into master.cfg/slaves.cfg.
|
20
|
+
** Actually I lied, we just assume linux right now.
|
21
|
+
** M1: This information should be encoded into the recipe via luci.cfg
|
22
|
+
* Swarming client is checked out via "git clone <swarming repo>"
|
23
|
+
* Swarming server is hard coded into the file. This info should also be pulled
|
24
|
+
out from luci.cfg
|
25
|
+
* Triggering is done directly to swarming. Once Swarming is able to pull from
|
26
|
+
DM we can send jobs to DM instead of swarming.
|
27
|
+
|
28
|
+
|
29
|
+
Misc:
|
30
|
+
* This just runs the full recipe on the bot. Yes, including bot_update.
|
31
|
+
** In the future this would be probably an isolated checkout?
|
32
|
+
** This also includes having git_cache either set up a local cache, or download
|
33
|
+
the bootstrap zip file on every invocation. In reality there isn't a huge
|
34
|
+
time penalty for doing this, but at scale it does incur a non-trival amount of
|
35
|
+
unnecessary bandwidth.
|
File without changes
|
@@ -0,0 +1,81 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
# Copyright (c) 2015 The Chromium Authors. All rights reserved.
|
3
|
+
# Use of this source code is governed by a BSD-style license that can be
|
4
|
+
# found in the LICENSE file.
|
5
|
+
|
6
|
+
|
7
|
+
"""Download recipe prerequisites and run a single recipe."""
|
8
|
+
|
9
|
+
|
10
|
+
import base64
|
11
|
+
import json
|
12
|
+
import os
|
13
|
+
import subprocess
|
14
|
+
import sys
|
15
|
+
import tarfile
|
16
|
+
import urllib2
|
17
|
+
import zlib
|
18
|
+
|
19
|
+
|
20
|
+
def download(source, dest):
|
21
|
+
u = urllib2.urlopen(source) # TODO: Verify certificate?
|
22
|
+
with open(dest, 'wb') as f:
|
23
|
+
while True:
|
24
|
+
buf = u.read(8192)
|
25
|
+
if not buf:
|
26
|
+
break
|
27
|
+
f.write(buf)
|
28
|
+
|
29
|
+
|
30
|
+
def unzip(source, dest):
|
31
|
+
with tarfile.open(source, 'r') as z:
|
32
|
+
z.extractall(dest)
|
33
|
+
|
34
|
+
|
35
|
+
def get_infra(dt_dir, root_dir):
|
36
|
+
fetch = os.path.join(dt_dir, 'fetch.py')
|
37
|
+
subprocess.check_call([sys.executable, fetch, 'infra'], cwd=root_dir)
|
38
|
+
|
39
|
+
|
40
|
+
def seed_properties(args):
|
41
|
+
# Assumes args[0] is factory properties and args[1] is build properties.
|
42
|
+
fact_prop_str = args[0][len('--factory-properties-gz='):]
|
43
|
+
build_prop_str = args[1][len('--build-properties-gz='):]
|
44
|
+
fact_prop = json.loads(zlib.decompress(base64.b64decode(fact_prop_str)))
|
45
|
+
build_prop = json.loads(zlib.decompress(base64.b64decode(build_prop_str)))
|
46
|
+
for k, v in fact_prop.iteritems():
|
47
|
+
print '@@@SET_BUILD_PROPERTY@%s@%s@@@' % (k, v)
|
48
|
+
for k, v in build_prop.iteritems():
|
49
|
+
print '@@@SET_BUILD_PROPERTY@%s@%s@@@' % (k, v)
|
50
|
+
|
51
|
+
|
52
|
+
def main(args):
|
53
|
+
cwd = os.getcwd()
|
54
|
+
|
55
|
+
# Bootstrap depot tools (required for fetching build/infra)
|
56
|
+
dt_url = 'https://storage.googleapis.com/dumbtest/depot_tools.tar.gz'
|
57
|
+
dt_dir = os.path.join(cwd, 'staging')
|
58
|
+
os.makedirs(dt_dir)
|
59
|
+
dt_zip = os.path.join(dt_dir, 'depot_tools.tar.gz')
|
60
|
+
download(dt_url, os.path.join(dt_zip))
|
61
|
+
unzip(dt_zip, dt_dir)
|
62
|
+
dt_path = os.path.join(dt_dir, 'depot_tools')
|
63
|
+
os.environ['PATH'] = '%s:%s' % (dt_path, os.environ['PATH'])
|
64
|
+
|
65
|
+
# Fetch infra (which comes with build, which comes with recipes)
|
66
|
+
root_dir = os.path.join(cwd, 'b')
|
67
|
+
os.makedirs(root_dir)
|
68
|
+
get_infra(dt_path, root_dir)
|
69
|
+
work_dir = os.path.join(root_dir, 'build', 'slave', 'bot', 'build')
|
70
|
+
os.makedirs(work_dir)
|
71
|
+
|
72
|
+
# Emit annotations that encapsulates build properties.
|
73
|
+
seed_properties(args)
|
74
|
+
|
75
|
+
# JUST DO IT.
|
76
|
+
cmd = [sys.executable, '-u', '../../../scripts/slave/annotated_run.py']
|
77
|
+
cmd.extend(args)
|
78
|
+
subprocess.check_call(cmd, cwd=work_dir)
|
79
|
+
|
80
|
+
if __name__ == '__main__':
|
81
|
+
sys.exit(main(sys.argv[1:]))
|