Commit Graph

148 Commits (chrome/3904)

Author SHA1 Message Date
Edward Lemur 84d26ae3c9 Fix pylint on windows
pylint.bat is overwritten by bootstrap/win/win_tools.py

Bug: 866772
Change-Id: If59c9f5b9fe8bff212e25ec865bde4abfdf6e171
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1762665
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
6 years ago
Edward Lemur a44d67c6e8 depot_tools: Add python3 to win bootstrap.
Change-Id: Id24a1dc88ed9766b15a5145cdb29145d0c436514
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1759277
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
6 years ago
smut b1a3e411d3 [bootstrap/win] Release Python 2.7.15
Bug: 879378
Change-Id: Ia8bf1a039b117d87c1caa493cf4b5d93daa69bf9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1666254
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
Commit-Queue: smut <smut@google.com>
6 years ago
smut bc23ca13f1 [bootstrap/win] Canary Python 2.7.15
Bug: 879378
Change-Id: I831319672c80cb7202d057d5d737eefc95ffad97
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1659614
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
Commit-Queue: smut <smut@google.com>
6 years ago
Takuto Ikuta 980d615e7e [bootstrap/win] Upgrade Python to 2.7.13.
This is followup of
https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/571171/

Bug: 741001
TEST: > gclient version # to update python
TEST: > .\python.bat # start python 2.7.13 correctly
Change-Id: I07e596d3006104ccb1c5fe0fde097a3c29f8a5a5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1605541
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
6 years ago
Takuto Ikuta 4492c37a14 [gclient] enable git protocol version 2 for windows
We updated git client to 2.21, so let's use git protocol version 2.

Bug: 875453
Change-Id: I5bd12c5fdcd4b87a067e5c85dd9c464e5d3bade9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1534211
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
6 years ago
Takuto Ikuta efe902b20b Deploy git 2.21.0 to prod win depot_tools users
Bug: 887141
Change-Id: I95cb990511f7879bd9d644fa2817444092222b9a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1524810
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
6 years ago
Takuto Ikuta e5c289fde0 Deploy git 2.21.0 to depot_tools on a bleeding edge
Bug: 887141
Change-Id: If396291e07ceb74093f4da516fd17c9e102eb5f0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1524809
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
6 years ago
Takuto Ikuta cf032973e3 Deploy git 2.20.1 to prod win depot_tools users
Bug: 887141
Change-Id: I9850238f3beb8e4c61deb20a1b2fdfd9e84df935
Reviewed-on: https://chromium-review.googlesource.com/c/1416492
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
6 years ago
Takuto Ikuta beeb6b4d52 Deploy git 2.20.1 to depot_tools on a bleeding edge
Bug: 887141
Change-Id: Ieaa53c18b01f6882f1b8f48c252ec1f9847f94fa
Reviewed-on: https://chromium-review.googlesource.com/c/1416491
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
6 years ago
Andrii Shyshkalov 421bc3f84d Deploy git 2.18 to prod win depot_tools users.
R=hinoka

Bug: 851505
Change-Id: I355334c2a84f175452ff7c17f6b080d2815f0f4c
Reviewed-on: https://chromium-review.googlesource.com/1168131
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
7 years ago
Andrii Shyshkalov 15a5a77db4 Reland "Deploy git 2.18 to depot_tools on a bleeding edge."
This is a reland of d61997d37c

Original change's description:
> Deploy git 2.18 to depot_tools on a bleeding edge.
> 
> R=hinoka
> 
> Bug: 851505
> Change-Id: I3e13da0ec736fb3da4f4a95c71ed07c9a4fd0eca
> Reviewed-on: https://chromium-review.googlesource.com/1168130
> Reviewed-by: Ryan Tseng <hinoka@chromium.org>
> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>

Bug: 851505
Change-Id: I1d8d8062bad14f531d6b0a8bf1a3ce0875afd5b0
Reviewed-on: https://chromium-review.googlesource.com/1168353
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
7 years ago
Andrii Shyshkalov 5e24b0d07e Revert "Deploy git 2.18 to depot_tools on a bleeding edge."
This reverts commit d61997d37c.

Reason for revert: known to not work on mac, at least.

