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>
Note that because it is now a gerrit footer, it both appears in the same block
as the Change-Id footer (no blank line between them), and isn't guaranteed to be
above the Change-Id footer. This doesn't matter during "git cl upload", when
a Change-Id hasn't been allocated yet, but will show up during "git cl
description".
Bug: 681184
Change-Id: I2ab6fc13be8e992709618a666012410b1a7c02de
Reviewed-on: https://chromium-review.googlesource.com/446660
Commit-Queue: Aaron Gable <agable@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Retain the httplib import to continue using its constants, but actually make
the http(s) connections using httplib2. The latter has built-in support for
proxy settings, which then actually allows people behind proxies to interact
with Gerrit.
Compared to httplib, the biggest changes are:
- There's only one Http class instead of HTTPConnection and HTTPSConnection.
- Http.request() returns a tuple (response, contents).
- Http.request() expects a full URI instead of just a path, as Http's
constructor does not take a host parameter.
- The response object inherits from dict.
- All headers in a response are lower-cased.
All in all, it is possible to see that httplib2 support was retro-fitted
into the code, but that should not worsen its readability.
Changes since https://chromium-review.googlesource.com/c/458221/:
- Catch httplib2.ServerNotFoundError exceptions in GceAuthenticator, as httplib2
catches socket.gaierror (which was previously being used to detect when
metadata.google.internal was not accessible) and throws a ServerNotFoundError
exception instead.
Patch written in collaboration with Alexis Menard <alexis.menard@intel.com>.
BUG=672729
R=alexis.menard@intel.com,agable@chromium.org,tandrii@chromium.org
Change-Id: Iaefa9caf3d8c0bc6ff67f562cd0b6bd9fade2f24
Reviewed-on: https://chromium-review.googlesource.com/458480
Reviewed-by: Aaron Gable <agable@chromium.org>
Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
This reverts commit d75686454b.
Reason for revert:
third_party.httplib2.ServerNotFoundError: Unable to find the server at metadata.google.internal
Original change's description:
> gerrit_util: Use httplib2 for communication instead of httplib.
>
> Retain the httplib import to continue using its constants, but actually make
> the http(s) connections using httplib2. The latter has built-in support for
> proxy settings, which then actually allows people behind proxies to interact
> with Gerrit.
>
> Compared to httplib, the biggest changes are:
> - There's only one Http class instead of HTTPConnection and HTTPSConnection.
> - Http.request() returns a tuple (response, contents).
> - Http.request() expects a full URI instead of just a path, as Http's
> constructor does not take a host parameter.
> - The response object inherits from dict.
> - All headers in a response are lower-cased.
>
> All in all, it is possible to see that httplib2 support was retro-fitted
> into the code, but that should not worsen its readability overall.
>
> Patch written in collaboration with Alexis Menard <alexis.menard@intel.com>.
>
> BUG=672729
> R=alexis.menard@intel.com,agable@chromium.org,tandrii@chromium.org
>
> Change-Id: Ic40e804064e74e89bc2ad979572628f1bd78c19a
> Reviewed-on: https://chromium-review.googlesource.com/458221
> Reviewed-by: Aaron Gable <agable@chromium.org>
> Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
>
TBR=agable@chromium.org,alexis.menard@intel.com,raphael.kubo.da.costa@intel.com,tandrii@chromium.org,chromium-reviews@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=672729
Change-Id: Idfacd314b381232733bb92a02ec2fb85f016effd
Reviewed-on: https://chromium-review.googlesource.com/457792
Reviewed-by: Aaron Gable <agable@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
Retain the httplib import to continue using its constants, but actually make
the http(s) connections using httplib2. The latter has built-in support for
proxy settings, which then actually allows people behind proxies to interact
with Gerrit.
Compared to httplib, the biggest changes are:
- There's only one Http class instead of HTTPConnection and HTTPSConnection.
- Http.request() returns a tuple (response, contents).
- Http.request() expects a full URI instead of just a path, as Http's
constructor does not take a host parameter.
- The response object inherits from dict.
- All headers in a response are lower-cased.
All in all, it is possible to see that httplib2 support was retro-fitted
into the code, but that should not worsen its readability overall.
Patch written in collaboration with Alexis Menard <alexis.menard@intel.com>.
BUG=672729
R=alexis.menard@intel.com,agable@chromium.org,tandrii@chromium.org
Change-Id: Ic40e804064e74e89bc2ad979572628f1bd78c19a
Reviewed-on: https://chromium-review.googlesource.com/458221
Reviewed-by: Aaron Gable <agable@chromium.org>
Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
This reverts commit e718958ca0.
Reason for revert: Suspected to have caused an outage http://o/370111
It seems to have shifted the current dir to a new place, created another checkout and some bots with small disk space ran out of disk.
Original change's description:
> define builder_cache base path
>
> chromium_tests recipe module currently checks if builder_cache base path
> is defined. If it is not, it let's the caller to decide where to put
> the cache. All the callers choose start_dir.
> https://cs.chromium.org/search/?q=get_checkout_dir&type=cs
>
> In LUCI we want to use [CACHE]/builder as builder cache. To do that we
> want to update chromium_tests recipe module to use [CACHE]/builder if
> builder_cache is not defined.
>
> Define builder_cache in buildbot to point to start dir, so that in LUCI
> it is not defined and thus [CACHE]/builder is used.
>
> R=iannucci@chromium.org
> BUG=660481
>
> Change-Id: I9018da5c43a5396add6a26ad2c12b1755fbe6307
> Reviewed-on: https://chromium-review.googlesource.com/457439
> Reviewed-by: Ryan Tseng <hinoka@chromium.org>
> Commit-Queue: Nodir Turakulov <nodir@chromium.org>
>
TBR=iannucci@chromium.org,hinoka@chromium.org,estaab@chromium.org,nodir@chromium.org,chromium-reviews@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=660481
Change-Id: Ia239ebe12a5bea1987c2ee23e543460efe753c81
Reviewed-on: https://chromium-review.googlesource.com/457778
Reviewed-by: Sergey Berezin <sergeyberezin@chromium.org>
Commit-Queue: Sergey Berezin <sergeyberezin@chromium.org>
chromium_tests recipe module currently checks if builder_cache base path
is defined. If it is not, it let's the caller to decide where to put
the cache. All the callers choose start_dir.
https://cs.chromium.org/search/?q=get_checkout_dir&type=cs
In LUCI we want to use [CACHE]/builder as builder cache. To do that we
want to update chromium_tests recipe module to use [CACHE]/builder if
builder_cache is not defined.
Define builder_cache in buildbot to point to start dir, so that in LUCI
it is not defined and thus [CACHE]/builder is used.
R=iannucci@chromium.org
BUG=660481
Change-Id: I9018da5c43a5396add6a26ad2c12b1755fbe6307
Reviewed-on: https://chromium-review.googlesource.com/457439
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
These methods are used to produce report in the next CL.
BUG=689543
Change-Id: I71b2705ac8b046103b4982d47f7ec97f8ef7818b
Reviewed-on: https://chromium-review.googlesource.com/455838
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
That JSON output format shows some additional fields such as bug number
for CLs, label and component for issues.
Also does minor changes like replacing the old code.google.com
references and using short urls when possible.
BUG=None
Change-Id: I988d292dc57b72a2f2c6f12096266df8a09a4dd8
Reviewed-on: https://chromium-review.googlesource.com/422203
Reviewed-by: Aaron Gable <agable@chromium.org>
Commit-Queue: Nicolas Dossou-Gbété <dgn@chromium.org>
This will enable it to be compatible with both the textpb and
upcoming jsonpb form of recipes.cfg.
BUG=699379
Change-Id: Iafa3d959190648eca4fa864aaa79430759e568fe
Reviewed-on: https://chromium-review.googlesource.com/455585
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Robbie Iannucci <iannucci@chromium.org>
Also - Turn on GC for the unrecognized repos.
BUG=skia:6241
TEST=local
git_cache.py populate with chromium and non-chromium repo.
Change-Id: I100d3665e317b29c5b3f69b49c165ce88cd019d6
Reviewed-on: https://chromium-review.googlesource.com/455979
Commit-Queue: Ryan Tseng <hinoka@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
If the commit or cherry-pick command fails, git automatically drops
the user into a state where they can try to manually fix it. That's
great. But with the old call order, it would also leave the metadata
unset. This sets the issue and patchset number before doing the
potentially-failing heavy lifting, so that the branch will be in a
consistent state after the user finishes fixing up the failed command.
BUG=701130
Change-Id: I792b9fb9e61ba62626c19aa1837d21f8cd8f594e
Reviewed-on: https://chromium-review.googlesource.com/456039
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
This issue is fixed in Python 2.7.12, but we don't guarantee
that we use that version everywhere. The root issue is that,
on certain platforms (e.g. Mac), the exception indicating that
the underlying command (e.g. 'hg') was not found is too large,
and loading the pickle representing the exception fails.
This CL catches this specific exception and treats it identically
to the OS properly raising a 'command not found' code.
BUG=699173
Change-Id: I0483ab0d1d0b6a3dfcfd26f2d9644817b5b5284f
Reviewed-on: https://chromium-review.googlesource.com/455537
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
There will be many other methods that will need to share state.
BUG=689543
R=machenbach@chromium.org
Change-Id: I4ce6fe173ff7c92e57737417c65125156606a664
Reviewed-on: https://chromium-review.googlesource.com/455780
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
New version skips unnecessary hash check for files that are already
in the cache.
R=iannucci@chromium.org
BUG=
Change-Id: Icdbd1d171fa77cf7e353c84e82ded8eafd88c88d
Reviewed-on: https://chromium-review.googlesource.com/454241
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>