Reason for revert:
This CL over-aggressively removed the Windows bootstrap code used by /gclient.bat, which in turn downloads/installs the Windows toolchain, including Python. Labs can no longer provision Windows bots because of this.
update_depot_tools.bat did more than initialize the virtualenv. It also downloaded and installed Python, Git, and Subversion on Windows systems.
I'm reverting to restore the toolchain so we can create new Windows bots.
Original issue's description:
> Removed virtualenv from depot_tools
>
> This effectively reverts http://crrev.com/1195423002 and
> http://crrev.com/1205873002.
>
> R=pgervais@chromium.org, tandrii@chromium.org
> TBR=pgervais@chromium.org # i wanna get my Fixit credit today :-)
> BUG=542922,503067
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=297491
TBR=pgervais@chromium.org,tandrii@chromium.org,sergiyb@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=542922,503067
Review URL: https://codereview.chromium.org/1431173002 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@297493 0039d316-1c4b-4281-b951-d872f2087c98
Patch contributed by Leung Wing Chung <lwchkg@gmail.com>.
Committed on his behalf due to Commit Queue's mishandling of
CRLF files.
Here is my procedure for testing for a new install
1. Download and unzip
https://src.chromium.org/svn/trunk/tools/depot_tools.zip
Note that the path should include a space character,
e.g. "with a space"
2. Copy the three modified files to the unzipped folder
3. Convert the unzipped files into Windows CRLF.
4. REMOVE the following lines from update_depot_tools.bat
(Should I file a separate bug for this?)
:: Initialize/update virtualenv.
cd /d "%DEPOT_TOOLS_DIR%."
python -u bootstrap\bootstrap.py --deps_file bootstrap\deps.pyl --quiet ENV
if errorlevel 1 goto :EOF
5. Run gclient. Installation should be okay until
"git rebase" is run.
R=maruel@chromium.org
BUG=507301
Review URL: https://codereview.chromium.org/1232023004 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296275 0039d316-1c4b-4281-b951-d872f2087c98
Original CL: https://codereview.chromium.org/1242013003/
Executing a bat file from another bat file will replace
that first bat file with the second one. To call the
second one and then return and execute the rest of the
first one, you have to do "call second.bat"
"python" is really "python.bat" so that this happened
was not obvious. More obvious now.
R=bratell@opera.comTBR=pgervais@chromium.org
BUG=511926
Review URL: https://codereview.chromium.org/1239263003 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296063 0039d316-1c4b-4281-b951-d872f2087c98
Also, allow multiple git installations to exist side-by-side.
This makes it easier to revert back to an old version quickly.
BUG=
R=maruel@chromium.org
Review URL: https://codereview.chromium.org/203463004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@258058 0039d316-1c4b-4281-b951-d872f2087c98
Moves the update functionality out of update_depot_tools into src/ in https://codereview.chromium.org/175573004 .
get_toolchain_if_required.py now expects a list of hashes on the
command line, and makes sure that it gets one of those.
toolchain2013.py saves a .json which contains information relevant to the
interests of the caller, so that it can set up the parent environment. This
is returned via the --output-json command line argument to get_...py
R=iannucci@chromium.org
BUG=323300
Review URL: https://codereview.chromium.org/168603004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@252725 0039d316-1c4b-4281-b951-d872f2087c98
Per comments in linked bug, this is simply moved from chromium. The
only new thing is hooking it into update_depot_tools.bat, and
updating a few paths in the scripts.
This is currently opt-in via "set DEPOT_TOOLS_WIN_TOOLCHAIN=1" but
that will be removed once it's ready for deployment.
R=iannucci@chromium.org, maruel@chromium.org
BUG=323300
Review URL: https://codereview.chromium.org/135933002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@244983 0039d316-1c4b-4281-b951-d872f2087c98
When depot_tools fail to update right now all you get is
Cannot rebase: You have unstaged changes.
Please commit or stash them.
As that is typically in a call to gclient it's far from obvious what
could not be updated so add a line saying
Failed to update depot_tools.
to that. Linux and Mac already have a similar error message in their
script file.
BUG=
R=szager@chromium.org
Review URL: https://codereview.chromium.org/23619058
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@226002 0039d316-1c4b-4281-b951-d872f2087c98
Windows will sometimes freak out if a file is rewritten while
it's being executed. That can happen when update_depot_tools.bat
runs.
R=iannucci@chromium.org,maruel@chromium.org
BUG=
Review URL: https://codereview.chromium.org/12755033
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@189429 0039d316-1c4b-4281-b951-d872f2087c98
Until recently, no proper Git clone of depot_tools existed.
All Git clones were set up locally via git svn clone. The
way repos of that type are updated is via 'git svn rebase'.
Now, a supported Git clone of depot_tools exists. The
update process for repos of this type is via 'git fetch'
and 'git rebase'.
Modify the update_depot_tools* scripts so they can update
depot_tools for git cloned or git svn cloned methods. This
also means that git svn is no longer required, so move that
test after we check for git cloned repos.
R=maruel@chromium.org
TEST=Linux + git clone: on Linux, git clone
https://git.chromium.org/chromium/tools/depot_tools.git. Apply
and commit this patch locally. Note commit hash of HEAD. Run
'git reset --hard "HEAD^^^"'. Run
'git cherry-pick HASH_OF_UPDATE_CHANGE'. Run './update_depot_tools'.
Verify depot_tools is updated to latest available revision + this
change.
TEST=Linux + git svn clone: on Linux, git svn clone
svn://svn.chromium.org/chrome/trunk/tools/depot_tools.
Apply and commit this patch locally. Note commit hash
of HEAD. Run 'git reset --hard "HEAD^^^"'. Run 'git cherry-pick
HASH_OF_UPDATE_CHANGE'. Run './update_depot_tools'. Verify
depot_tools is updated to latest available revision + this change.
TEST=Windows command prompt + git clone: on Windows command prompt,
run Linux+git clone test, except use update_depot_tools.bat. Verify
depot_tools is updated to latest available revision + this change.
TEST=Windows command prompt + git svn clone: on Windows command
prompt, run Linux+git svn clone test, except use
update_depot_tools.bat. Verify depot_tools is updated to latest
available revision + this change.
TEST=Windows cygwin + git clone: on Windows command prompt,
run Linux+git clone test. Verify depot_tools is updated to latest
available revision + this change.
TEST=Windows cygwin + git svn clone: on Windows command
prompt, run Linux+git svn clone test. Verify depot_tools is updated
to latest available revision + this change.
Review URL: https://chromiumcodereview.appspot.com/10263004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@134732 0039d316-1c4b-4281-b951-d872f2087c98
In Windows (already worked correctly in posix): gclient wouldn't correctly update depot_tools when called.
Refactored away the bootstrap depot_tools update flow which only still existed in Windows.
Patch contributed by gab@chromium.orgR=maruel@chromium.org
BUG=
TEST=Running `gclient sync` from src/ and see depot_tools being correctly updated under a git depot_tools checkout.
Review URL: https://chromiumcodereview.appspot.com/9751009
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@132191 0039d316-1c4b-4281-b951-d872f2087c98