Original change's description:
> Deploy git 2.18 to depot_tools on a bleeding edge.
> 
> R=​hinoka
> 
> Bug: 851505
> Change-Id: I3e13da0ec736fb3da4f4a95c71ed07c9a4fd0eca
> Reviewed-on: https://chromium-review.googlesource.com/1168130
> Reviewed-by: Ryan Tseng <hinoka@chromium.org>
> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>

TBR=hinoka@chromium.org,tandrii@chromium.org

Change-Id: Ie4c12e67cd50a9a4610a69dd55c43f444d79a9dd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 851505
Reviewed-on: https://chromium-review.googlesource.com/1168350
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
7 years ago
Andrii Shyshkalov d61997d37c Deploy git 2.18 to depot_tools on a bleeding edge.
R=hinoka

Bug: 851505
Change-Id: I3e13da0ec736fb3da4f4a95c71ed07c9a4fd0eca
Reviewed-on: https://chromium-review.googlesource.com/1168130
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
7 years ago
Aaron Gable cf4aced37e Update windows git to 2.17.1
This is for security updates related to
CVE 2018-11235
CVE 2018-11234
https://public-inbox.org/git/xmqqy3g2flb6.fsf@gitster-ct.c.googlers.com/

Bug: 847597
Change-Id: I3b2d6b7bf9fe2d93bdc375903357f07f4fff8573
Reviewed-on: https://chromium-review.googlesource.com/1077307
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
7 years ago
Andrii Shyshkalov 6f3c1c82d4 Update windows git to 2.17.0
R=jchinlee@chromium.org

Bug: 811681
Change-Id: Ic09fe7c90690a26f35e71f6313d17097de7553e9
Reviewed-on: https://chromium-review.googlesource.com/1044661
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Jao-ke Chin-Lee <jchinlee@chromium.org>
7 years ago
Andrii Shyshkalov 1575912136 Update windows bleeding-edge git to 2.17.0
R=jchinlee@chromium.org

Bug: 811681
Change-Id: I0f98bcb3a8006d78a8658e50a6e012171b24b679
Reviewed-on: https://chromium-review.googlesource.com/1043491
Reviewed-by: Jao-ke Chin-Lee <jchinlee@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
7 years ago
Jao-ke Chin-Lee 9cb8fad0b3 Update windows git to 2.16.2
Bug: 811681
Change-Id: I2ef7238baececcf87643cba78d72622922ad881c
Reviewed-on: https://chromium-review.googlesource.com/939991
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Jao-ke Chin-Lee <jchinlee@chromium.org>
7 years ago
Aaron Gable 53a6291165 Update windows bleeding-edge git to 2.16.2
Bug: 811681
Change-Id: Id7b276274ba6e2e52fba9a19e6c15d5fd972c178
Reviewed-on: https://chromium-review.googlesource.com/919530
Commit-Queue: Aaron Gable <agable@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
7 years ago
Aaron Gable cde045d55b Update depot_tools prod win git to 2.15.1.2
R=iannucci

Bug: 749709
Change-Id: I2b2dbde5ac74e20c36da0c691999f9dc09ea7ca5
Reviewed-on: https://chromium-review.googlesource.com/806996
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
7 years ago
Robert Iannucci 7d47eb5495 [PRESUBMIT] Add cipd package checks for all known manifests.
This also improves the cipd manifest canned check to produce unique
names in order to debug PRESUBMIT's more easily.

Adds onto
  https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/708354

R=maruel@chromium.org, tandrii@chromium.org, vadimsh@chromium.org

Bug:
Change-Id: I9f086996998608092a4d23f5c98fbac34117a9e4
Reviewed-on: https://chromium-review.googlesource.com/811445
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
7 years ago
Aaron Gable 873be6fd45 Update depot_tools bleeding-edge win git to 2.15.1.2
R=iannucci

