Currently, the Windows toolchain is installed in a subdirectory under
"depot_tools". Allow this installation destination to be overridden,
either by flag (useful for testing) or via environment variable (to be
used in Chromium recipe).
BUG=chromium:727917
TEST=local
- Ran explicitly w/ flag, seems to work.
- Ran via Chromium's "vs_toolchain" with and without environment
variable override, seems to install correctly.
Change-Id: I6b33832d7f099796e23da0548949073c70a17788
Reviewed-on: https://chromium-review.googlesource.com/521663
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Enable a sentinel file to enable/disable "depot_tools" auto-updating.
This file, if present, indicates that automatic updating should not
occur.
Add a simple control script to enable/disable automatic updating.
BUG=chromium:727917
TEST=local
- Ran locally, --enable, --disable.
R=iannucci@chromium.org, maruel@chromium.org, nodir@chromium.org
Change-Id: Id30a17586248228849d046f79d7e0bc445d97f97
Reviewed-on: https://chromium-review.googlesource.com/521884
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
Pinpoint needs to request builds at specific revisions, e.g. clank@0123 + chromium/src@4567 + v8@89ab. It's not aware of the path of the repositories in the src tree, so it makes more sense to pass in the repository URLs instead.
Bug: https://github.com/catapult-project/catapult/issues/3394
Change-Id: Ib9fb9a7bf5d918c18f37c3b2b36418537512b235
Reviewed-on: https://chromium-review.googlesource.com/520569
Commit-Queue: David Tu <dtu@chromium.org>
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Second attempt at landing. Fix quotes around python in "gclient.bat".
Currently, all ".bat" entry points use "~dp0python" to ensure that the
Python that is used to execute the tool is the one in depot_tools. This
prevents any sort of system override.
Remove this override so that PATH solely determines which Python is
used. To accommodate users who invoked these tools without Python on the
PATH, we still still add "depot_tools" as a catch-all PATH suffix.
Some tools were also not using DOS-style line endings. This CL fixes
this.
BUG=chromium:714293, chromium:724902
TEST=None
Change-Id: I0fceb99c8adb96e72dac706819be032d400aad37
Reviewed-on: https://chromium-review.googlesource.com/521704
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
This reverts commit 2f5f0b7a99.
Reason for revert: <INSERT REASONING HERE>
Original change's description:
> [.bat] Remove "depot_tools" override.
>
> Currently, all ".bat" entry points use "~dp0python" to ensure that the
> Python that is used to execute the tool is the one in depot_tools. This
> prevents any sort of system override.
>
> Remove this override so that PATH solely determines which Python is
> used. To accommodate users who invoked these tools without Python on the
> PATH, we still still add "depot_tools" as a catch-all PATH suffix.
>
> Some tools were also not using DOS-style line endings. This CL fixes
> this.
>
> BUG=chromium:714293, chromium:724902
> TEST=None
>
> Change-Id: I06e9583a668c767196a2a335547aded868f2a2b5
> Reviewed-on: https://chromium-review.googlesource.com/517236
> Commit-Queue: Daniel Jacques <dnj@chromium.org>
> Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
> Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
>
TBR=maruel@chromium.org,iannucci@chromium.org,vadimsh@chromium.org,dnj@chromium.org
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
BUG=chromium:714293, chromium:724902
Change-Id: I822abdd4e02abd32d2f4789fb16d5a7f78fdd02d
Reviewed-on: https://chromium-review.googlesource.com/521867
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
`parsed_root.path` already contains the leading slash in the the URL, so adding
an additional slash gives an incorrect URL.
Change-Id: I84f04179356bb132a31531232a5c30c7808f7c1b
Reviewed-on: https://chromium-review.googlesource.com/520724
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: David Tu <dtu@chromium.org>
Currently, all ".bat" entry points use "~dp0python" to ensure that the
Python that is used to execute the tool is the one in depot_tools. This
prevents any sort of system override.
Remove this override so that PATH solely determines which Python is
used. To accommodate users who invoked these tools without Python on the
PATH, we still still add "depot_tools" as a catch-all PATH suffix.
Some tools were also not using DOS-style line endings. This CL fixes
this.
BUG=chromium:714293, chromium:724902
TEST=None
Change-Id: I06e9583a668c767196a2a335547aded868f2a2b5
Reviewed-on: https://chromium-review.googlesource.com/517236
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
This is a step towards implementing conditions.
Bug: 570091
Change-Id: I99467033082d96021854c23dcff3fc2b56f995b4
Reviewed-on: https://chromium-review.googlesource.com/517107
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
On recent SDKs the size of the toolchain package grew. This change
filters out some unneeded directories in order to minimize this growth.
This change also fixes the bin paths for the 10.0.15063.0 SDK. Starting
with this SDK version the SDK version is part of the path. The script
does *not* handle packaging older SDKs anymore - older versions of the
script can be used for that purpose.
The 10.0.15063.0 SDK will be needed eventually in order to support
Windows 10 Creators Update.
Test builds are running on crrev.com/2913873003 (VS 2017) and
crrev.com/2914643003 (VS 2015).
Bug: 683729,682416
Change-Id: Ia89e3253869a45dd10c923a2edee53aaf086e12c
Reviewed-on: https://chromium-review.googlesource.com/519982
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).
Please review the expectation changes, and LGTM+CQ.
More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
https://crrev.com/458ce956c9d91d184e0107c5fa6b34a8267b8e9b [step_runner] run _merge_envs in simulation too. (iannucci@chromium.org)
R=martiniss@chromium.org, phajdan.jr@chromium.org
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0d60499b06718827776739eb0413a79baa15cd9e
Reviewed-on: https://chromium-review.googlesource.com/520462
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
_CalculateAddedDeps calls into depot tools' scm.py GetOldContents to
compare previous and current versions of the DEPS file. GetOldContents
attempts to 'git show <sha>:<path>'. The problem on Windows is that path
uses '\' but git show seems to want a posix path. Git show therefore
doesn't find the file and returns an empty output, leading presubmit to
think all the deps are new.
Bug:725933
Change-Id: Ifbbfbcba4be466d9be623826818fd191bd2ca525
Reviewed-on: https://chromium-review.googlesource.com/514142
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
For a bit of context, see the TODO in the code --
I think that the original intent of that TODO was that we to make
the way that CQ dry runs are triggered consistent, and also make
the behavior of dry runs consistent across different commands.
Change-Id: I80dfc31ade302a6af7fa84011e2871d416ea9c96
Reviewed-on: https://chromium-review.googlesource.com/518930
Commit-Queue: Quinten Yearsley <qyearsley@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Some recipes interacting with older revisions (e.g. bisect)
will need this.
Bug: 570091
Change-Id: I38e5ffa2db1a9bfae3667f015f00977c32ebe51e
Reviewed-on: https://chromium-review.googlesource.com/519407
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
VS 2017 Preview installs to a different directory from VS 2017 RTM, so
the packaging script needs to be updated to handle this. It does this by
using vswhere.exe so that any VS 2017 install can be found
automatically. If there are multiple installs then it is not well
defined which one will be found, so make sure you don't have multiple
installs.
The other change is to more robustly find the many directory paths which
contain embedded version numbers. Previously these were hard-coded for
VS 2017 RTM but this quickly gets tedious so now glob.glob is used to
find the matching directories. This will intentionally fail if there is
any ambiguity.
R=scottmg@chromium.org
BUG=683729
Change-Id: I02f7ae7589e271d6d9897f899e0730d7163f76ef
Reviewed-on: https://chromium-review.googlesource.com/516442
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
This should make error messages more friendly and easier to address.
Bug: 570091
Change-Id: Id43d6ecdc5521b07fbe684b6fdbcc09f6fbc6448
Reviewed-on: https://chromium-review.googlesource.com/513907
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Several boilerplate batch files include a provision to prepend
"depot_tools" to PATH prior to running those tools. This undermines
the utility of PATH overrides, since these tools specifically force their
"depot_tools" sub-paths to be used regardless of environment.
The origin of this behavior is likely limited to a specific fix for a
specific problem, but was then perpetuated by the copy/paste of
boilerplate bootstrap code as more bootstraps were added.
This is important in upcoming configurations, where core tools such as
Python and Git will be overridden via PATH on the bots.
Cygwin users who depended on this behavior should just add "depot_tools"
to their PATH in the appropriate location (i.e. in their .bashrc).
BUG=chromium:714293, chromium:724902
TEST=None
Change-Id: Ie948a430847d20326d2411e9296cacd02f83a537
Reviewed-on: https://chromium-review.googlesource.com/510290
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
If the repo is a btrfs subvolume, take a snapshot instead of using
"cp --reflink". Taking a snapshot is much faster, and uses less
disk space for metadata.
Bug: 721585
Change-Id: I97753dc30d46ff56d84d65f8d815c19d09cf104b
Reviewed-on: https://chromium-review.googlesource.com/513586
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Wei-Yin Chen (陳威尹) <wychen@chromium.org>
The private mode is a better fit for how we want private
(e.g. security-critical) changes to be reviewed. Draft
was simply a placeholder until private was ready for use,
which it now is.
Bug: 721880, 722627
Change-Id: Ib7b76c555437f4ddc7ab2b0e7ce5a9f9ee8be825
Reviewed-on: https://chromium-review.googlesource.com/513243
Commit-Queue: Aaron Gable <agable@chromium.org>
Reviewed-by: Andrew Bonventre <andybons@chromium.org>
This relands the safe portion of outage-causing https://chromium-review.googlesource.com/c/509451/
Landing this simple CL will allow pre-emptively adding escape hatch
to critical places (such as update_scripts) to make relanding validation safer.
Bug: 570091
Change-Id: I4d963bd9b140b7b6bca35d4d5e41768bc1a3d7e0
Reviewed-on: https://chromium-review.googlesource.com/512744
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Original CL: https://chromium-review.googlesource.com/509614
This feature seems to be unused, and removing it will
simplify handling hooks a little bit.
Bug: 661382
Change-Id: I7f02b34fc399c78bef76420df19a93105ab098ac
Reviewed-on: https://chromium-review.googlesource.com/512644
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
This reverts commit 3e6d7c1cbc.
Reason for revert: maybe caused outage.
Original change's description:
> gclient: remove support for $matching_files in hooks
>
> This feature seems to be unused, and removing it will
> simplify handling hooks a little bit.
>
> Bug: 661382
> Change-Id: I89f28dedb7f59cd475b176cfb1f023094520d6b7
> Reviewed-on: https://chromium-review.googlesource.com/509614
> Reviewed-by: Dirk Pranke <dpranke@chromium.org>
> Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
>
TBR=phajdan.jr@chromium.org,dpranke@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Bug: 661382
Change-Id: I47fe26e7381682b5b428a3775bf27a551c57d5e6
Reviewed-on: https://chromium-review.googlesource.com/512344
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
This feature appears unused, and removing it will simplify the codebase.
Bug: 661382
Change-Id: I545befb2c592eea53c54552018ce2d3dda7670f5
Reviewed-on: https://chromium-review.googlesource.com/509693
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
This feature seems to be unused, and removing it will
simplify handling hooks a little bit.
Bug: 661382
Change-Id: I89f28dedb7f59cd475b176cfb1f023094520d6b7
Reviewed-on: https://chromium-review.googlesource.com/509614
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>