Allows the command line itself to be distinguished
from the surrounding error message.
Review URL: https://codereview.chromium.org/1152443004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295481 0039d316-1c4b-4281-b951-d872f2087c98
Include links to the tracking bug and to request creating git repositories. Also
include note how to keep subversion support, if users require this.
It won't warn when git-svn clones are used.
There is no functional change except printing a warning to stderr.
Remove stale code. The CHROMIUM_SRC_URL variable is also defined in gclient.py
so it looks like a copy-paste error.
R=iannucci@chromium.org
BUG=475320
Review URL: https://codereview.chromium.org/1154173003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295478 0039d316-1c4b-4281-b951-d872f2087c98
This makes for cleaner code and better --help.
Also, handle case when deps directory does not exist.
Review URL: https://codereview.chromium.org/1160833005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295475 0039d316-1c4b-4281-b951-d872f2087c98
This is needed to run the presubmit commit checks.
Tested this CL by running git cl presubmit locally.
BUG=420910
Review URL: https://codereview.chromium.org/1156923006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295472 0039d316-1c4b-4281-b951-d872f2087c98
Before this change, the commit message only contains issue number and
patchset number. Adding CL description should be more informative.
Review URL: https://codereview.chromium.org/1128473003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295449 0039d316-1c4b-4281-b951-d872f2087c98
It was not very obvious what kind of date format is expected.
Review URL: https://codereview.chromium.org/1114093004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295448 0039d316-1c4b-4281-b951-d872f2087c98
I started to build a package for setting up a VS2015 bot, and realized
I didn't really remember how the toolchain setup worked. So I wrote
a readme for this directory.
I see I will live to regret putting way too many "2013"s in various
places in these scripts. :/
R=dpranke@chromium.org
BUG=492774
Review URL: https://codereview.chromium.org/1150033010
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295437 0039d316-1c4b-4281-b951-d872f2087c98
The default encoding for python 2.7 strings is ascii. Some of
the titles of issues, such as http://crbug.com/477941, contain
non-ascii characters, and cause my_activity.py to throw an
exception. Re-encode the unicode title string to ascii with
the 'replace' option, to replace non-ascii characters with '?'.
R=maruel@chromium.org
BUG=none
TEST=Run `my_activity.py` with #477941 in my issues list; correctly
lists issues without throwing an exception.
Review URL: https://codereview.chromium.org/1151053003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295425 0039d316-1c4b-4281-b951-d872f2087c98
This command no longer makes sense here, it should only be used from the chromite bootstrap workflow.
This is basically a revert of cl:896393003
BUG=None
Review URL: https://codereview.chromium.org/1138363002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295415 0039d316-1c4b-4281-b951-d872f2087c98
It is inspired by src/tools/roll_swarming_client.py but generalized.
R=dpranke@chromium.org, stip@chromium.org
BUG=
Review URL: https://codereview.chromium.org/1147033003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295386 0039d316-1c4b-4281-b951-d872f2087c98
Also, if one --last_week option is given, the date range should be
strictly one week before when without the option.
BUG=
Review URL: https://codereview.chromium.org/1086083007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295052 0039d316-1c4b-4281-b951-d872f2087c98
After crrev.com/896453002, if "git cl diff" ends up having conflict, it
would be cleaned up. However, if "git cl patch" ends up with conflict,
the user should still be able to manually resolve them.
BUG=438362
TEST=tests/git_cl_test.py
Review URL: https://codereview.chromium.org/1091283004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295051 0039d316-1c4b-4281-b951-d872f2087c98
The assertion in TestGitCl.tearDown should be done after super.tearDown
is finished. Otherwise if the assertion fails, mocked objects won't be
restored properly, and the next TestCase would be affected.
Review URL: https://codereview.chromium.org/1093943002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295049 0039d316-1c4b-4281-b951-d872f2087c98
Also, don't use assert for user error handling plus
some other general python cleanup.
NOPRESUBMIT=true (presubmit is broken)
Review URL: https://codereview.chromium.org/1091603002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294950 0039d316-1c4b-4281-b951-d872f2087c98
depot_tools' git wrapper for some reason overrides %HOME% to point to
depot_tools directory, and thus scripts running as git subprocesses (git_cl.py)
use not the same HOME as scripts that run outside of git process tree
(depot-tools-auth.py). Instead always use USERPROFILE in auth.py to consistently
pick same directory.
This issue happens only when HOME is not set globally. It can explain why it
wasn't seen earlier.
R=iannucci@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1082833004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294911 0039d316-1c4b-4281-b951-d872f2087c98
There are some mysterious issues happening to some Windows users. Verbose log
can be helpful.
R=maruel@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1051143004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294910 0039d316-1c4b-4281-b951-d872f2087c98
GetPrimarySolutionPath() is used by GetBuildtoolsPath() to locate
the chromium/src directory, its return value shouldn't include
'buildtools', since GetBuildtoolsPath() will append another one to
it.
Introduced by https://codereview.chromium.org/933383002
Review URL: https://codereview.chromium.org/1072973003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294894 0039d316-1c4b-4281-b951-d872f2087c98
OAuth token cache file (as implemented by oauth2client library) stores refresh
token and can in theory be deployed via Puppet as the credential. But it is
mutated by the library (to store access tokens, rotated each hour), and so it is
not static and managing it via Puppet (or however else) is a big pain.
Instead, now depot_tools accepts --auth-refresh-token-json parameter with a path
to a static JSON file (with minimal body being {"refresh_token": "....."}). It
can be used to pass previously prepared refresh tokens of role accounts. It
will be used for blink DEPS roller account and similar @chromium.org accounts.
R=maruel@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1060193005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294870 0039d316-1c4b-4281-b951-d872f2087c98
This CL implements support for file: include lines in OWNERS files,
both as top-level directives and as per-file directives. The
paths can be either relative or absolute.
Examples of lines in OWNERS files:
file:test/OWNERS (relative, top-level)
file://content/OWNERS (absolute, top-level)
per-file mock_impl.h=file:test/OWNERS (relative, per-file)
per-file mock_impl.h=file://content/OWNERS (absolute, per-file)
A whole series of tests to cover this feature have been added
to owners_unittest.py as well.
BUG=119396, 147633
Review URL: https://codereview.chromium.org/1085993004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294854 0039d316-1c4b-4281-b951-d872f2087c98
The CQ dry run feature was announced in https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/G5-X0_tfmok
The primary complain is that the presubmit builders fail because of OWNERS checks or because of "Missing LGTM from someone other than...".
This change skips those checks for dry runs.
BUG=chromium:477190
Review URL: https://codereview.chromium.org/1090943003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294853 0039d316-1c4b-4281-b951-d872f2087c98
Internal Rietveld exposes OAuth2 compatible API via /bots/* endpoints, not via
/* as public one does. See crbug.com/476690.
R=maruel@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1082033002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294793 0039d316-1c4b-4281-b951-d872f2087c98
This code path is not actually used yet, so the typo wasn't caught earlier.
Also make sure access tokens have 'str' type, not 'unicode'.
R=nodir@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1082133002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294789 0039d316-1c4b-4281-b951-d872f2087c98
This is needed to prevent auto_deploy.py in CQ send alert each time depot_tools
get's updated as cron job will send alert on any output.
R=stip@chromium.orgCC=akuegel@chromium.org
BUG=475049
Review URL: https://codereview.chromium.org/1073113004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294778 0039d316-1c4b-4281-b951-d872f2087c98
This CL introduces new top level command for managing cached auth tokens:
$ depot-tools-auth login codereview.chromium.org
$ depot-tools-auth info codereview.chromium.org
$ depot-tools-auth logout codereview.chromium.org
All scripts that use rietveld.Rietveld internally should be able to use cached
credentials created by 'depot-tools-auth' subcommand. Also 'depot-tools-auth'
is the only way to run login flow. If some scripts stumbles over expired or
revoked token, it dies with the error, asking user to run
'depot-tools-auth login <hostname>'.
Password login is still default. OAuth2 can be enabled by passing --oauth2 to
all scripts.
R=maruel@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1074673002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294764 0039d316-1c4b-4281-b951-d872f2087c98
It is done in preparation for switching to OAuth2 as default (and only)
authentication method. Having all auth options handled by the same code makes it
easier to gradually add OAuth2 support.
As part of this, some options that would no longer work with OAuth2 (and that
are not being used from anywhere now, as far as I can tell) are removed:
* Passing account password for authentication via command line.
* Overriding 'Host' header when making requests to Rietveld (won't work with
SSL anyway).
* --account_type option (seems to be ClientLogin specific).
R=maruel@chromium.org
BUG=356813
Review URL: https://codereview.chromium.org/1075723002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294746 0039d316-1c4b-4281-b951-d872f2087c98
Error out of the current tree is dirty (previously the dirty
content would be incorporated silently into the newly
squashed branch!).
Review URL: https://codereview.chromium.org/1064933004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294744 0039d316-1c4b-4281-b951-d872f2087c98
crrev.com/348703002 has introduced some code into gclient_scm.py which
disables the .git/hooks when gclient is running in managed mode.
The disabling logic renames the individual hook files to hook.disabled
using os.rename. Conversely to what happen on Posix OSs, on Windows
os.rename does not have atomic rename semantics [1] and it fails if the
destination file already exists.
This change improves the hook disable logic.
[1] See https://bugs.python.org/issue8828 and os.replace in Python 3
BUG=474218
Review URL: https://codereview.chromium.org/1063973002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294715 0039d316-1c4b-4281-b951-d872f2087c98