Bug: 749709
Change-Id: Id254c60b9fba981824b267ccaaf4dc7f35428a8a
Reviewed-on: https://chromium-review.googlesource.com/806974
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
7 years ago
Aaron Gable 4a2cb46cd6 Update depot_tools prod git to 2.15.0
Bug: 749709
Change-Id: I60c56bd664b9e51643578a79bb41497315e2d64b
Reviewed-on: https://chromium-review.googlesource.com/750241
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
7 years ago
Aaron Gable 0a01aa6823 Update depot_tools bleeding-edge git to 2.15.0
Bug: 749709
Change-Id: I17beca5c374c080502833b30a26b68a0774689ef
Reviewed-on: https://chromium-review.googlesource.com/749633
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
7 years ago
Robert Iannucci 59c6ed1cb7 Bump git on windows to 2.14.1.
R=dnj@chromium.org

Bug: 754427
Change-Id: Ieea8b3e46b9bb799bd42a29e4c0c791f7d846b22
Reviewed-on: https://chromium-review.googlesource.com/611482
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Robert Iannucci 5d771462d4 Bump (bleeding edge) git on windows to 2.14.1.
R=dnj@chromium.org

Bug: 754427
Change-Id: I46f3c757457a07e4639af6605c45cd907299e8b5
Reviewed-on: https://chromium-review.googlesource.com/611394
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques eb1feb9090 [cipd] Bump version, log at warning (#2).
Bump the CIPD client version to
b482bfa19d3fa79b4b40dd5ac7a34479052e3df1. This version inculdes support
for the "-log-level" flag.

Update CIPD bootstrap scripts and tool installation scripts to log at
warning level, so that standard operation doesn't produce any logs.

This version differs from the previous CL in that the "selfupdate"
command no longer uses "-log-level". This fixes an issue where the
current CIPD, which doesn't support "-log-level", is given the flag
prior to actually updating to a version that does.

BUG=chromium:748651
TEST=canary
  - Tested this CIPD version on canary waterfall successfully.

Change-Id: I69dfe522d890eb307214f18d0467ce921a766446
Reviewed-on: https://chromium-review.googlesource.com/589568
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Daniel Jacques 9f9d82ac94 Revert "[cipd] Bump version, log at warning."
This reverts commit 18aa2d93ed.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> [cipd] Bump version, log at warning.
> 
> Bump the CIPD client version to
> e2a98b41adb3403b5b7771c4101b42a55dc2dd9e. This version inculdes support
> for the "-log-level" flag.
> 
> Update CIPD bootstrap scripts and tool installation scripts to log at
> warning level, so that standard operation doesn't produce any logs.
> 
> BUG=chromium:748651
> TEST=canary
>   - Tested this CIPD version on canary waterfall successfully.
>   - Tested "gclient" bootstrap and "vpython" / "led" on Windows system,
>     no output and works.
>   - Tested "vpython" / "led" on OSX system, no output and works.
> 
> Change-Id: Iae316908283c43c504f293aafdf897df83dccf8d
> Reviewed-on: https://chromium-review.googlesource.com/588889
> Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
> Commit-Queue: Daniel Jacques <dnj@chromium.org>

TBR=iannucci@chromium.org,dnj@chromium.org

Change-Id: Ia611c1aeb204c609ff3469076b8256c54e702230
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:748651
Reviewed-on: https://chromium-review.googlesource.com/589527
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques 18aa2d93ed [cipd] Bump version, log at warning.
Bump the CIPD client version to
e2a98b41adb3403b5b7771c4101b42a55dc2dd9e. This version inculdes support
for the "-log-level" flag.

Update CIPD bootstrap scripts and tool installation scripts to log at
warning level, so that standard operation doesn't produce any logs.

BUG=chromium:748651
TEST=canary
  - Tested this CIPD version on canary waterfall successfully.
  - Tested "gclient" bootstrap and "vpython" / "led" on Windows system,
    no output and works.
  - Tested "vpython" / "led" on OSX system, no output and works.

Change-Id: Iae316908283c43c504f293aafdf897df83dccf8d
Reviewed-on: https://chromium-review.googlesource.com/588889
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques 7f12a2e47b [bootstrap/win] Roll bleeding edge entry bat.
Roll the bleeding-edge entry batch file into production. This follows
successful tested deployment of the batch file on canary systems.

BUG=chromium:746602
TEST=canary
R=iannucci@chromium.org, smut@chromium.org, vadimsh@chromium.org

Change-Id: Iaee2a9b4d178ffff3da9a73f4538465bb5367e84
Reviewed-on: https://chromium-review.googlesource.com/580307
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques 642dd84c89 [win/bootstrap] Use "for" instead of "set".
Using "set /p" to read a file fails when STDOUT is not connected.
Replace it with a method of reading using "for".

In the Python batch file, we eat up some of our sled buffer in order to
accommodate currently-running Python scripts. They should now resume
past the end of the file without issue. The sled was oversized, so this
shouldn't affect upgrade paths.

BUG=chromium:746602
TEST=local
  - On Windows machine, tested upgrade from pre-rework and current
    bootstraps. This code works on both, and no running Python
    processes were disrupted on exit, suggesting the sled change is
    sound.
R=iannucci@chromium.org, smut@chromium.org

Change-Id: Ica51999d672dd4e448fdad797bffc06ec9e9febf
Reviewed-on: https://chromium-review.googlesource.com/578725
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: smut <smut@google.com>
8 years ago
Dan Jacques 68b54e7893 [bootstrap/win] Upgrade Python to 2.7.13.
Upgrade Python on Windows to 2.7.13, and use 64-bit Python on 64-bit
Windows systems.

BUG=chromium:741001
TEST=local

Change-Id: Ib30ccec580a0db8ee59be3f027f96b039b0097fe
Reviewed-on: https://chromium-review.googlesource.com/571171
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques c4dd3e8264 [bootstrap/win] Remove support for legacy installs
Migrate CIPD bundle installations to stable and remove support in
Windows bootstrap code for legacy (non-Windows) bootstrap installations.

This includes removal of support for
- ZIP installation paths - everything through CIPD now.
- Python legacy code (though cleanup logic still exists).
- JavaScript downloads.
- Separate Git package versioning.

This is a push from "bleeding edge" to production.

BUG=chromium:740171
TEST=local, prod-exemplar
  - Tested cold and warm upgrade and downgrade.
  - Tested upgrade and downgrade step via "update_scripts".

Change-Id: I3dc4392ef2eaa2d7cf829d560128b74e4dbd2cba
Reviewed-on: https://chromium-review.googlesource.com/567767
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques 68f6f279b4 [bootstrap/win] Always use "cipd.bat".
CIPD flags change, and using "cipd.exe" directly skips the selfupdate
step. Remove the optimization and always call "cipd.bat".

BUG=chromium:742448
TEST=None
R=iannucci@chromium.org, sergeyberezin@chromium.org

Change-Id: Ieb353c695a8ef58a51d046f102266d4926a3447c
Reviewed-on: https://chromium-review.googlesource.com/570682
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Sergey Berezin <sergeyberezin@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques 3a8717e17f [bootstrap/win] Remove legacy Git support.
Remove non-CIPD Git installation code path. This changes the stable Git
version to use the Git package and removes legacy Git support.

Note that this is different from legacy (non-CIPD-managed) bootstrap.
This will be removed in a future patch.

This is effectively a roll of bleeding-edge into stable.

BUG=chromium:740171
TEST=local

Change-Id: Ia320efd7866f6c11e8aa18d6ce6157614b44fcab
Reviewed-on: https://chromium-review.googlesource.com/567764
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques 3d9b58819b [win_tools] Use bundled Python CIPD packages (#2).
Re-land of bf1446791e.

Enable bundled Python CIPD packages in bleeding-edge mode. This
replaces the ZIP unpacking approach used before, and introduces
validation and management through the CIPD tool. The bleeding edge
version will only install if a sentinel file is present in the
"depot_tools" root; otherwise, default behavior will continue.

This method adds a upgrade and downgrade path to/from ZIP and
CIPD installations. This is done by rewriting the "win_tools.bat"
process:

1) Ensure that a bootstrap Python is present.
2) Use it to run "win_tools.py", which has the functionality of
    "git_bootstrap.py" plus Python installation.
3) Run "win_tools.py" with appropriate flags.

Some tricks were employed to handle cases where there is an
already-running Python instance that uses the current Python
installation and executable. This happens on bots because the
system uses the same "depot_tools" checkout at multiple launch
layers. To this end, we use the "python.bat" as the "current Python"
authority and refrain from cleaning up old Python directories if their
"python.exe" binaries are currently in use.

We change the Git bleeding edge file to share the same
sentinel file as Python, ".bleeding_edge".

The new Python should have the same facilities as the original Python
bundle.

BUG=chromium:740171
TEST=local

Change-Id: I51ba6415c60b95c2aaba94b6e21bd9b3fc82f35d
Reviewed-on: https://chromium-review.googlesource.com/568524
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques e8eed65fec Always copy "python.bat".
This change should be safe, since batch files are not generally
write-contended, and "gclient" is run atomically (other things depend on
this).

The mechanism to detect whether we're downgrading is broken by
"bot_update". While future syncs should not encounter this issue,
current syncs still have no way to resolve it, and are left with a
broken "python.bat" setup.

We remedy this by always installing "python.bat", even if it's already
there. This is safe, since the intended state of HEAD is for this file
to be present at all times.

BUG=chromium:741650
TEST=None

Change-Id: Ief28217bf89d201d830c46b31e0b4040c51cb322
Reviewed-on: https://chromium-review.googlesource.com/568588
Reviewed-by: Sergey Berezin <sergeyberezin@chromium.org>
8 years ago
Andrii Shyshkalov af5c20f5a4 Revert "[win_tools] Use bundled Python CIPD packages."
This reverts commit bf1446791e.

