Commit Graph

175 Commits (e5063207a71eb654d01ec2eb86102652125514de)

Author SHA1 Message Date
Dan Jacques 209a681f9c [git] Remove hard-coded "depot_tools" Git.
Several tools, including the "git" recipe module, hard-code a
checkout-relative "git.bat" path. Git is a feature that is provided by
the system, both to tooling and recipes:

1) For users, "depot_tools" must be on PATH, and during setup it will
   have installed "git.bat", ensuring that Git tooling is available in
   PATH.
2) For bots, the system is responsible for providing "git.bat" on PATH.
   This is typically done at "/b/depot_tools/git.bat", which is sync'd
   through the "update_scripts" step.

By formally treating Git as a system resource, we absolve Windows bots
and users from manually installing a depot_tools-local Git, bringing
them in line with other platforms.

BUG=chromium:590806
TEST=local

Change-Id: I93e89855cdd330a2ba7a8cfb8117a1789d1ab54e
Reviewed-on: https://chromium-review.googlesource.com/568694
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Michael Achenbach 7dadf05dad Query Gerrit for destination branch in bot_update
This makes bot_update query Gerrit when syncing for Gerrit tryjobs.

The query will establish the actual destination branch of the CL,
which can be different from master (e.g. a feature branch).

Bot_update will ensure to use this destination branch for the repo
that corresponds to the CL's project. Both the main project or a
deps'ed project work.

Initially, this lives behind a flag that can be controlled in
downstream recipes. Eventually we'll set this to default after a
gradual roll-out.

Branches in branch-heads are not supported yet.

