New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 600446 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocked on:
issue 418095

Blocking:
issue 600451
issue 600472



Sign in to add a comment

Migrate depot_tools to Git

Project Member Reported by aga...@chromium.org, Apr 4 2016

Issue description

depot_tools is one of the main chrome infra repos with frequent commits.

It is currently on SVN: https://src.chromium.org/viewvc/chrome/trunk/tools/depot_tools/

The git mirror should become the golden source of truth: https://chromium.googlesource.com/chromium/tools/depot_tools
 
Blocking: 600451
Blocking: 600472
How is this different than Issue# 475320?
That should actually be blocked on this set of migration bugs. That bug is about removing SVN support from the tools which live in depot_tools (such as gclient). This is about making depot_tools own source of truth Git, even if it still supports checking out other non-Git repos.
Blockedon: 418095
and yet showing this up in git-admin queue sucks :( 

Comment 7 by benhenry@google.com, Apr 27 2016

Components: Infra>Git
Labels: -Infra-Git
Owner: aga...@chromium.org
Status: Assigned (was: Available)

Comment 9 by aga...@chromium.org, May 21 2016

Plan of attack:

0) Pick a date.

1) Land a change to update_depot_tools[.bat] which loudly complains if the user still has an SVN checkout. It will also direct them to the instructions which will get them a Git version instead.

2) Send a PSA. Send another PSA. To chromium-dev, blink-dev, chrome-os-something?, chrome-infrastructure-announce. Send yet another PSA.

3) On the chosen day:
  3.0) Send a PSA
  3.1) Disable git_updater
  3.2) Add depot_tools to SVN's locked_paths
  3.3) Remove chromium-git-push from depot_tools' GoB ACLs
  3.4) Change depot_tools' Gerrit ACLs to inherit from "infra"
  3.5) Change codereview.settings and infra/config/cq.cfg to remove references to SVN (landed manually)
  3.6) Update luci-config, restart cq, and delete cq's local checkout
  3.7) Land a whitespace change to verify cq works
  3.8) Send a PSA
Please change the order of 3.1 and 3.2, so that nothing commits to depot_tools between two.
Why 4 weeks? Why not 1 week or even less. Also can we get logs from SVN server to see how many times some specific revision was pulled? That should tell us how many SVN clients we still have.
Where'd you get 4 weeks from? Nothing above gives that timeline.
Project Member

Comment 13 by bugdroid1@chromium.org, May 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/depot_tools.git/+/17c4771ea6697e1e955b192ff45ce985cfc56c26

commit 17c4771ea6697e1e955b192ff45ce985cfc56c26
Author: agable@chromium.org <agable@chromium.org>
Date: Mon May 23 23:53:44 2016

Add warnings to SVN update_depot_tools

R=iannucci@chromium.org
BUG= 600446 

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

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

[modify] https://crrev.com/17c4771ea6697e1e955b192ff45ce985cfc56c26/update_depot_tools
[modify] https://crrev.com/17c4771ea6697e1e955b192ff45ce985cfc56c26/update_depot_tools.bat

Project Member

Comment 14 by bugdroid1@chromium.org, May 24 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build.git/+/e68a29db58a003d355da29ebaa9747ec64a63614

commit e68a29db58a003d355da29ebaa9747ec64a63614
Author: recipe-roller <recipe-roller@chromium.org>
Date: Tue May 24 00:05:57 2016

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)

depot_tools:
  https://crrev.com/17c4771ea6697e1e955b192ff45ce985cfc56c26 Add warnings to SVN update_depot_tools (agable@chromium.org)

R=agable@chromium.org,iannucci@chromium.org
BUG= 600446 

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

Review-Url: https://codereview.chromium.org/2007793002

[modify] https://crrev.com/e68a29db58a003d355da29ebaa9747ec64a63614/infra/config/recipes.cfg

> Where'd you get 4 weeks from? Nothing above gives that timeline.
That was in email discussion that preceded this bug. I think Robbie suggested 4 weeks. IMHO, given that only devs who never update depot_tools will break, I think it's fine to it after 1 week of warning.
Aha, gotcha.

The CL above and the PSA I sent last week both give a date of Monday June 6th, a week from yesterday. We're sticking with that date :)
Please also don't forget to update https://sites.google.com/a/google.com/chrome-infrastructure/getting-started and remove "git auto-svn" step after migrating depot_tools. I've just updated it for build_* and added section in the end explaining users how to deal with "No valid git-svn-id footer found on origin/master" on git-cl-upload.
Plan, to be executed at 4pm Pacific today, Monday, June 6th.

1. Send PSA that switch is starting now.
2. Modify locked svn.config to make depot_tools RO in SVN
   - svn propedit locked_paths svn://svn.chromium.org/chrome
   - add "/trunk/tools/depot_tools/"
3. Turn off Git updater for build_internal
   - https://chromereviews.googleplex.com/443877013
4. Modify GoB ACLS to revoke access from git_updater
   - gob-ctl acl --revoke=email/chromium-git-push@google.com chromium/chromium/tools/depot_tools
5. Modify Gerrit ACLs to inherit from infra/
   - https://chromium-review.googlesource.com/#/admin/projects/chromium/tools/depot_tools,access
6. Land change in Git repos modifying the codereview.settings and cq.cfg files
   - https://codereview.chromium.org/2041123002
7. Kick the CQ
   - Refresh luci-config: https://apis-explorer.appspot.com/apis-explorer/?base=https://luci-config.appspot.com/_ah/api#p/config/v1/config.reimport?config_set=projects%252Fdepot_tools%252Frefs%252Fheads%252Fmaster&_h=4&
   - ssh cq.golo
   - cd /b/infra_internal/commit_queue
   - ./cq.py restart
   - cd workdir/
   - rm -rf depot_tools
8. Make edit to getting-started to remove references to SVN
   - https://sites.google.com/a/google.com/chrome-infrastructure/getting-started
7. Send PSA to users letting them know it’s done.
8. (Later) Land commit in SVN which breaks depot_tools, forcing people to switch.


And a whitespace change to test the CQ: https://codereview.chromium.org/2046763002
Project Member

Comment 20 by bugdroid1@chromium.org, Jun 6 2016

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/chrome-golo/chrome-golo.git/+/e7f52059bb0fad97433bd27091edfe4883581e22

commit e7f52059bb0fad97433bd27091edfe4883581e22
Author: agable <agable@google.com>
Date: Mon Jun 06 23:08:08 2016

Project Member

Comment 22 by bugdroid1@chromium.org, Jun 6 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build.git/+/f88b00c6700bf57eb293dd597e15e6d32046fba0

commit f88b00c6700bf57eb293dd597e15e6d32046fba0
Author: recipe-roller <recipe-roller@chromium.org>
Date: Mon Jun 06 23:26:09 2016

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)

depot_tools:
  https://crrev.com/8c3211227fa768e8aa4172f8ae2f765c12566546 Edit codereview.settings and cq.cfg for Git (agable@chromium.org)

R=sergeyberezin@chromium.org,agable@chromium.org,tandrii@chromium.org
BUG= 600446 

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

Review-Url: https://codereview.chromium.org/2048433002

[modify] https://crrev.com/f88b00c6700bf57eb293dd597e15e6d32046fba0/infra/config/recipes.cfg

Status: Fixed (was: Assigned)
Locking paths: https://src.chromium.org/viewvc/chrome?view=revision&revision=300697
Changing git ACLs: https://chromium.googlesource.com/chromium/tools/depot_tools/+/4a57b92ba4569a36ada8e810e3246d8a661c42fb

Whitespace change has landed via cq.

Sending PSA now.

If people see fallout from this, please let me know immediately. If the fallout is narrow and specific, please open new bugs for it.
Project Member

Comment 25 by bugdroid1@chromium.org, Jun 6 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build.git/+/305c88f2c74e53478b8d63c4a4558521198b202a

commit 305c88f2c74e53478b8d63c4a4558521198b202a
Author: recipe-roller <recipe-roller@chromium.org>
Date: Mon Jun 06 23:36:24 2016

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)

depot_tools:
  https://crrev.com/208c0539206fba12b53922718124999fdb0dfd46 Small change to test the new git CQ (agable@chromium.org)

R=sergeyberezin@chromium.org,agable@chromium.org
BUG= 600446 

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

Review-Url: https://codereview.chromium.org/2042693004

[modify] https://crrev.com/305c88f2c74e53478b8d63c4a4558521198b202a/infra/config/recipes.cfg

Project Member

Comment 26 by bugdroid1@chromium.org, Jun 17 2016

Project Member

Comment 27 by bugdroid1@chromium.org, Jun 17 2016

Project Member

Comment 28 by bugdroid1@chromium.org, Jun 17 2016

Project Member

Comment 30 by bugdroid1@chromium.org, Jun 21 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build.git/+/ad437cc1d6edf107e3c4d3e1c21a00c341079265

commit ad437cc1d6edf107e3c4d3e1c21a00c341079265
Author: recipe-roller <recipe-roller@chromium.org>
Date: Tue Jun 21 14:36:28 2016

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)

depot_tools:
  https://crrev.com/a0e5cc40f0ab6b75058956f268eac455da61ee19 Remove SVN code from update_depot_tools (agable@chromium.org)

R=agable@chromium.org,maruel@chromium.org
BUG= 600446 

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

Review-Url: https://codereview.chromium.org/2084503004

[modify] https://crrev.com/ad437cc1d6edf107e3c4d3e1c21a00c341079265/infra/config/recipes.cfg

Project Member

Comment 31 by bugdroid1@chromium.org, Jun 21 2016

Sign in to add a comment