Reason for revert: broke win bots http://o/410053

Original change's description:
> [win_tools] Use bundled Python CIPD packages.
> 
> Enable bundled Python CIPD packages in bleeding-edge mode. This
> replaces the ZIP unpacking approach used before, and introduces
> validation and management through the CIPD tool. The bleeding edge
> version will only install if a sentinel file is present in the
> "depot_tools" root; otherwise, default behavior will continue.
> 
> This method adds a upgrade and downgrade path to/from ZIP and
> CIPD installations. This is done by rewriting the "win_tools.bat"
> process:
> 
> 1) Ensure that a bootstrap Python is present.
> 2) Use it to run "win_tools.py", which has the functionality of
>     "git_bootstrap.py" plus Python installation.
> 3) Run "win_tools.py" with appropriate flags.
> 
> Some tricks were employed to handle cases where there is an
> already-running Python instance that uses the current Python
> installation and executable. This happens on bots because the
> system uses the same "depot_tools" checkout at multiple launch
> layers. To this end, we use the "python.bat" as the "current Python"
> authority and refrain from cleaning up old Python directories if their
> "python.exe" binaries are currently in use.
> 
> We change the Git bleeding edge file to share the same
> sentinel file as Python, ".bleeding_edge".
> 
> The new Python should have the same facilities as the original Python
> bundle.
> 
> BUG=chromium:740171
> TEST=local
> 
> Change-Id: I1b3b7d31d47d1a37a9dba9114d31681bec558736
> Reviewed-on: https://chromium-review.googlesource.com/563036
> Commit-Queue: Daniel Jacques <dnj@chromium.org>
> Reviewed-by: Robbie Iannucci <iannucci@chromium.org>

TBR=iannucci@chromium.org,dnj@chromium.org

Change-Id: I84574a01bbad6596912e4aaa34f019d24720b638
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:740171
Reviewed-on: https://chromium-review.googlesource.com/567009
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
8 years ago
Dan Jacques bf1446791e [win_tools] Use bundled Python CIPD packages.
Enable bundled Python CIPD packages in bleeding-edge mode. This
replaces the ZIP unpacking approach used before, and introduces
validation and management through the CIPD tool. The bleeding edge
version will only install if a sentinel file is present in the
"depot_tools" root; otherwise, default behavior will continue.

This method adds a upgrade and downgrade path to/from ZIP and
CIPD installations. This is done by rewriting the "win_tools.bat"
process:

1) Ensure that a bootstrap Python is present.
2) Use it to run "win_tools.py", which has the functionality of
    "git_bootstrap.py" plus Python installation.
3) Run "win_tools.py" with appropriate flags.

Some tricks were employed to handle cases where there is an
already-running Python instance that uses the current Python
installation and executable. This happens on bots because the
system uses the same "depot_tools" checkout at multiple launch
layers. To this end, we use the "python.bat" as the "current Python"
authority and refrain from cleaning up old Python directories if their
"python.exe" binaries are currently in use.

