Commit Graph

687 Commits (6421eb2eda04c003d77d26b1160082dcd6d249eb)

Author SHA1 Message Date
Garrett Beaty 1a8da2d914 Remove the src_root attribute from gclient config.
The src_root attribute of the gclient config is not used.

Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: chrome_release
Change-Id: I9889e944a4a849e8dc0f4de78698e32b2440843b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5536335
Commit-Queue: Garrett Beaty <gbeaty@google.com>
Reviewed-by: Gavin Mak <gavinmak@google.com>
12 months ago
Garrett Beaty fd81abb19d Return a custom result type from bot_update.ensure_checkout.
In order to facilitate removing uses of api.path.checkout_dir from
downstream repos, this change adds a custom return type for
bot_update.ensure_checkout. Now instead of a standard step result, an
object of Result will be returned. Result records the relevant paths
(directory where the checkout was performed, the repo that was checked
out and the repo that was patched, if any). This provides the caller
the ability to work in any of these directories without using
api.path.checkout_dir and without requiring boilerplate to construct
the paths. It also includes some attributes that provide details from
within the json output to abstract that out.

Bug: 329113288, 339472834
Change-Id: I2ec6db635c5b799bdb65d4e9364e7d99aae4159e
Recipe-Manual-Change: build
Recipe-Manual-Change: build_limited
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5523194
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
Commit-Queue: Garrett Beaty <gbeaty@google.com>
1 year ago
Garrett Beaty 7cc2678a05 Simplify overriding test data for bot_update.
Currently overriding test data for bot_update requires specifying the
json output and in some cases the corresponding retcode. It's easy to
set the json output to values that wouldn't match the build inputs. This
change adds module test data for bot_update to have the bot_update fail
to checkout or fail the patch without having to manually specify the
json output as well. It also adds module test data for controlling
whether there are commit positions in the output properties.

The fail_patch property of the bot_update module was removed since it
was only used by tests to force the patch failure codepath and now the
fail_patch module test data can be used instead.

Change-Id: I03f61c2ff95c2561b746efbaae8e35b520027a2b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5518044
Reviewed-by: Scott Lee <ddoman@chromium.org>
Auto-Submit: Garrett Beaty <gbeaty@google.com>
Commit-Queue: Scott Lee <ddoman@chromium.org>
1 year ago
Garrett Beaty a60f90e38e Remove the root parameter from output_json.
The downstream use has been switched to set patch_root instead so the
root parameter is no longer necessary.

Change-Id: Id0b20265550daa7e93af0ebf717d48db56164037
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5514209
Commit-Queue: Yiwei Zhang <yiwzhang@google.com>
Auto-Submit: Garrett Beaty <gbeaty@google.com>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
1 year ago
Garrett Beaty d3299d9986 Match patch behavior for bot_update test data to production.
In production, if there is no patch, then the bot_update output will
have the value for the patch_root key set to null and the patch_failure
key will only be set if there was a patch failure. This updates the
output_json test API method so that the json matches this behavior. The patch_root parameter was added that will be used to set the
patch_root key. The root parameter is preserved for now until a
downstream use passing the argument by keyword can be updated.

Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: chrome_release
Recipe-Nontrivial-Roll: chromiumos
Recipe-Nontrivial-Roll: infra
Change-Id: I0c34a41ff18bce2900a2f176ff992e6d147abbd4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5506838
Commit-Queue: Garrett Beaty <gbeaty@google.com>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
1 year ago
Rob Mohr 7438a7cd4c [recipes/*_sdk] Replace '[*]' paths in comments
Replace uses of '[START_DIR]' and '[CACHE]' in comments with
api.path.start_dir and api.path.cache_dir. This doesn't actually keep
anything from breaking, but it ensures the comments stay correct.

Change-Id: I4087925a29e3e9a4cb47e044733ab6109cb659bd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5492788
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
Commit-Queue: Yiwei Zhang <yiwzhang@google.com>
Auto-Submit: Rob Mohr <mohrr@google.com>
1 year ago
Rob Mohr 4246ba023a Replace remaining Path.join() calls
Use Path.joinpath() or the / operator instead of Path.join().
Eventually, config_types.Path will be replaced with pathlib.Path, which
doesn't have a join() method. In general, if the substitution was simple
the / operator was used. Otherwise, '.join(' was replaced with
'.joinpath('.

Change-Id: Iff2eb0abd9fdb0d3b3bca281c7c5436f932a5380
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5483206
Commit-Queue: Yiwei Zhang <yiwzhang@google.com>
Auto-Submit: Rob Mohr <mohrr@google.com>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
1 year ago
Rob Mohr 6ba67afd6f Replace Path.join() with / and Path.joinpath()
config_types.Path will soon be replaced with pathlib.Path and
pathlib.Path doesn't have a join() method.

Bug: 329113288
Change-Id: I81bf607ffb41d84928af0eea06be78540b9912d9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5467697
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
Auto-Submit: Rob Mohr <mohrr@google.com>
Commit-Queue: Yiwei Zhang <yiwzhang@google.com>
1 year ago
Rob Mohr 1dae848026 Replace use of "cq" module with "cv"
Bug: 333811087
Change-Id: I85b7d5c38defc03a580685654d43d204dbfa5231
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5454164
Auto-Submit: Rob Mohr <mohrr@google.com>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
Commit-Queue: Yiwei Zhang <yiwzhang@google.com>
1 year ago
Rob Mohr 2f8f787dec Use new path module attributes
Bug: 329113288
Change-Id: Ib762c83c7558cd522e6bd3f78e2d38684ce82a76
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5444201
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
1 year ago
Gavin Mak 17551f6e84 Reword presubmit summary markdown
The summary markdown assumes there's errors when there might not be.

Recipe-Nontrivial-Roll: build
Bug: 330512874
Change-Id: I4941bd0551f5bb64adec7a85bbaeb64c20e230b9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5427700
Auto-Submit: Gavin Mak <gavinmak@google.com>
Reviewed-by: Louis Romero <lpromero@google.com>
Commit-Queue: Louis Romero <lpromero@google.com>
1 year ago
Robert Iannucci 1a776cf430 [osx_sdk] Add TestApi to allow mocking macOS version.
Some downstream repos rely on the 'current platform' detection and
would like to mock it in their tests. Give a real API for doing this
instead of having downstream recipes key on the internal step name
here.

R=athom, jeffyoon@google.com, whesse

Change-Id: If9d049c568c70cac9ddee1c06f2bd04ac4f572a9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5428682
Reviewed-by: Alexander Thomas <athom@google.com>
Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
1 year ago
danakj e6aba2bcf1 Update the mac toolchain to 26bb3effce1bc1
The list of toolchain hashes is here:
https://chromium.googlesource.com/infra/infra/+log/refs/heads/main/go/src/infra/cmd/mac_toolchain

Bug: chromium: 40284755
Change-Id: I225101faa8236c8c23417239e5682bb9312b8e15
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: infra
Recipe-Nontrivial-Roll: build
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5428515
Commit-Queue: Gavin Mak <gavinmak@google.com>
Auto-Submit: danakj <danakj@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
1 year ago
danakj 7fa774456f Add the latest Xcode versions for macOS 13.0, 13.5 and 14.0
According to https://en.wikipedia.org/wiki/Xcode:
- macOS 13.0 is the minimum macOS version supported by
  14E222b and 14E300c
  - So we point 13.0 to the latest one, which is 14E300c
- macOS 13.5 is the minimum macOS version supported by
  15A240d, 15A507, 15C65, and 15C500b
  - So we point it to the latest one, which is 15C500b
- macOS 14.0 is the minimum macOS version supported by
  15E5204a (which looks like a typo of 15e204a according
  to xcodereleases.com and //infra/config/targets/mixins.star)
  - There will surely be more versions that support back
    to 14.0 but this is the only one for now. So we point
    it 15e204a.

This should hopefully give us C++20 support on macOS 13 and up,
like we see in the Chromium waterfall.

Bug: chromium: 40284755
Change-Id: I2049aa3c4b32990dbedbd95e9ec35cceaa1ca3a3
Recipe-Nontrivial-Roll: infra
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: build
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5425635
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: danakj <danakj@chromium.org>
1 year ago
danakj 8d8494a141 Add Xcode 15.2 (15C500b) for macOS version 14.2
This is the Xcode version used in the chromium waterfall:

https://source.chromium.org/chromium/chromium/src/+/main:infra/config/targets/mixins.star;l=1832-1846;drc=d3b83cc14328bf58d20721b78ab3fd4187f52a76

Change-Id: Ia79d8ce713ea2d7a0701d8094001f9173e3466b9
Recipe-Nontrivial-Roll: infra
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: build
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5425390
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: danakj <danakj@chromium.org>
1 year ago
David Benjamin 2d6b598b7a windows_sdk: Fix docs to also mention arm64
Change-Id: I39fb0f99e62a822b9aa7d1b099c3a73e4499e051
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5345456
Auto-Submit: David Benjamin <davidben@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
1 year ago
Vadim Shtayura 4a9d989f52 Roll recipe dependencies.
To pick up
https://chromium.googlesource.com/infra/luci/recipes-py/+/fcb91e42

R=iannucci@chromium.org

Change-Id: I60d77bbdbe1eb92efd05370d45523af7600b7790
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5406117
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
1 year ago
Robert Iannucci 2dbb3f399a [recipe_modules/osx_sdk] Rewrite osx_sdk module to not rely on platform.mac_release.
Since macOS 11, the underlying python `platform.mac_vers()` call
that mac_release is populated from returns "10.16" on all versions
of macOS.

Switch this to just shell out to `sw_vers` to pick up the current
platform version instead.

Non-trivial downstream rolls are because `api.platform.mac_release`
no longer mocks the version of the SDK installed... however it would
be better to set this by just using the explicit sdk_version property.

R=yueshe@google.com

Bug: 331252586
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: infra
Recipe-Nontrivial-Roll: build
Change-Id: I41a27383f67db4835ba84b7a47813884879818cf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5394351
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Yue She <yueshe@google.com>
1 year ago
Robert Iannucci 03e4484a72 [recipe_modules/git] Set checkout_dir in tests/number.py.
It's soon going to be invalid to use checkout_dir before it's set.

R=bryner, recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com

Change-Id: I48185dec02fc9de250bb12843ac9a8bcabbd74d8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5342874
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
1 year ago
Gavin Mak 0696c428b0 Switch to using issues.chromium.org bug links
Bug: b/323898035
Change-Id: I2dacc7d524fb11265d7c2385259b3a918d4fb6ef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5270201
Auto-Submit: Gavin Mak <gavinmak@google.com>
Commit-Queue: Yiwei Zhang <yiwzhang@google.com>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
1 year ago
Gavin Mak 85142e0ee1 Upload git traces if bot_update doesn't exit with ok_ret
Recipe-Nontrivial-Roll: build
Bug: 1517126
Change-Id: I04a6e369a9d0fb50e0dfd18f4bd23ecc0c1c40d6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5186756
Commit-Queue: Gavin Mak <gavinmak@google.com>
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
1 year ago
Scott Lee 1714cc6e5a [depot_tools] fix args to pass --depth
The current code appends "--depth 1" as a single parameter.

Change-Id: I87cf34ffc45d0d9ce49453a7449b82e526989924
Recipe-Nontrivial-Roll: infra
Recipe-Nontrivial-Roll: build
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5105224
Commit-Queue: Josip Sokcevic <sokcevic@chromium.org>
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
1 year ago
Scott Lee a3f3465f48 [depot_tools] add optional param `depth` in git checkout
It can be used to reduce the size of payloads to download in git fetch
operations.

Change-Id: I631af18bee01eaa829d3d4755a57935690a99a85
Bug: 1508826
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5091760
Commit-Queue: Scott Lee <ddoman@chromium.org>
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
1 year ago
Josip Sokcevic fba0ae4a38 recipe_modules/gclient: Exclude non-set properties
Only set got_*_revision properties that are set.

R=chanli, gbeaty

Fixed: 1502012
Change-Id: I5c42da8d1d5ce37cd3816f1ef4b857a603fc1195
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5030871
Reviewed-by: Garrett Beaty <gbeaty@google.com>
Commit-Queue: Garrett Beaty <gbeaty@google.com>
Auto-Submit: Josip Sokcevic <sokcevic@chromium.org>
Reviewed-by: Chan Li <chanli@chromium.org>
1 year ago
recipe-roller 940c4a01db Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8764509030854892129

Please review the expectation changes, and LGTM+CQ.

recipe_engine:
20788e5b9b
  20788e5 (mohrr@google.com)
      [recipe_engine] Always show full stacks

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Idb9047f921b1740485954fa5aa6e9b47a4e857d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5026363
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
2 years ago
recipe-roller f007e78ef9 Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8765521324786787649

Please review the expectation changes, and LGTM+CQ.

recipe_engine:
bc82350667
  bc82350 (iannucci@chromium.org)
      [recipe_engine] Switch recipes to execute with python3.11.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1d1084286366429b245e958e453bf73e883c78e2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5001769
Auto-Submit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
2 years ago
Rob Mohr d3acdc8c57 recipes: Remove unnecessary use of defer_results
Bug: chromium:1495428
Change-Id: I266cb0d8cb101dc5ce8fb25622bb0d5d800ca27a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4979598
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Rob Mohr <mohrr@google.com>
2 years ago
Joanna Wang c2e0061723 Use diff.ignoreSubmodules=all when committing patches.
Bug:1486973
Recipe-Nontrivial-Roll: build
Change-Id: Ifde97d61d55e7f78068bc2f745ec0816bbb5d694
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4909801
Commit-Queue: Joanna Wang <jojwang@chromium.org>
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
2 years ago
Gavin Mak 512f3cb37e Drop py2 support in various files
python3 is the only supported version of python in depot_tools.
Remove py2 support from files including:
  * cpplint.py
  * subprocess2.py
  * many tests and testing_support files

Bug: 1475402
Change-Id: I67a98188bc13c4dc119e6158a37bd236bfd6ea70
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4824474
Commit-Queue: Gavin Mak <gavinmak@google.com>
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Reviewed-by: Scott Lee <ddoman@chromium.org>
2 years ago
Gavin Mak 642a989069 Reland "Drop py2 support in recipe modules"
This is a reland of commit 5819c303f0

Original change's description:
> Drop py2 support in recipe modules
>
> python3 is the only supported version of python in depot_tools.
>
> Bug: 1475402
> Change-Id: I479de09a0c34b438aced35e4ced58a5972108132
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4808518
> Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
> Commit-Queue: Gavin Mak <gavinmak@google.com>

Bug: 1475402
Change-Id: Ie4e6612a95511026b7602837f8dd3030bcf3ef8a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4811285
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Commit-Queue: Gavin Mak <gavinmak@google.com>
2 years ago
Gavin Mak a5f17dd7b3 Revert "Drop py2 support in recipe modules"
This reverts commit 5819c303f0.

Reason for revert: breaking dart builds

Original change's description:
> Drop py2 support in recipe modules
>
> python3 is the only supported version of python in depot_tools.
>
> Bug: 1475402
> Change-Id: I479de09a0c34b438aced35e4ced58a5972108132
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4808518
> Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
> Commit-Queue: Gavin Mak <gavinmak@google.com>

Bug: 1475402
Change-Id: I0fef7581835bb25ea7e4f22303eef11e72df9536
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4811596
Commit-Queue: Gavin Mak <gavinmak@google.com>
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
2 years ago
Gavin Mak 5819c303f0 Drop py2 support in recipe modules
python3 is the only supported version of python in depot_tools.

Bug: 1475402
Change-Id: I479de09a0c34b438aced35e4ced58a5972108132
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4808518
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Commit-Queue: Gavin Mak <gavinmak@google.com>
2 years ago
Josip Sokcevic 3869a16107 [recipe] Support stripping dep prefix
It's the only roll that uses use_relative_path = False. Instead of fully
supporting that case, we will ask user to provide prefix that should be
removed when gitlinks are added.

Change-Id: I1e39d0ce145a246e5b69b7cf64e6b9471bcb1aea
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4794721
Commit-Queue: Josip Sokcevic <sokcevic@chromium.org>
Reviewed-by: Keybo Qian <keybo@google.com>
2 years ago
Josip Sokcevic 2a951b8648 [recipes] Add roll_deps to gclient
roll_deps method in gclient recipe_module allow users to pass DEPS file
together with recipes that need to be rolled. It returns a list of files
that need to be edited in addition to the modified DEPS file (replaced
inline).

R=jojwang, keybo

Change-Id: I6987849f0ebacbb063d6f6186af1dba1647550a7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4785897
Commit-Queue: Josip Sokcevic <sokcevic@chromium.org>
Reviewed-by: Xinan Lin <linxinan@chromium.org>
2 years ago
Gavin Mak 7131bc5609 Remove chromium style plugin solution
The chromium-style plugin was replaced last year with cl/495068108.

Change-Id: Ifce7cf5e22f10681ffe743572182d759ae51fed2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4743665
Auto-Submit: Gavin Mak <gavinmak@google.com>
Commit-Queue: Gavin Mak <gavinmak@google.com>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
2 years ago
Gavin Mak e13840bd9a Remove explicit refs/heads/master revision from gerrit solution
Recipe-Nontrivial-Roll: infra
Bug: 1469734
Change-Id: I7c84383525351798c270cdc3b2f239493f1349e9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4743948
Reviewed-by: Arthur Bello <artbello@google.com>
Commit-Queue: Gavin Mak <gavinmak@google.com>
2 years ago
recipe-roller 72d05d0d22 Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8775574442380992545

Please review the expectation changes, and LGTM+CQ.

recipe_engine:
a25e256b7c
  a25e256 (gbeaty@chromium.org)
      Remove json python2 backwards-compatibility separators value.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icb78a982055ee8aa9b0551ac8d6dea80a7fa7dd9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4687678
Reviewed-by: Garrett Beaty <gbeaty@google.com>
Commit-Queue: Garrett Beaty <gbeaty@google.com>
Auto-Submit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2 years ago
Robert Iannucci d78d8ab771 [gclient] Export CONFIG_CTX for other modules to extend.
The recipe engine has a refactor coming up where CONFIG_CTX needs to
be explicitly exported for other modules to extend it. Currently
a handful of modules in the build, build_internal and
release_scripts repos extend the gclient configuration context.

Exporting it like this should have no functional effect, but is just
in preparation for the upcoming refactor.

R=gavinmak

Bug: 1462728
Change-Id: I5871d472f7e28d38eefa9b1e89cfcc804823a1bd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4680284
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
2 years ago
Yue She 7b0a195903 [mac_toolchain] Roll mac_toolchain version for builders using osx_sdk
This rolls adds support for xcode15 adoption, in case builders using osx recipes want to roll to xcode15 in the future

Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: infra
Bug: 1457029
Change-Id: I958d1ac03281d5663ff3a0df4f0812bde863df2e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4675569
Reviewed-by: Jeff Yoon <jeffyoon@google.com>
Commit-Queue: Yue She <yueshe@google.com>
2 years ago
Robert Iannucci 247429efd9 [git_cl] Remove config from git_cl module.
No downstream repos use this functionality now, using instead the
simpler, explicit, set_default_repo_location method.

Bug: 1462728
Change-Id: Iaf3836b30234f0b798c53f27639ab19c1b134ac9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4669517
Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
2 years ago
Robert Iannucci d0b85e47dc [recipe_modules/git_cl] Add migration path away from using config.py.
The usage of config in the git_cl module is wholly unnecessary - This
CL gives a trivial way to change downstream repos to use a normal method
in place of configs, which will ultimately let us remove config.py from
this module.

Change-Id: Ia02ad110c41fadcd3bada0258ba96cbe70d0e43c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4662591
Reviewed-by: Gavin Mak <gavinmak@google.com>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
2 years ago
Gavin Mak 60c4b8810b Reserve time from soft_deadline to upload traces if bot_update times out
The "upload traces" step is skipped if bot_update times out and is in
the grace_period. Reserve 1 minute to upload traces.

Bug: 1351547, 1456840
Change-Id: Idb191735a07d245575ff4c79375a976750522fa5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4651461
Commit-Queue: Gavin Mak <gavinmak@google.com>
Reviewed-by: Yiwei Zhang <yiwzhang@google.com>
2 years ago
Gavin Mak 94761e3305 Fix bot_update _trace_dir
The traces dir isn't created yet and fails to upload traces.

Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: chrome_release
Recipe-Nontrivial-Roll: chromiumos
Recipe-Nontrivial-Roll: infra
Bug: 1351547, 1456880
Change-Id: I635ad02168c918028a3bd4ad6f914f5835dad9b6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4633186
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Auto-Submit: Gavin Mak <gavinmak@google.com>
Commit-Queue: Gavin Mak <gavinmak@google.com>
2 years ago
Yiwei Zhang b56b654322 bot_update: fix the check for is running on linux
Since python3.3, the platform value has been changed from linux2 or
linux3 to linux. The bug has stopped bot_update script from emitting
proces tree periodically that will be helpful when debugging.

R=sokcevic

Bug: 1455926
Change-Id: Id6ab4ddf46eaa322a8b5470baa7ba6cc656a6bb3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4654290
Auto-Submit: Yiwei Zhang <yiwzhang@google.com>
Commit-Queue: Josip Sokcevic <sokcevic@chromium.org>
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Commit-Queue: Yiwei Zhang <yiwzhang@google.com>
2 years ago
recipe-roller 4ec095fa85 Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8777726121979453601

Please review the expectation changes, and LGTM+CQ.

recipe_engine:
3b628ec844
  3b628ec (iannucci@chromium.org)
      [json] Add ability to dump json with unsorted keys.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

R=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I941000effd8a6e7fb01a662a0dccdf90d1d3fe8a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4630530
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
2 years ago
Robert Iannucci c868adc368 Remove OrderedDict from test expectation
`api.json.output` is going to start returning regular dict soon
(https://chromium-review.googlesource.com/c/infra/luci/recipes-py/+/4616531)

Note that in python3 (which in this context means 3.8+), dictionaries are
ordered by insertion order.

R=gbeaty

Change-Id: I3358ca32376512d13da945f13ea2c52acf07b404
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4630528
Reviewed-by: Garrett Beaty <gbeaty@google.com>
Commit-Queue: Garrett Beaty <gbeaty@google.com>
Reviewed-by: Gavin Mak <gavinmak@google.com>
Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
2 years ago
Xinan Lin 66ab0a5131 Allow existent branch when creating branches via recipe
BUG=1433047
TEST=train

Change-Id: Iafa16840f7ead393ccd09dd483e45e9098358755
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4629867
Commit-Queue: Xinan Lin <linxinan@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
2 years ago
Garrett Beaty 3ffad8166e Don't set blamelist_pins on the json output.
The blamelist_pins attribute is being set on the json output, which is a
dictionary. This only works right now because json.output currently uses
OrderedDict as the dict type. With removal of support for python2, dict
could be used since its iteration order is insertion order in python3.
This change removes setting the blamelist_pins attribute since its not
used anywhere and it will allow json.output to use plain dict.

Change-Id: Ie19b87d61903774454df2d395acf695eaa39b201
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4617204
Commit-Queue: Garrett Beaty <gbeaty@google.com>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Aravind Vasudevan <aravindvasudev@google.com>
Auto-Submit: Garrett Beaty <gbeaty@google.com>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
2 years ago
Gavin Mak 6fde53139b Upload git traces from bot_update
Recipe-Nontrivial-Roll: build
Recipe-Nontrivial-Roll: chromiumos
Recipe-Nontrivial-Roll: infra
Recipe-Nontrivial-Roll: build_limited
Recipe-Nontrivial-Roll: chrome_release
Bug: 1351547
Change-Id: I1e018a8407c10ad4f9b6674d4b17ccae1e863389
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4568628
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Commit-Queue: Gavin Mak <gavinmak@google.com>
2 years ago
Lei Zhang 14123b76a8 Update Xcode for macOS 11 and 12
Switch from Xcode 13.0 to 13.2.1 to update the macOS SDK from 11.3 to
12.1. This is needed for bots that use this receipe, like PDFium Mac
bots, after crrev.com/1154867 made macOS 12 mandatory. This also has the
effect of updating the iOS SDK from 15.0 to 15.2.

Change-Id: I4c91b2c23bd8eaacac6cef6afe71fed3533fd838
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4605813
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Lindsay Pasricha <lindsayw@chromium.org>
2 years ago