This is to make it easy to specify a different .gitcookies for bots.
BUG=skia:5979
Change-Id: Iaeb148d25f1c2c3d06ab5e1b155999566ef5f294
Reviewed-on: https://chromium-review.googlesource.com/413075
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Ravi Mistry <rmistry@google.com>
set_failure_hash assumes that (StepFailure is raised) => (some steps
were ran), which is not a correct implication.
Check that there was a step before.
R=iannucci@chromium.org
BUG=
Change-Id: I36ad187584cb42696676e3339f6a77fc77dfd3b1
Reviewed-on: https://chromium-review.googlesource.com/412994
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Currently if path_config is not specified, infra_paths
defaults to buildbot paths. We want to make this behavior explicit,
so we don't have to introduce a new "luci" path configuration which
tells infra_paths module to do nothing.
Buildbot now specifies path_config=buildbot since
https://chromium-review.googlesource.com/c/412029/ ,
so now we can remove this default.
This also affects all expectation files because this CL switches
the default path configuration from Buildbot to LUCI.
In particular, it changes default git cache dir from [GIT_CACHE]
to [CACHE]/git.
Also code paths that work only in Buildbot environment has to
have a test with path_config=buildbot.
R=iannucci@chromium.org, martiniss@chromium.org
BUG=662586
Change-Id: Ifeabe13e69810dd24a6deb4830699f8c9fafafae
Reviewed-on: https://chromium-review.googlesource.com/411989
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
We cannot easily move git cache location on all buildbot bots, but we
need to define a new value for LUCI.
Introduce infra_paths.default_git_cache_dir which must be used instead
of using path['git_cache'] directly.
R=iannucci@chromium.org, martiniss@chromium.org
BUG=662586
Change-Id: I5244d7a761da94858df798abbd423c85f55936af
Reviewed-on: https://chromium-review.googlesource.com/411993
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Update recipe modules that use path "build" to either check whether it
is defined or fail with an explanation if it is not defined.
This CL marks failure code paths as `# pragma: no cover`. This comment
will be removed in https://chromium-review.googlesource.com/c/411989/
R=iannucci@chromium.org, martiniss@chromium.org
BUG=662586
Change-Id: Ieb7637deefa6e366dfe4c30c7711d60daa06575a
Reviewed-on: https://chromium-review.googlesource.com/412225
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Use depot_tools module's methods or package_repo_resource function to
determine paths of tools that live in depot_tools
R=iannucci@chromium.org, martiniss@chromium.org
BUG=662586
Change-Id: Ic3172308c140f7f19e982ec6ec5a4b1b83261e1b
Reviewed-on: https://chromium-review.googlesource.com/411936
Reviewed-by: Erik Staab <estaab@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
This causes other automated tooling to think that the entire
upload has failed, when really only a small part of it has.
BUG=666160
Change-Id: I0d646e77c54330d642097aebe70ec145ae291267
Reviewed-on: https://chromium-review.googlesource.com/412281
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
slave_build path, defined by infra_paths module, is unnecessarily tied
to our buildbot setup which we are trying to deprecate in favor of LUCI.
In practice it is always == start_dir and that's what we want in LUCI too.
Update all code that uses slave_build path to use start_dir instead.
R=iannucci@chromium.org, martiniss@chromium.org
BUG=662586
Change-Id: Id52aa535d6a4f52670d581bf56aab65f670b1861
Reviewed-on: https://chromium-review.googlesource.com/412075
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Stephen Martinis <martiniss@chromium.org>
CURRENT_WORKING_DIR in path module was renamed to START_DIR. Update
infra_paths accordingly.
This includes recipe_engine roll.
R=iannucci@chromium.org, martiniss@chromium.org
BUG=662586
Change-Id: I913c16b1a185c5b753284ed934a5e60912887f0f
Reviewed-on: https://chromium-review.googlesource.com/412055
Reviewed-by: Stephen Martinis <martiniss@chromium.org>
Commit-Queue: Nodir Turakulov <nodir@chromium.org>
Add the "gsutil" recipe module to depot_tools. This module is copied
from "tools/build"'s recipe module set at:
d6205ab0c0e8e1920f4af1617b5b3767cd944492.
Two Chromium-specific functions have been removed:
- download_with_polling
- download_latest_file
It also adds a function, "gsutil_py_path", which mimics the function in
the "depot_tools" recipe module. Ultimately, the latter will be phased
out in favor of the module-specific function.
BUG=chromium:662895
TEST=expectations
Change-Id: Ie049d637593b3f02b9ff029fbd20fd3f7170faa6
Reviewed-on: https://chromium-review.googlesource.com/411970
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Robbie Iannucci <iannucci@chromium.org>
Remove nested retries on checkout. Since the outer loop handles retries
specially, we want to let it exclusively handle retries. This will
prevent the inner retry loop triggering a timeout condition (rather than
a failure condition) with the outer loop.
BUG=chromium:665116
TEST=None
Change-Id: I4bf0c08b75861bf1c95060452118c314a121f9f3
Reviewed-on: https://chromium-review.googlesource.com/411397
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Commit-Queue: Ryan Tseng <hinoka@chromium.org>
Strip the netrc hack; apparently it only works on some versions of
Python, and the bots have many different versions.
Instead, we will actually emit the modified netrc as a new file without
comments or newlines, then read that directly from the vanilla netrc
module.
BUG=chromium:664664
TEST=None
Change-Id: I245759e2eae4e6ddcdffa0aaef59866a62bd0240
Reviewed-on: https://chromium-review.googlesource.com/411416
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Ryan Tseng <hinoka@chromium.org>
Reviewed-by: Michael Moss <mmoss@chromium.org>
Processing comments seems to trigger a bug on (some?) Windows systems
due to a negative seek. This CL runs a comment-free version of the
"netrc" file through the parser.
BUG=chromium:664664
TEST=local
- Uploaded this CL with the change.
Change-Id: I65f5d2f8c1162b3b3a13c66d8becb1cfccf27991
Reviewed-on: https://chromium-review.googlesource.com/411455
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Reviewed-by: Michael Moss <mmoss@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>
The path always starts with a / so we need to check if it starts with /a/ to see if it's already authorized, not a/.
BUG=664664
Change-Id: I2bf6abe36dd88bc7d096e67d5e7a56fe9f143f47
Reviewed-on: https://chromium-review.googlesource.com/410721
Reviewed-by: Aaron Gable <agable@chromium.org>
Commit-Queue: First Last <smut@chromium.org>
Currently, 'bot_update' uses the 'gclient' that is on the system path.
Now, it will use the 'gclient.py' that is in the same 'depot_tools'
checkout as the 'bot_update' recipe module.
Also don't ignore "git_cache" move errors.
BUG=664254,663990,663440
TEST=None
Review-Url: https://codereview.chromium.org/2492963002
Before, presubmit_support would fail with not very useful stacktrace if
Gerrit returns 404, which is usually due to missing/invalid credentials.
This CL fixes that and improves the exception message, and also improves
logic in git_cl.
R=agable@chromium.org
BUG=
Change-Id: Iae8f0c24422c46af70929c7d5d71993164887511
Reviewed-on: https://chromium-review.googlesource.com/409650
Commit-Queue: Aaron Gable <agable@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
New binaries for Mac, Linux32, Linux64, Windows. Also update shell script.
See the bug for how these were built.
The main "new" thing is a regression fix where 1.7.1 broke %e %r in
NINJA_STATUS.
BUG=663749
Review-Url: https://codereview.chromium.org/2489023002
It's too ridiculously slow on Windows and Mac, and there's very little benefit to finding files that were "copied" from an historical file (as
opposed to one that's in the current patch).
BUG=544889
Review-Url: https://codereview.chromium.org/2488823002
This is still important, but at least now it won't result
in a stacktrace.
Change-Id: If6e7e15a98b0a03df7e978201762fea670312ede
Reviewed-on: https://chromium-review.googlesource.com/408660
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Aaron Gable <agable@chromium.org>
Reason for revert:
Broke build CQ: https://luci-milo.appspot.com/swarming/task/324a5636a5cfdf10/steps/Uncaught_Exception/0/logs/exception/0
Original issue's description:
> fix swarmbucket infra path
>
> Do not rely on buildbot config which goes up 4 directories. Everything
> should happen in the workdir. Also exclude any project-specific paths.
>
> This fixes the problem that swarmbucket builds expect git_cache to be in
> /b/git_cache. It should be in the CWD/git_cache. This will fix Windows
> builders.
>
> R=vadimsh@chromium.org
> BUG=
>
> Committed: b8b5aaea92
TBR=vadimsh@chromium.org,nodir@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review-Url: https://codereview.chromium.org/2484433002
Do not rely on buildbot config which goes up 4 directories. Everything
should happen in the workdir. Also exclude any project-specific paths.
This fixes the problem that swarmbucket builds expect git_cache to be in
/b/git_cache. It should be in the CWD/git_cache. This will fix Windows
builders.
R=vadimsh@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2477033002