We change the Git bleeding edge file to share the same
sentinel file as Python, ".bleeding_edge".

The new Python should have the same facilities as the original Python
bundle.

BUG=chromium:740171
TEST=local

Change-Id: I1b3b7d31d47d1a37a9dba9114d31681bec558736
Reviewed-on: https://chromium-review.googlesource.com/563036
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques 265255f501 [bootstrap/win] Replace "python.bat" only on downgrade.
We're implementing a bootstrap downgrade for potential revert of
https://chromium-review.googlesource.com/c/563036

Currently, the downgrade sees the presence of the landed patch
as a sign to completely reinstall Python. However, this causes
the "python276_bin" directory to be deleted, which both ruins
any running process (notably "service manager" and BuildBot)
and fails due to those running processes, leaving the system in
a broken state.

Instead, we'll view the revert path as a signal to swap in the
old "python.bat" specifically, then fall through to standard
installation detection. Since the upgrade will not actually
delete "python276_bin", the expected revert case will leave it
alone, preserving existing execution environments.

BUG=chromium:740966, chromium:740171
TEST=local
  - Ran simulation of revert path with this change, observed
    better outcome.

Change-Id: I0dfa5924a27bcaba49134272a344f7b9f1d475c5
Reviewed-on: https://chromium-review.googlesource.com/567167
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques 4cb9d7422d [bootstrap/win] Enable revert from upcoming patch.
The upcoming CL, https://chromium-review.googlesource.com/c/563036,
updates "bootstrap/win"'s mechanism. However, if that patch needs to be
reverted, its "python.bat" stub may still exist in the reverted
repository, and will continue to point to the reverted toolchain.

We don't have a good way to detect whether we should revert "python.bat".
Instead, we will look a file generated by the CL,
"//python_bin_reldir.txt". If we find it, we will assume that the updated
"python.bat" is in use, and reinstall.

Note that if that CL lands and does not require a revert, this logic
will be deleted. It's just there as a safety mechanism to allow a safe
revert.

BUG=chromium:740171
TEST=local

Change-Id: Ifc638cf0512d2a889c37fbf6b8e3f7a3269331b1
Reviewed-on: https://chromium-review.googlesource.com/566073
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques 79e897b017 [git_bootstrap] Support new Git bundles.
Support new fully-bundled Git CIPD packages. These are generated by the
"third_party_packages" infra builder, and require no installer.

BUG=chromium:740171
TEST=local

Change-Id: I6126655359ba981eb18ad1e088fe787100719d46
Reviewed-on: https://chromium-review.googlesource.com/562531
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques 13f258bf05 Remove SVN bootstrapping and some tooling.
Remove Windows SVN bootstrapping and some SVN tooling. Since
"depot_tools" is no longer sync'd to SVN, and we have been committed to
Git for years now, this is obsolete. Any transition code will never
reach SVN users, and any remaining code should not be used by Chromium
developers.

BUG=chromium:630904
TEST=unit

Change-Id: Ie984e8400a748702b125eaeed8157719ef4b88cc
Reviewed-on: https://chromium-review.googlesource.com/562748
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
8 years ago
Robbie Iannucci 362bc168c4 Revert "[git_bootstrap.py] Remove unused options, use cipd in %PATH%."
This reverts commit 1123fea235.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> [git_bootstrap.py] Remove unused options, use cipd in %PATH%.
> 
> In particular:
>   * Rely on cipd.bat in %PATH%
>   * Always calculate --bits
>   * Rely on %CIPD_CACHE_DIR%
> 
> R=​vadimsh@chromium.org
> 
> Bug: 635421
> Change-Id: I972edfd7f48e90770696afba70ec7e11fc24ce95
> Reviewed-on: https://chromium-review.googlesource.com/495407
> Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
> Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
> 

TBR=iannucci@chromium.org,vadimsh@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I3536d6668432141ae1528ca49ea66d97fdeb5318
Reviewed-on: https://chromium-review.googlesource.com/495727
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Robert Iannucci 1123fea235 [git_bootstrap.py] Remove unused options, use cipd in %PATH%.
In particular:
  * Rely on cipd.bat in %PATH%
  * Always calculate --bits
  * Rely on %CIPD_CACHE_DIR%

R=vadimsh@chromium.org

Bug: 635421
Change-Id: I972edfd7f48e90770696afba70ec7e11fc24ce95
Reviewed-on: https://chromium-review.googlesource.com/495407
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
8 years ago
anatoly techtonik a5bec84569 [bootstrap] Move bitness detection logic into Python
Bug: 703064

Change-Id: I319e89a43533b86c0eedff56fec2665fa13e728c
Reviewed-on: https://chromium-review.googlesource.com/466006
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
anatoly techtonik bf3dd5a8db Fix "git help <command>" on 32-bit Windows
xcopy flags replaced - /i dest is directory, /q quiet, /d newer, /y yes

Bug: 707150
Change-Id: I3fe47dae78bd7153aa66dbf207f8d8c73eb4dc83
Reviewed-on: https://chromium-review.googlesource.com/464866
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: anatoly techtonik <techtonik@gmail.com>
8 years ago
Quinten Yearsley 442fb64cab depot_tools: Run automatic spell-checker.
Specifically, this CL was made by running codespell
(https://github.com/lucasdemarchi/codespell), manually filtering
for changes in non-third-party files that appear correct.

Change-Id: Ia16c1b29483d777744450d7bea45a178cf877a25
Reviewed-on: https://chromium-review.googlesource.com/420871
Commit-Queue: Quinten Yearsley <qyearsley@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
8 years ago
Robbie Iannucci 229ac2bb53 Revert "Revert "Stop adhoc cipd client bootstrap.""
This reverts commit 70f351e784.

Reason for revert: CIPD bootstrap is now PS 2.0 compatible.

BUG=674363,673940

Original change's description:
> Revert "Stop adhoc cipd client bootstrap."
> 
> This reverts commit c6569aab12.
> 
> Reason for revert: This caused crbug.com/674363, needs further investigation.
> 
> Original change's description:
> > Stop adhoc cipd client bootstrap.
> > 
> > This was used before to get the git installer, but now depot_tools manages its
> > own copy of CIPD.
> > 
> > BUG=673940
> > 
> > Change-Id: I1077ff7eb27d9ca191dc0092b7cacaaa69c40449
> > Reviewed-on: https://chromium-review.googlesource.com/420303
> > Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
> > Reviewed-by: Aaron Gable <agable@chromium.org>
> > Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
> > 
> 
> TBR=iannucci@chromium.org,agable@chromium.org,vadimsh@chromium.org,dnj@chromium.org,sebmarchand@chromium.org,chromium-reviews@chromium.org
> BUG=673940
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: I7aa5561ad0df67831987cd8d53a84105d42d9663
> Reviewed-on: https://chromium-review.googlesource.com/420320
> Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
> Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
> 

TBR=iannucci@chromium.org,agable@chromium.org,vadimsh@chromium.org,dnj@chromium.org,chromium-reviews@chromium.org,sebmarchand@chromium.org
BUG=673940
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I822312b1507003ee07930ef7527e12b997457673
Reviewed-on: https://chromium-review.googlesource.com/420321
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Robbie Iannucci 70f351e784 Revert "Stop adhoc cipd client bootstrap."
This reverts commit c6569aab12.

Reason for revert: This caused crbug.com/674363, needs further investigation.

Original change's description:
> Stop adhoc cipd client bootstrap.
> 
> This was used before to get the git installer, but now depot_tools manages its
> own copy of CIPD.
> 
> BUG=673940
> 
> Change-Id: I1077ff7eb27d9ca191dc0092b7cacaaa69c40449
> Reviewed-on: https://chromium-review.googlesource.com/420303
> Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
> Reviewed-by: Aaron Gable <agable@chromium.org>
> Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
> 

TBR=iannucci@chromium.org,agable@chromium.org,vadimsh@chromium.org,dnj@chromium.org,sebmarchand@chromium.org,chromium-reviews@chromium.org
BUG=673940
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I7aa5561ad0df67831987cd8d53a84105d42d9663
Reviewed-on: https://chromium-review.googlesource.com/420320
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago