git cl upload: try to convert post-push Gerrit API PRCs into extra options during push |
|||||||||
Issue descriptionWhy? * Decrease latency * Eliminate possibility of hitting stale Gerrit/Git replica in post-push HTTP requests How? git push refs/for/refs/...?ALREADY=SUPPORTS&OPTIONS Challenges: * Some stuff like TBR-detection and corresponding CR+1 label vote as well as CQ+1/2 votes require substantial refactoring of git cl. * Some options we need, like optionalcc and optional reviewer not yet supported in Gerrit (Aug 2018) * PRESUBMIT has support for post-upload hooks. These are heavily abused to add extra footers to description, costing 3 RPCs and creating new patchsets.
,
Aug 25
> git push refs/for/refs/...?ALREADY=SUPPORTS&OPTIONS git push -o ALREADY=SUPPORTS -o OPTIONS origin HEAD:refs/for/refs/...
,
Aug 25
> * Some options we need, like optionalcc and optional reviewer not yet supported in Gerrit (Aug 2018) Let's track this as https://crbug.com/gerrit/9637
,
Aug 25
,
Sep 25
Since the problem with slow and failing uploads has gotten even worse, I'm ready to hack this. Unfortunately, https://crbug.com/gerrit/9637 is rejected by Gerrit, and suggested workaround isn't sufficient: http://b/116622189
,
Sep 25
,
Sep 25
,
Sep 25
,
Sep 26
We've escalated http://b/116622189 to a p1 bug on Gerrit and are meeting with the Gerrit team today to discuss.
,
Oct 13
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/dd78844442fef7e3613f6896dbe325cffb495a66 commit dd78844442fef7e3613f6896dbe325cffb495a66 Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Sat Oct 13 17:55:29 2018 git cl: bring label setting closer to git push in Gerrit case. R=ehmaldonado Bug: 877717 Change-Id: I81e574068687576cc44e41ba00ba650de8aae31b Reviewed-on: https://chromium-review.googlesource.com/c/1242844 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/dd78844442fef7e3613f6896dbe325cffb495a66/git_cl.py
,
Oct 13
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c9066a8c8fa69da02999f715b0ccdc521703e693 commit c9066a8c8fa69da02999f715b0ccdc521703e693 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Sat Oct 13 19:51:50 2018 Roll src/third_party/depot_tools 94faf3281c6a..dd78844442fe (1 commits) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/94faf3281c6a..dd78844442fe git log 94faf3281c6a..dd78844442fe --date=short --no-merges --format='%ad %ae %s' 2018-10-13 tandrii@chromium.org git cl: bring label setting closer to git push in Gerrit case. Created with: gclient setdep -r src/third_party/depot_tools@dd78844442fe The AutoRoll server is located here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. BUG= chromium:877717 TBR=agable@chromium.org Change-Id: Idbda8d2186772233b7f5355c1890744db5d9c2fe Reviewed-on: https://chromium-review.googlesource.com/c/1279921 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#599518} [modify] https://crrev.com/c9066a8c8fa69da02999f715b0ccdc521703e693/DEPS
,
Oct 15
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/76988a8c5288791cf677d5cc20f35d44276e943a commit 76988a8c5288791cf677d5cc20f35d44276e943a Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Mon Oct 15 03:12:25 2018 git cl: compute reviewers and ccs before pushing change to Gerrit. R=ehmaldonado Bug: 877717 Change-Id: Iccfba594369d8c726fd9b077d3ac18046757e4a2 Reviewed-on: https://chromium-review.googlesource.com/c/1242845 Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org> Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> [modify] https://crrev.com/76988a8c5288791cf677d5cc20f35d44276e943a/tests/git_cl_test.py [modify] https://crrev.com/76988a8c5288791cf677d5cc20f35d44276e943a/git_cl.py
,
Oct 15
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/ba7b0a466d7dca239c1b34bd7242c815a97de016 commit ba7b0a466d7dca239c1b34bd7242c815a97de016 Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Mon Oct 15 03:20:35 2018 git cl: find which reviewers and ccs are OK for Gerrit before upload. This adds O(reviewers+cc) RPC to Gerrit before upload, though done concurrently in up to 10 threads. This information isn't used yet, but will be in follow up CLs. R=ehmaldonado Bug: 877717 Change-Id: I2374f249ee874a71089244309e50e8e88a3dee7d Reviewed-on: https://chromium-review.googlesource.com/c/1242847 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/ba7b0a466d7dca239c1b34bd7242c815a97de016/tests/git_cl_test.py [modify] https://crrev.com/ba7b0a466d7dca239c1b34bd7242c815a97de016/git_cl.py [modify] https://crrev.com/ba7b0a466d7dca239c1b34bd7242c815a97de016/gerrit_util.py
,
Oct 15
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c7c1b3edb53a1c2faf3f68549cae51191c190492 commit c7c1b3edb53a1c2faf3f68549cae51191c190492 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Mon Oct 15 04:37:59 2018 Roll src/third_party/depot_tools dd78844442fe..76988a8c5288 (1 commits) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/dd78844442fe..76988a8c5288 git log dd78844442fe..76988a8c5288 --date=short --no-merges --format='%ad %ae %s' 2018-10-15 tandrii@chromium.org git cl: compute reviewers and ccs before pushing change to Gerrit. Created with: gclient setdep -r src/third_party/depot_tools@76988a8c5288 The AutoRoll server is located here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. BUG= chromium:877717 TBR=agable@chromium.org Change-Id: Ia5c90f260a9239b90bd2f366c0bdd0c66eabfc53 Reviewed-on: https://chromium-review.googlesource.com/c/1279283 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#599564} [modify] https://crrev.com/c7c1b3edb53a1c2faf3f68549cae51191c190492/DEPS
,
Oct 15
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b46ca1adc428bb7a4fabb3df314a6d19eec32c65 commit b46ca1adc428bb7a4fabb3df314a6d19eec32c65 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Mon Oct 15 06:02:41 2018 Roll src/third_party/depot_tools 76988a8c5288..03da150665d9 (3 commits) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/76988a8c5288..03da150665d9 git log 76988a8c5288..03da150665d9 --date=short --no-merges --format='%ad %ae %s' 2018-10-15 tandrii@chromium.org git cl: delete Rietveld support for tryjobs. 2018-10-15 tandrii@chromium.org git cl: start deleting Rietveld support. 2018-10-15 tandrii@chromium.org git cl: find which reviewers and ccs are OK for Gerrit before upload. Created with: gclient setdep -r src/third_party/depot_tools@03da150665d9 The AutoRoll server is located here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. BUG=chromium:770408,chromium:770408, chromium:877717 TBR=agable@chromium.org Change-Id: Ifec259dcabd7bbfc452b6add83110b2d377dd29f Reviewed-on: https://chromium-review.googlesource.com/c/1280103 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#599573} [modify] https://crrev.com/b46ca1adc428bb7a4fabb3df314a6d19eec32c65/DEPS
,
Oct 23
Required changes to the best of my understanding has been released to prod. It's time to execute on this.
,
Oct 30
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/46f20cd3905595b7485388f743613ed685c1bd89 commit 46f20cd3905595b7485388f743613ed685c1bd89 Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Tue Oct 30 06:42:54 2018 git cl: ensure logging is properly initialized. R=ehmaldonado Bug: 877717 Change-Id: If8cce9453ca72b3b300902f5a03e7a8aa93d17b5 Reviewed-on: https://chromium-review.googlesource.com/c/1296856 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/46f20cd3905595b7485388f743613ed685c1bd89/git_cl.py
,
Oct 30
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/f170af48e4490633334a300bbcb65d50fab09537 commit f170af48e4490633334a300bbcb65d50fab09537 Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Tue Oct 30 07:00:44 2018 git cl: more accurate logging message and level. R=ehmaldonado Change-Id: I321de4b0f33dd17473b012bcaddbb925aab7929f Bug: 877717 Reviewed-on: https://chromium-review.googlesource.com/c/1296855 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/f170af48e4490633334a300bbcb65d50fab09537/git_cl.py
,
Oct 30
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8d9779aa165be3291ae3ddc962c30f4ab2959079 commit 8d9779aa165be3291ae3ddc962c30f4ab2959079 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Tue Oct 30 07:58:04 2018 Roll src/third_party/depot_tools cb629a482b3d..46f20cd39055 (1 commits) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/cb629a482b3d..46f20cd39055 git log cb629a482b3d..46f20cd39055 --date=short --no-merges --format='%ad %ae %s' 2018-10-30 tandrii@chromium.org git cl: ensure logging is properly initialized. Created with: gclient setdep -r src/third_party/depot_tools@46f20cd39055 The AutoRoll server is located here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. BUG= chromium:877717 TBR=agable@chromium.org Change-Id: Iab1924a65cd2fa58311a6250de4165fa6e2ea87c Reviewed-on: https://chromium-review.googlesource.com/c/1306762 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#603828} [modify] https://crrev.com/8d9779aa165be3291ae3ddc962c30f4ab2959079/DEPS
,
Oct 30
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/102c3ec3a38a606b0cb6022ab6ca65287a73759d commit 102c3ec3a38a606b0cb6022ab6ca65287a73759d Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Tue Oct 30 09:57:50 2018 Roll src/third_party/depot_tools 46f20cd39055..f170af48e449 (1 commits) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/46f20cd39055..f170af48e449 git log 46f20cd39055..f170af48e449 --date=short --no-merges --format='%ad %ae %s' 2018-10-30 tandrii@chromium.org git cl: more accurate logging message and level. Created with: gclient setdep -r src/third_party/depot_tools@f170af48e449 The AutoRoll server is located here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. BUG= chromium:877717 TBR=agable@chromium.org Change-Id: I207229f1a27884faec52a5683eed4eeba9fd9d74 Reviewed-on: https://chromium-review.googlesource.com/c/1306764 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#603845} [modify] https://crrev.com/102c3ec3a38a606b0cb6022ab6ca65287a73759d/DEPS
,
Oct 30
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/0da5e8f8a638843387d959752f4cb28a44d59d79 commit 0da5e8f8a638843387d959752f4cb28a44d59d79 Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Tue Oct 30 17:29:18 2018 git cl upload: cc + reviewers in git push for chromium host. For other hosts, behavior is not changed. Tested on this very CL: To https://chromium.googlesource.com/chromium/tools/depot_tools.git * [new branch] 9057c2235b096f1feae61d65569641fc7c08a0e2 -> refs/for/refs/heads/master%ready,notify=ALL,m=Initial_upload,r=ehmaldonado,cc=chromium-reviews@chromium.org,cc=iannucci+depot_tools@chromium.org,hashtag=git-cl-upload R=ehmaldonado Bug: 877717 Change-Id: I951fc576105211590c6c303ce0ed2fe142628224 Reviewed-on: https://chromium-review.googlesource.com/c/1307051 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/0da5e8f8a638843387d959752f4cb28a44d59d79/tests/git_cl_test.py [modify] https://crrev.com/0da5e8f8a638843387d959752f4cb28a44d59d79/git_cl.py
,
Oct 30
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/e7a7fc42b6bf58d35ecea2dd5c543f1e22e59880 commit e7a7fc42b6bf58d35ecea2dd5c543f1e22e59880 Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Tue Oct 30 17:35:09 2018 git cl upload: set CQ and Auto Submit labels through refspec. Except when TBR is active, because it's not clear how to compute max score for Code-Review label before uploading a change. Tested with this very own CL: To https://chromium.googlesource.com/chromium/tools/depot_tools.git * [new branch] c78de165c7be156bdf8032c0ce3d8bad42778f1c -> refs/for/refs/heads/master%ready,notify=ALL,m=Initial_upload,r=ehmaldonado, cc=ajp,cc=chromium-reviews@chromium.org,cc=iannucci+depot_tools@chromium.org, l=Commit-Queue+1,hashtag=git-cl-upload R=ehmaldonado Bug: 877717 Change-Id: I464d9df2814bd830dd608bb881040e2dd3c41dbb Reviewed-on: https://chromium-review.googlesource.com/c/1307052 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/e7a7fc42b6bf58d35ecea2dd5c543f1e22e59880/tests/git_cl_test.py [modify] https://crrev.com/e7a7fc42b6bf58d35ecea2dd5c543f1e22e59880/git_cl.py
,
Oct 31
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6838dc555f407cd3944cb267f7df212a26df8c52 commit 6838dc555f407cd3944cb267f7df212a26df8c52 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Wed Oct 31 04:29:22 2018 Roll src/third_party/depot_tools f170af48e449..9afc6490c148 (4 commits) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/f170af48e449..9afc6490c148 git log f170af48e449..9afc6490c148 --date=short --no-merges --format='%ad %ae %s' 2018-10-30 martiniss@google.com Manual roll for new run logic 2018-10-30 ehmaldonado@chromium.org git-cl: Report Gerrit RPC requests information. 2018-10-30 tandrii@chromium.org git cl upload: set CQ and Auto Submit labels through refspec. 2018-10-30 tandrii@chromium.org git cl upload: cc + reviewers in git push for chromium host. Created with: gclient setdep -r src/third_party/depot_tools@9afc6490c148 The AutoRoll server is located here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. BUG=chromium:646142,chromium:897394, chromium:877717 , chromium:877717 TBR=agable@chromium.org Change-Id: I5adb7abe91c8c607d94920bb83bc01d7bb9559d8 Reviewed-on: https://chromium-review.googlesource.com/c/1308703 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#604151} [modify] https://crrev.com/6838dc555f407cd3944cb267f7df212a26df8c52/DEPS
,
Nov 1
,
Nov 9
,
Dec 5
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/8172bd6a9ee21bf3863ed692398761a76d2998a1 commit 8172bd6a9ee21bf3863ed692398761a76d2998a1 Author: Edward Lemur <ehmaldonado@chromium.org> Date: Wed Dec 05 02:18:50 2018 depot_tools_metrics: Add l=Code-Review+{1,2} to known arguments. TBR=tandrii@chromium.org Bug: 877717 Change-Id: Ic98ef1d53033a2e8fccfb4721d5031bce0947455 Reviewed-on: https://chromium-review.googlesource.com/c/1362518 Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> Cr-Commit-Position: refs/heads/master@{#19353} [modify] https://crrev.com/8172bd6a9ee21bf3863ed692398761a76d2998a1/go/src/infra/appengine/depot_tools_metrics/metrics/metrics_schema.json
,
Dec 5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/687ca907fdb9a879c6f162db61b15de67178868a commit 687ca907fdb9a879c6f162db61b15de67178868a Author: Edward Lemur <ehmaldonado@chromium.org> Date: Wed Dec 05 02:30:30 2018 git-cl: Set Code-Review label as a git push argument. Bug: 877717 Change-Id: I6541a971068aae662b086eba84448bd0769f1a09 Reviewed-on: https://chromium-review.googlesource.com/c/1362405 Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org> Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> [modify] https://crrev.com/687ca907fdb9a879c6f162db61b15de67178868a/metrics_utils.py [modify] https://crrev.com/687ca907fdb9a879c6f162db61b15de67178868a/tests/git_cl_test.py [modify] https://crrev.com/687ca907fdb9a879c6f162db61b15de67178868a/git_cl.py [modify] https://crrev.com/687ca907fdb9a879c6f162db61b15de67178868a/gerrit_util.py
,
Dec 5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6831cb27c0e50f5941e089f0a3d5b0b647e51d22 commit 6831cb27c0e50f5941e089f0a3d5b0b647e51d22 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Wed Dec 05 08:20:39 2018 Roll src/third_party/depot_tools 2413f5b0f79a..687ca907fdb9 (1 commits) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/2413f5b0f79a..687ca907fdb9 git log 2413f5b0f79a..687ca907fdb9 --date=short --no-merges --format='%ad %ae %s' 2018-12-05 ehmaldonado@chromium.org git-cl: Set Code-Review label as a git push argument. Created with: gclient setdep -r src/third_party/depot_tools@687ca907fdb9 The AutoRoll server is located here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. BUG= chromium:877717 TBR=agable@chromium.org Change-Id: Ic990984aab5721a8a5ac8bfb3e5aeb39d701a8a4 Reviewed-on: https://chromium-review.googlesource.com/c/1362558 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#613906} [modify] https://crrev.com/6831cb27c0e50f5941e089f0a3d5b0b647e51d22/DEPS
,
Jan 16
(6 days ago)
Marking as fixed. The only RPC call I could find was AddComment after git cl split uploads a change. Will file a feature request to look into that, but it is not high priority. |
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by jrn@google.com
, Aug 25