Bug: 740456
Change-Id: I4a0d50e2ca8fe90f8d29964a3ffab17291f7be60
Reviewed-on: https://chromium-review.googlesource.com/566824
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
8 years ago
recipe-roller b80fac66ad Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/3d76281f54f9d0568fcbae1acbf884c86fbb29a7 [uuid] Remove unused uuid module (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I395cafcd2aca4eb02492ce90dcc412601253a39d
Reviewed-on: https://chromium-review.googlesource.com/567478
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
Paweł Hajdan, Jr 24025d3e71 tryserver: add support for gerrit footers
Bug: 644609
Change-Id: Ied7439d688b89f90b9705968927521b5060c5fb4
Reviewed-on: https://chromium-review.googlesource.com/565564
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
8 years ago
Michael Achenbach 49b8147be0 Add support to query a CL's branch to gerrit recipe module
Bug: 740456
Change-Id: Ic4f3c1f046cfa025d8e60172ee58e2b2e1b76ee6
Reviewed-on: https://chromium-review.googlesource.com/565560
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
8 years ago
Michael Achenbach 9cb802ca48 Improve gerrit recipe_module example
The /a suffix in the hots URL is not necessary as the gerrit_util adds it by
default to authenticate. Having it hard-coded in the example can be misleading.

Bug: 685318
Change-Id: I333cd8b2aa9020aadfd186f2e18fbff0aa917681
Reviewed-on: https://chromium-review.googlesource.com/564611
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
recipe-roller 8af4646948 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/9959b0728785d9f5e7110e4db516f7cf09090bed Remove shutil module. (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iebb3ba8b4ae2051b33345702f6f85ed04cacc937
Reviewed-on: https://chromium-review.googlesource.com/564018
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
recipe-roller b12c5256f9 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/26475d6816d9e1f79dc23d0cf5714e6fda5573aa Add more experimental downstream trybots (phajdan.jr@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic984a8f1c8505e9a251b737d3468ef2ac2050714
Reviewed-on: https://chromium-review.googlesource.com/563997
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
recipe-roller 016f92e6f5 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/5c349eb803f77edd0458b36e41bfdf17ebf4eab9 [file] allow glob to handle nested patterns (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6a01f7ed504870a2b7b25341165a5cb01027de05
Reviewed-on: https://chromium-review.googlesource.com/563859
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
recipe-roller 6850698593 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/12e7ca450489763234b7380edddfddc8d9e3cb8f recipes.py test: enforce recipe expectations literally (phajdan.jr@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic2ed0099adf5d1254d077ef189087bc5390f361c
Reviewed-on: https://chromium-review.googlesource.com/563236
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
recipe-roller e36a84317b Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/241ddc299faa009b8842f95d40fdd7760b81791e [file] fix glob_paths when NO paths match, add tests. (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I706bcd7efa2ed820ca05adb8ae026c0ed734f229
Reviewed-on: https://chromium-review.googlesource.com/562241
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
Michael Achenbach 6fbf12f21c Enable query for changes in gerrit recipe module
This'll allow to query gerrit from recipes for e.g. current changes in
CQ.

Bug: 685318
Change-Id: I73d08d4b186b2e5fe044fd4d4fafd9db62e27066
Reviewed-on: https://chromium-review.googlesource.com/558939
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
8 years ago
recipe-roller a8fdab966f Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/11d7598fa760017f168aec1c53a9ced74b2fc8a6 [file] Allow placeholders in file.copy (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0c4b2d35f805aaeb647a574aa6d62fa5caeea1ef
Reviewed-on: https://chromium-review.googlesource.com/560737
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
recipe-roller 6a1ab84339 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/9419a0e2ea6ab618b33a1e962ce62b36664e5234 [doc] Put all external URLs in a single section. (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I39a8a4934d27e1461379cf5be48f722cc571c103
Reviewed-on: https://chromium-review.googlesource.com/559511
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
recipe-roller 32f0e5d7af Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/4b6b21e529889fcb3f4b1128ddd0fb941210012a [doc] Fix randomization of DEPS link order, give DEPS links fully qualified names (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ifb23eec7d9298dc5cd75536860e5374936fdeae8
Reviewed-on: https://chromium-review.googlesource.com/560130
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
recipe-roller bc9c5ccf00 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/3ac778ec88ee4a878bd75ab8a89162c848b3d1db [recipe_autoroller] regen docs on trivial rolls too. (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia2ec717f995182adb820c0773c11d060405d2223
Reviewed-on: https://chromium-review.googlesource.com/558153
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
Robert Iannucci 54adb2a31c Generate initial recipes README.
Tbr: dnj@chromium.org
Bug:
Change-Id: Icc87cb23571341835e54cc80210fa23bc33fb1f0
Reviewed-on: https://chromium-review.googlesource.com/558382
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
recipe-roller 603545b7ae Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/c8d78bf15c065b5a35ccfc5798d1498d0899bb68 [doc] Automatically generate and update cross-indexed recipe markdown files. (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I64f3ebdbf1565f7f8c08c6e21df516f87533ac7b
Reviewed-on: https://chromium-review.googlesource.com/558392
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
8 years ago
Dan Jacques 70b3f3aae5 [bot_update] Pass spec as file.
"bot_update" currently passes a full "gclient" specification as a
command-line argument to "bot_update.py". This file contains all sorts
of junk that clutters the command-line, and revealed a batch file
escaping bug that seems to be present in the recipe engine. Change this
so that "bot_update" passes the spec as file content instead of a
command-line flag.

Also, "bot_update" apparently called "--spec", which optparse kindly
recognized as the real flag, "--specs". This has always(?) been a bug,
and is no longer a problem.

BUG=chromium:738348
TEST=expectations

Change-Id: I5324b94dd5ef78503e7cfdc28b5fde8f434e4359
Reviewed-on: https://chromium-review.googlesource.com/558207
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques dc598e8223 [bot_update] Prefix PATH, cleanup.
Prefix "depot_tools" to PATH instead of appending. This will ensure that
"depot_tools" pulls resources from the recipe checkout as a preference,
not as a last resort.

Use "env_prefixes" instead of "env" to prefix PATH.

Remove Git speed limit settings, which are taken care of by the Git
wrapper now.

BUG=chromium:738176
TEST=expectations
R=hinoka@chromium.org, iannucci@chromium.org

Change-Id: I2e509a331266e867be323bc70e3bc0f08f85246f
Reviewed-on: https://chromium-review.googlesource.com/556287
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
recipe-roller 1de920efed Roll recipe dependencies (nontrivial).
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/060325b14d5a63ce65e65d93052b265ee310a828 [path] Cleanup and use "C:\" for test Windows base (dnj@chromium.org)
  https://crrev.com/96221bce29d908b951812550036f42520f085dec [generator_script] Make allowed keys strict and improve error handling. (iannucci@chromium.org)
  https://crrev.com/cfff93afa16e61285e295d49f6aa2ba64642f330 [path] bring PLATFORM back to config. (iannucci@chromium.org)


R=martiniss@chromium.org, phajdan.jr@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I214f2a5a0f39b09d7c401da8f997545336335bbb
Reviewed-on: https://chromium-review.googlesource.com/531974
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Robert Iannucci 3a4a725026 [recipes] add .gitattributes for proper recipe bundling
R=dnj@chromium.org

Bug: 662654
Change-Id: Ic5a59eeb67c435d54878ef5f060399f6b2963cd4
Reviewed-on: https://chromium-review.googlesource.com/523015
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
8 years ago
Dan Jacques a07816ddce [infra_paths] Don't export "cleanup" for remote.
"remote_run" builds explicitly supply a cleanup directory in recipe
properties, so it isn't necessary to supply it here.

BUG=chromium:725631
TEST=None
TBR=iannucci@chromium.org

Change-Id: I6eaaeea14bd699181d7ceeff6b3baac2d1cd9861
Reviewed-on: https://chromium-review.googlesource.com/528630
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques 59a74ed558 Add cleanup dir, use with bot_update.
Currently, "bot_update" relies on a BuildBot cleanup mechanism and, to a
lesser extent, the standard BuildBot directory layout. Both of these are
problematic when projecting it into other circumstances, notably
"remote_run" and LUCI.

Have "bot_update" handle its own cleanup. It will now choose a cleanup
directory within the hierarchy of its checkout, and explicitly purge it
prior to execution if it exists. This enforces its expected behavior in
all circumstances and removes its expectations of the greater checkout
layout.

Export "cleanup_dir" via "infra_paths" to point to "build.dead" when
running on BuildBot builds. Otherwise, it is a default directory which,
on Kitchen, is ephemeral by design.

BUG=chromium:725631
TEST=expectations

Change-Id: I664434c542a25aaa7ff3eac216208a2425730fde
Reviewed-on: https://chromium-review.googlesource.com/528057
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
recipe-roller 459b67de81 Roll recipe dependencies (nontrivial).
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/154ef7e5d8f964ef30b1250dd33751582705f6f2 [path] Add concept of a "cleanup" directory. (dnj@chromium.org)


R=dnj@chromium.org, martiniss@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I31787615cfaa6f33deae6c1c0c3d7b748c222d05
Reviewed-on: https://chromium-review.googlesource.com/527503
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Daniel Jacques <dnj@chromium.org>
8 years ago
Robert Iannucci 027a542485 [infra_paths] remove unused goma_deps_cache.
R=dnj@chromium.org

Bug:
Change-Id: I69d2e75a7a6784a611f6e0128f1ba5617f009af2
Reviewed-on: https://chromium-review.googlesource.com/528320
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dave Tu f1631cd003 [bot_update] Remove extraneous slash in revision parsing.
`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>
8 years ago
Robert Iannucci 56038f517d rename example.py -> examples/full.py for all modules
R=dnj@chromium.org, nodir@chromium.org, phajdan.jr@chromium.org

Bug:
Change-Id: I47d8f9311b6ee71583fb989888a1e4d28b5495df
Reviewed-on: https://chromium-review.googlesource.com/520731
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
8 years ago
Paweł Hajdan, Jr 6cfe8d4301 Add disable_syntax_validation gclient config to easily whitelist builders
Bug: 570091
Change-Id: Icb15bcd354c9b524674c6b4496f430c26cf7b89e
Reviewed-on: https://chromium-review.googlesource.com/521482
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
8 years ago
recipe-roller 37f51493cb Roll recipe dependencies (nontrivial).
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>
8 years ago
Paweł Hajdan, Jr c515a8bc46 bot_update: expose --disable-syntax-validation to recipes
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>
8 years ago
Dan Jacques fe92995d40 [cipd] Allow packaging whole root.
Currently, the "cipd" recipe module allows a package to be created by
adding directories to a PackageDefinition via "add_dir". However, there
is no current way to add the entirety of a root directory to a package.
The PackageDefinition will generate a relative path of "''", which CIPD
will reject as empty.

Make it so that if the user supplies the root directory as the directory
to add to the package, it properly includes it as ".".

BUG=None
TEST=local
  - Ran recipe with this modification, seems to work

R=iannucci@chromium.org, nodir@chromium.org, vadimsh@chromium.org

Change-Id: Ib5c72038cf153776808f084db835c60f61fd9044
Reviewed-on: https://chromium-review.googlesource.com/510309
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 063814f82e Remove "url" recipe module.
All known repositories have been switched to "recipe_engine/url".

BUG=None
TEST=None
R=iannucci@chromium.org

Change-Id: Ibed376b916f59b5d7142aa2ffd210919079a0862
Reviewed-on: https://chromium-review.googlesource.com/508163
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Paweł Hajdan, Jr 16d2ae8cb0 bot_update: fix regression with swallowed exception
This was regressed in https://chromium-review.googlesource.com/475950

Downstream regression test added in https://chromium-review.googlesource.com/c/508697/

Bug: 723572
Change-Id: I44dbaf9e4996388b898359141db879bd0a1023d9
Reviewed-on: https://chromium-review.googlesource.com/508790
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
8 years ago
Dan Jacques 7adb584516 [bot_update] Remove retry logic.
Retries are no longer necessary, since the Git wrapper will retry all
transient Git operations.

BUG=None
TEST=None
R=hinoka@chromium.org, iannucci@chromium.org

Change-Id: I18f066004992c98e54665833360944cc7d6550cc
Reviewed-on: https://chromium-review.googlesource.com/506375
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
8 years ago
Andrii Shyshkalov 90e958b3b8 bot_update: set fake user.{name,email} when running rebase.
R=agable@chromium.org,sergeyberezin@chromium.org,iannucci@chromium.org
BUG=722853

Change-Id: I9bd8c259a87cc65e320e99d9c5e18838b970d543
Reviewed-on: https://chromium-review.googlesource.com/505495
Reviewed-by: Sergey Berezin <sergeyberezin@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
8 years ago
Dan Jacques a3ba888db8 [bot_update] Remove "git retry" call.
The Git wrapper now implicitly retries, so this call is unnecessary.

BUG=chromium:721450
TEST=None
R=hinoka@chromium.org, iannucci@chromium.org

Change-Id: I79e42aa050f6fec14506b685d379a76e8296fea3
Reviewed-on: https://chromium-review.googlesource.com/506493
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Dan Jacques 69e760e4a5 Switch to recipe engine "url" module.
BUG=None
TEST=expectations
R=iannucci@chromium.org

Change-Id: I43a65405c957cb6dddd64f61846b926d81046752
Reviewed-on: https://chromium-review.googlesource.com/505278
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Robert Iannucci 5702f0baef [recipes] convert all recipe_modules to use new context module.
R=recipe-roller@chromium.org

Bug:
Change-Id: I84c19965b779f1010c00cd8c857b7533eec7413f
Reviewed-on: https://chromium-review.googlesource.com/502929
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Andrii Shyshkalov 04b51d6de0 Reland of Relax git_footers parsing to match that of Gerrit (JGit).
Previously landed as:
> Change-Id: Ieb6415d55e85b91f11f9052b0fd08cf982b64d51
> Reviewed-on: https://chromium-review.googlesource.com/501849

R=agable@chromium.org,machenbach@chromium.org

Bug: 717504
Change-Id: Iede5c29ff4c317b68d8c2bca319edec140a176f5
Reviewed-on: https://chromium-review.googlesource.com/502908
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
8 years ago
Andrii Shyshkalov 43ec62ec71 Revert "Relax git_footers parsing to match that of Gerrit (JGit)."
This reverts commit 28a5d5defd.

Reason for revert: breaks assumption in function for adding footers

Original change's description:
> Relax git_footers parsing to match that of Gerrit (JGit).
> 
> R=​agable@chromium.org
> 
> Bug: 717504
> Change-Id: Ieb6415d55e85b91f11f9052b0fd08cf982b64d51
> Reviewed-on: https://chromium-review.googlesource.com/501849
> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
> Reviewed-by: Aaron Gable <agable@chromium.org>
> 

TBR=agable@chromium.org,machenbach@chromium.org,tandrii@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Bug: 717504

Change-Id: I9b4d619b2972be8434aff9464f1959fbcb3abd32
Reviewed-on: https://chromium-review.googlesource.com/503030
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
8 years ago
recipe-roller 8a2f54e5c6 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/c594d93e17bd0e32f02620808deed9b1833bd81f [autoroll] Remove support for 'config section' in doc/recipes.py (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8f6f9ee8f5b82ee3a0565815ca1ec31f0af2ba24
Reviewed-on: https://chromium-review.googlesource.com/502587
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
Andrii Shyshkalov 28a5d5defd Relax git_footers parsing to match that of Gerrit (JGit).
R=agable@chromium.org

Bug: 717504
Change-Id: Ieb6415d55e85b91f11f9052b0fd08cf982b64d51
Reviewed-on: https://chromium-review.googlesource.com/501849
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
8 years ago
recipe-roller 070c2e3eee Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/bf2ff828987549b946135919bd1bffd6e42fd8fd [doc/recipes.py] Add option to recipes.py to allow it to work without .git (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I73f11890503702e9af7c24941457425c5cc46267
Reviewed-on: https://chromium-review.googlesource.com/499770
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
recipe-roller 69a239e477 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/497f5b7f92cea8e5273d56cc3cba876fb18b42d9 [doc/recipes.py] fix issue when running recipes.py from . (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6bae466acee1d5131d689a01803780dbea2ca174
Reviewed-on: https://chromium-review.googlesource.com/499929
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
recipe-roller 1ae7d33b5d Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/e90c11af854574dd68edd0e7c7a5e04ceb49ffd0 [recipes.cfg] remove support for api_version 1. (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I4037656dd987d0f8aca762761e0ff8ae9034f19f
Reviewed-on: https://chromium-review.googlesource.com/499987
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
recipe-roller 80b30caf53 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/cfeeb53051e02856a35395a69b09f822ad35e2e5 [doc/recipes.py] Improve copypasta bootstrap script. (iannucci@chromium.org)


TBR=iannucci@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie57e5caef2c447be3d44866c1f75b1d655effe84
Reviewed-on: https://chromium-review.googlesource.com/499768
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
Michael Achenbach b4a7969036 Add back helper method still used in build repo
Follow up fix for:
https://chromium-review.googlesource.com/c/497432

TBR=tandrii@chromium.org

Bug: 717457
Change-Id: I66fb86f46cbdc6d9e34ce656541760af313beea8
Reviewed-on: https://chromium-review.googlesource.com/497410
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Michael Achenbach e39a9a46be Migrate remaining chromium configs to build repo
This removes remaining configs that are tied to the
chromium recipe_module.

This directly depends on:
https://chromium-review.googlesource.com/c/497449/

In case of a revert, both CLs should be reverted.

Bug: 717457
Change-Id: I35ef5c480a08d54c27f7545f94ebee3b8d20374f
Reviewed-on: https://chromium-review.googlesource.com/497432
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Michael Achenbach a469aeec53 Remove Chromium's gclient configs from depot_tools
This directly depends on adding these configs to build:
https://chromium-review.googlesource.com/c/496187/

The CL adding the configs to build must also roll depot_tools to this CL.

In case of a revert, both CLs must be reverted.

Bug: 717457
Change-Id: I458b52e184b668a3ace18ea0948363a2795f7161
Reviewed-on: https://chromium-review.googlesource.com/496107
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Robert Iannucci ff51bcd1f8 [bot_update] fix Property default to be actual JSON.
R=dnj@chromium.org

Bug:
Change-Id: I18eb355282f2efc067a6dc70e1136f9a49d3488a
Reviewed-on: https://chromium-review.googlesource.com/494306
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Andrii Shyshkalov e0a1afbf4b Fix bot_update parsing of gerrit footers with empty values.
Follow up based on https://chromium-review.googlesource.com/487963

R=agable@chromium.org, machenbach@chromium.org, maruel@chromium.org

Bug: 715614,717504
Change-Id: I0902647c8fa8a2ff9643890c029fc8b75a72ff7e
Reviewed-on: https://chromium-review.googlesource.com/493466
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
8 years ago
Michael Achenbach 801d955c43 Reverse chromium's got_revision_mapping
This migrates chromium to the new mapping after testing it for V8 in 
https://chromium-review.googlesource.com/485579

Also switches dependent gclient configs. This will be a noop downstream.

Bug: 713356
Change-Id: Ic1cb4de139895021dfd35063a9d6c8e7a4e77b9d
Reviewed-on: https://chromium-review.googlesource.com/488604
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
8 years ago
Michael Achenbach 644a1d87e6 Stop passing deprecated manifest flag to bot_update
The flag has been deprecated in:
https://chromium-review.googlesource.com/c/486640

This is a separate CL for the expectation changes.

Bug: 398105
Change-Id: I129186323e5ecffe441febe7fa3c6c72bfc9c4cd
Reviewed-on: https://chromium-review.googlesource.com/486782
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Michael Achenbach 86989d7b0f Reland "Remove obsolete bot_update flag"
This reverts commit c91686c087.

Reason for revert: Reland a light version of the original CL that keeps a dummy flag around.

Original change's description:
> Revert "Remove obsolete bot_update flag"
> 
> This reverts commit 72048266d5.
> 
> Reason for revert: Skia depends on it. Need to clean that up first. Currently blocks roll:
> https://skia-review.googlesource.com/c/14145/
> 
> Original change's description:
> > Remove obsolete bot_update flag
> > 
> > Using the manifest is the default since a long time. The flag was only introduced to smoothly switch it on. Now the flag is not needed anymore.
> > 
> > Bug: 398105
> > Change-Id: I4eb1c98e26e025a69f8b0a7c48877d78c031702e
> > Reviewed-on: https://chromium-review.googlesource.com/485659
> > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
> > Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
> > Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> > 
> 
> TBR=phajdan.jr@chromium.org,machenbach@chromium.org,tandrii@chromium.org,sergiyb@chromium.org,chromium-reviews@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: Iffc4d8076abd3c92feebfd7f3ef88be7ce34b692
> Reviewed-on: https://chromium-review.googlesource.com/486639
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> 

R=phajdan.jr@chromium.org,machenbach@chromium.org,tandrii@chromium.org,sergiyb@chromium.org,chromium-reviews@chromium.org
Bug: 398105

Change-Id: I817d446f8a8eff84c5d7143ac2b9c527a40991f1
Reviewed-on: https://chromium-review.googlesource.com/486640
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
8 years ago
recipe-roller e4a7a0427b Roll recipe dependencies (nontrivial).
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/944125e6d1e8c831d09517bde658a38d8f81db37 Sort step presentation properties (machenbach@chromium.org)


R=martiniss@chromium.org, phajdan.jr@chromium.org

Change-Id: Iec279f8331bd0e7673ce785c3095714bc5cfe401
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Reviewed-on: https://chromium-review.googlesource.com/486600
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
8 years ago
Michael Achenbach c91686c087 Revert "Remove obsolete bot_update flag"
This reverts commit 72048266d5.

Reason for revert: Skia depends on it. Need to clean that up first. Currently blocks roll:
https://skia-review.googlesource.com/c/14145/

Original change's description:
> Remove obsolete bot_update flag
> 
> Using the manifest is the default since a long time. The flag was only introduced to smoothly switch it on. Now the flag is not needed anymore.
> 
> Bug: 398105
> Change-Id: I4eb1c98e26e025a69f8b0a7c48877d78c031702e
> Reviewed-on: https://chromium-review.googlesource.com/485659
> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
> Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
> Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> 

TBR=phajdan.jr@chromium.org,machenbach@chromium.org,tandrii@chromium.org,sergiyb@chromium.org,chromium-reviews@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Iffc4d8076abd3c92feebfd7f3ef88be7ce34b692
Reviewed-on: https://chromium-review.googlesource.com/486639
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Michael Achenbach 72048266d5 Remove obsolete bot_update flag
Using the manifest is the default since a long time. The flag was only introduced to smoothly switch it on. Now the flag is not needed anymore.

Bug: 398105
Change-Id: I4eb1c98e26e025a69f8b0a7c48877d78c031702e
Reviewed-on: https://chromium-review.googlesource.com/485659
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Michael Achenbach c180dc4030 Remove directly accessing got_revision_mapping
Bug: 713356
Change-Id: I2c5d92152b293ca553efc875f49c28fb0fc888ed
Reviewed-on: https://chromium-review.googlesource.com/484460
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Nodir Turakulov cc6bb19218 cipd recipe module: allow rel path to be the root
Fix the bug in cipd recipe module preventing to add the package root as a dir.

R=vadimsh@chromium.org

Bug:

Change-Id: Ia9b7adbf7f9b0e0e6dd4158934197e4f69ba993e
Reviewed-on: https://chromium-review.googlesource.com/483850
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
8 years ago
Michael Achenbach 521c9ed147 Support overriding gclient config in a bot_update method
Bug: 713356
TBR=tandrii@chromium.org

Change-Id: I15d73492712b66c7670793f3c47e4cbd89d4e1cd
Reviewed-on: https://chromium-review.googlesource.com/484440
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Michael Achenbach 93f69da3b2 Support merging got_revision mappings during transition phase.
A few rare recipes use two or more solutions side-by-side.

This allows switching one solution in isolation to use the new mapping.

Bug: 713356
Change-Id: Id51f2f777681401843004577a4de65a6c5d1e4a6
Reviewed-on: https://chromium-review.googlesource.com/484341
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
8 years ago
Michael Achenbach 12e7751d9d Fix bogus master-manager got_revision_mapping
Bug: 713356
TBR=tandrii@chromium.org

Change-Id: I4af86f67216e1fc07da099e42608ad4a93c6b354
Reviewed-on: https://chromium-review.googlesource.com/484401
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
8 years ago
Michael Achenbach 81b4d420bf Reverse got_revision_mapping in bot_update
This is the first step in reversing got_revision_mapping.

This CL:
- Adds a new configuration got_revision_reverse_mapping.
- Ensures only the old or the new configuration is used.
- Transforms the old to the new configuration within bot_update.

In follow up CLs we will migrate all clients to the new mapping, then delete the old and rename the new again.

Bug: 713356
Change-Id: Icdbd6a3748c6e5399b9c4867a3d8292973325160
Reviewed-on: https://chromium-review.googlesource.com/483479
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Dan Jacques 9d2b4b235c Move tools/build "url" and "gitiles" modules.
Add "tools/build"'s "url" and "gitiles" recipe modules into
"depot_tools". "gitiles" had an explicit dependency on "depot_tools", so
this formalizes this dependency.

To support "url", we vendor "requests" from "tools/build" into
"depot_tools" for it.

BUG=None
TEST=expectations

Change-Id: I1ba634ae264b5c9d3adee20db3397c83a6c52c45
Reviewed-on: https://chromium-review.googlesource.com/483316
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
8 years ago
Robert Iannucci dd2298ab2b Add OWNERS for recipes/
$ git log --oneline --format='%aE' --since '12 months ago' recipes/ | sort | uniq

Bug:

R=dnj@chromium.org, nodir@chromium.org, phajdan.jr@chromium.org

Change-Id: I1c9213b9bc2cf20d117c4691190f18ea75bcaaef
Reviewed-on: https://chromium-review.googlesource.com/482541
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
8 years ago
Nodir Turakulov a7ba43a3a8 Revert "bot_update: pin depot_tools"
This reverts commit e8acd40a11.

Reason for revert: broke windows builds :(

Original change's description:
> bot_update: pin depot_tools
> 
> gclient runhooks often calls scripts that depend on scripts in depot_tools.
> Currently bot_update only ensures that depot_tools is present in $PATH, but
> otherwise uses whatever depot_tools already specified in $PATH. We don't pin
> depot_tools before running a recipe, so using whatever depot_tools in $PATH
> is not hermetic.
> 
> Insert the path to the pinned depot_tools to the beginning of $PATH
> 
> R=​iannucci@chromium.org
> 
> Bug:
> 
> Change-Id: I31d04ba2ec7c409f89d58a51502ce3565e3a02a1
> Reviewed-on: https://chromium-review.googlesource.com/481072
> Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
> Commit-Queue: Nodir Turakulov <nodir@chromium.org>
> 

TBR=iannucci@chromium.org,nodir@chromium.org,phajdan.jr@chromium.org,chromium-reviews@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I1a70f0f54e9b9cea7fc2f9897e62f558204a4684
Reviewed-on: https://chromium-review.googlesource.com/481440
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
8 years ago
Nodir Turakulov e8acd40a11 bot_update: pin depot_tools
gclient runhooks often calls scripts that depend on scripts in depot_tools.
Currently bot_update only ensures that depot_tools is present in $PATH, but
otherwise uses whatever depot_tools already specified in $PATH. We don't pin
depot_tools before running a recipe, so using whatever depot_tools in $PATH
is not hermetic.

Insert the path to the pinned depot_tools to the beginning of $PATH

R=iannucci@chromium.org

Bug:

Change-Id: I31d04ba2ec7c409f89d58a51502ce3565e3a02a1
Reviewed-on: https://chromium-review.googlesource.com/481072
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
8 years ago
Dan Jacques 8dd4edae99 bot_update: Show failed patch in "Patch Failure".
Have "bot_update.py" export the failing patch body in its JSON. Have the
recipe actually emit the patch body in the "Patch Failure" step instead
of the "bot_update" step, and remove the "Patch Failure" step's
indirection to the "bot_update" step for patch failure.

This will provide a more straightforward user interface: the red step
that says "Patch Failure" now includes the details of the patch failure!

BUG=chromium:710477
TEST=expectations

Change-Id: I6ad305f0b972de89e4f0b5eb70edf41980447abd
Reviewed-on: https://chromium-review.googlesource.com/475950
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
8 years ago
Paweł Hajdan, Jr 3978290b21 Enable strict coverage for all modules
Bug: chromium:693058
Change-Id: I6e00f73141722dc47f8da16e21dadd1d4e26a14f
Reviewed-on: https://chromium-review.googlesource.com/475911
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Paweł Hajdan, Jr f4597a4f91 bot_update: add with_tags argument to ensure_checkout
Bug: 710817
Change-Id: Ifb2a9abe605d9e403c55ec1360d186af12dd2f34
Reviewed-on: https://chromium-review.googlesource.com/475775
Reviewed-by: Michael Moss <mmoss@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
8 years ago
Paweł Hajdan, Jr 7ac2c9a292 bot_update: add --with_tags switch
Bug: 710817
Change-Id: Ice7cefaf5c5a5cac431a95d3adfa44f323eafb2f
Reviewed-on: https://chromium-review.googlesource.com/475230
Reviewed-by: Michael Moss <mmoss@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
8 years ago
Paweł Hajdan, Jr 36d66752a7 bot_update: add basic deapply_patch logic
This will make it reusable, e.g. for https://chromium-review.googlesource.com/c/465417/

Bug: none
Change-Id: I96f13c6ff3aff22c787e290979602e7a0d725213
Reviewed-on: https://chromium-review.googlesource.com/474139
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
8 years ago
recipe-roller 94fd88eeea Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug
(or complain)

recipe_engine:
  https://crrev.com/168be2068b30c07600603f1ce7fffe8f21348965 [doc/recipes.py] stop intercepting --help (iannucci@chromium.org)

TBR=iannucci@chromium.org

Change-Id: If3c76b68fd224eae3bf5c333ca80ef633a7554a1
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Reviewed-on: https://chromium-review.googlesource.com/473791
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
recipe-roller 1f85eb3720 Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug
(or complain)

recipe_engine:
  https://crrev.com/e77477ba61ef082e2e34d58fd1251a1cb707f698 make doc/recipes.py supported version 1 and 2 (iannucci@chromium.org)

TBR=iannucci@chromium.org

Change-Id: I0dce7abdcf831c81aa8144b9bef9ceb14a65b425
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Reviewed-on: https://chromium-review.googlesource.com/462655
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
Nodir Turakulov 757f207969 Reland: add "generic" infra path config
It proved to be dangerous to introduce conditional logic into recipes
and recipe modules to alternate between buildbot and luci modes, namely
it touches buildbot code paths, which can be very dangerous.

Instead, introduce "generic" path config that configures
existing base paths from the built-in ones.

Also remove swarmbucket path config because it is not used.

--

This CL is a simpler version of
https://chromium-review.googlesource.com/c/459234/
in that it does not make generic path config a default.
This avoids behavioral change in downstream recipe packages and
makes rolling into build.git trivial.

R=iannucci@chromium.org
BUG=660481

Change-Id: Ifc147e29e68a6e0c800da73a8e356238dfc2938a
Reviewed-on: https://chromium-review.googlesource.com/461359
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
Nodir Turakulov 284e34ae28 Revert "add "generic" infra path config"
This reverts commit 8b5b594115.

Reason for revert: nothing wrong with this CL, but implementing a manual roll to build.git takes more than 20 min. I will reland this CL once my roll to build.git CL is ready

Original change's description:
> add "generic" infra path config
> 
> It proved to be dangerous to introduce conditional logic into recipes
> and recipe modules to alternate between buildbot and luci modes, namely
> it touches buildbot code paths, which can be very dangerous.
> 
> Instead, introduce "generic" default path config that configures
> existing base paths from the built-in ones.
> 
> Also remove swarmbucket path config because it is not used.
> 
> R=​iannucci@chromium.org
> BUG=660481
> 
> Change-Id: Ide0e1f64913fe35766b997ab5b55f01f4c63aa58
> Reviewed-on: https://chromium-review.googlesource.com/459234
> Commit-Queue: Nodir Turakulov <nodir@chromium.org>
> Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
> 

TBR=iannucci@chromium.org,nodir@chromium.org,chromium-reviews@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=660481

Change-Id: If27a537689dfe3669015bcbc7a5f07ca1f5c10af
Reviewed-on: https://chromium-review.googlesource.com/461223
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
8 years ago
Nodir Turakulov 8b5b594115 add "generic" infra path config
It proved to be dangerous to introduce conditional logic into recipes
and recipe modules to alternate between buildbot and luci modes, namely
it touches buildbot code paths, which can be very dangerous.

Instead, introduce "generic" default path config that configures
existing base paths from the built-in ones.

Also remove swarmbucket path config because it is not used.

R=iannucci@chromium.org
BUG=660481

Change-Id: Ide0e1f64913fe35766b997ab5b55f01f4c63aa58
Reviewed-on: https://chromium-review.googlesource.com/459234
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
recipe-roller 2e401be12e Roll recipe dependencies (trivial).
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).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug
(or complain)

recipe_engine:
  https://crrev.com/51395b1ba1ea684f5e99d2bb03c934f2ac441984 [recipes.cfg] ONLY support jsonpb. (iannucci@chromium.org)

TBR=iannucci@chromium.org

Change-Id: I65893b7f3f9db0209863376e1d2659869842d94d
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Reviewed-on: https://chromium-review.googlesource.com/458882
Reviewed-by: <recipe-roller@chromium.org>
Commit-Queue: <recipe-roller@chromium.org>
8 years ago
Paweł Hajdan, Jr f83e262e6d Adjust paths in bot_update.py after moving recipes to subdir
Bug: 699120, 704864
Change-Id: Iea62a8382ae2553af3f080f07358de53c278ad7c
Reviewed-on: https://chromium-review.googlesource.com/459496
Reviewed-by: Emma Söderberg <emso@chromium.org>
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
8 years ago
Paweł Hajdan, Jr f14709556d Move recipes to their own subdirectory
This will help remove confusion when depot_tools' recipes.py
ends up in PATH.

BUG=699120

Change-Id: Id4c21b0cc6bb022ea2c21145abe76bebb0a8d9c1
Reviewed-on: https://chromium-review.googlesource.com/458430
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
8 years ago
luqui@chromium.org b371a1c852 Rename recipes/ to fetch_configs/
We are making depot_tools a proper (chromium) recipe package, which assumes
that recipes are located in recipes/.  So I need to move these other kinds of
recipes out of the way.

BUG=564920
R=dpranke@chromium.org, iannucci@chromium.org

Review URL: https://codereview.chromium.org/1494793002 .

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@297837 0039d316-1c4b-4281-b951-d872f2087c98
9 years ago
thakis@chromium.org 7c4b703a05 Add a recipe for fetching pdfium.
With this, `fetch pdfium` is all that's needed to get a pdfium checkout.

Review URL: https://codereview.chromium.org/1415243002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@297340 0039d316-1c4b-4281-b951-d872f2087c98
9 years ago
mark@chromium.org ea1b3d5ed8 Add a fetch recipe for Crashpad
R=iannucci@chromium.org

Review URL: https://codereview.chromium.org/1416663003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@297180 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
ricow@google.com b00ae10f9a Add fetch recipe for fletch
R=erikcorry@google.com, iannucci@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1317833004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296978 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
jochen@chromium.org 38784a63dd Delete pdfium fetch recipe
It's incorrect - the checkout it creates is unusable for pdfium
development.

Correct instructions are here:
https://code.google.com/p/pdfium/wiki/Build

BUG=510419
R=phajdan.jr@chromium.org

Review URL: https://codereview.chromium.org/1382543002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296946 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
jochen@chromium.org e0cc9e4949 Delete blink fetch recipe
Devs should use fetch chromium instead

R=phajdan.jr@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1367473002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296860 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
vadimsh@chromium.org 8c9aab2ee3 Add breakpad fetch recipe.
$ mkdir breakpad && cd breakpad
$ fetch breakpad
$ cd src/
$ ./configure && make

R=iannucci@chromium.org
BUG=502355

Review URL: https://codereview.chromium.org/1325603003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296495 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
dpranke@chromium.org 310db36f52 Add a fetch recipe for gyp.
R=agable@chromium.org
BUG=481696

Review URL: https://codereview.chromium.org/1266713009

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296204 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
agable@chromium.org faa4b4eb51 Fix 'fetch blink' recipe for proper management.
This both ensures that 'git auto-svn' has been properly run, and also that
the Blink checkout is appropriately 'unmanaged'.

R=dpranke@chromium.org, mmoss@chromium.org
BUG=289742

Review URL: https://codereview.chromium.org/1186053007

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295916 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
agable@chromium.org b98f3f2571 Revert "Run install-build-deps in the middle of 'fetch chromium'"
This reverts commit 78624b6839.

The reason is that install-build-deps.sh isn't meant to be run on mac
or windows, and this implementation ran it everywhere.

TBR=dpranke@chromium.org
BUG=229270

Review URL: https://codereview.chromium.org/1186893003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295686 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
agable@chromium.org 78624b6839 Run install-build-deps in the middle of 'fetch chromium'
R=mmoss@chromium.org
BUG=229270

Review URL: https://codereview.chromium.org/1187913002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295679 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
ricow@google.com d6a68b3d85 Add fetch recipes for dart and dartium
BUG=

Review URL: https://codereview.chromium.org/1157543005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295572 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
phajdan.jr@chromium.org 5604359d27 Add "fetch" recipe for pdfium
BUG=none

Review URL: https://codereview.chromium.org/1093913003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294890 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
kjellander@chromium.org 8769224d8d Switch WebRTC recipe to Git.
BUG=412012

Review URL: https://codereview.chromium.org/765373002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294546 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
kjellander@chromium.org 67d6122ea1 WebRTC fetch recipe: Always sync branch heads.
This will make gclient download all the remote branches of
the WebRTC Git repo when the 'fetch webrtc' recipe runs.
This will result in a new fetch line in the .git/config for
branch-heads, like this:
[remote "origin"]
  url = https://chromium.googlesource.com/external/webrtc.git
  fetch = +refs/heads/*:refs/remotes/origin/*
  fetch = +refs/branch-heads/*:refs/remotes/branch-heads/*

In order to get the same setup for an existing checkout, do:
gclient sync --with_branch_heads
git fetch origin

BUG=437776
TESTED=Ran 'fetch webrtc' and 'fetch webrtc_ios' and verified
the remote branches were available with 'git branch --remotes'

R=jochen@chromium.org

Review URL: https://codereview.chromium.org/1030573002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294528 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
iannucci@chromium.org 4cf3473aea Fix infra and infra_internal fetch recipes.
expect_tests and testing_support are now pulled in via DEPS.

R=cmp@chromium.org, pgervais@chromium.org
BUG=

Review URL: https://codereview.chromium.org/901083003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293963 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
bradnelson@google.com f650d9e7cc Switching nacl git recipe for fetch.
BUG=None
TEST=local
R=iannucci@chromium.org

Review URL: https://codereview.chromium.org/824153005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293595 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
loislo@chromium.org 67b59e98dc Speculative fix for build on windows build bots.
The root of problem is a _cache_temp file.
git_cache expected that it is a folder.
So rmtree failed to remove it.

BUG=
TBR= dpranke@chromium.org, enne@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/825133002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293502 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
tfarina@chromium.org e480fb766d Add fetch recipe for Skia's Buildbot repository.
Tested with the following command lines:

$ cd
$ mkdir skia_test
$ cd skia_test
$ fetch skia_buildbot
$ cd skia_buildbot
 # confirm the repo is what one would expect.

BUG=None
TEST=see above
R=agable@chromium.org

Review URL: https://codereview.chromium.org/777513002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293283 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago