You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
depot_tools/recipes/recipe_modules/bot_update
Joanna Wang fd9cea79c1 Use --upstream when calling bot_update (passed to gclient sync).
Should resolve this flaky issue in infra-try builds : https://ci.chromium.org/ui/p/infra/builders/try/infra-try-bionic-64/b8783448305870388449/overview

in logs we see

'''
________ running 'git reset --hard HEAD' in '/b/s/w/ir/cache/builder/infra'
[0:00:02] HEAD is now at 64b4e8f867 Committed patch
[0:00:03] Finished running: git -c core.quotePath=false status --porcelain
[0:00:03] Attempting rebase onto d94466a8462dd19c2a3fc0ca173fd1c89a1f3f28...
[0:00:04] Current branch tmp_checkin_branch is up to date.
[0:00:04] Finished running: git rev-parse HEAD
Checked out revision 64b4e8f867c7b8757438b7e64985654d80a3b135
'''
64b4e8f867 is not a valid infra/infra commit. It is a local commit created from the patch of the last try-job run.

Prior to switching recipes to infra_superproject, we have been depending on https://source.chromium.org/chromium/chromium/tools/depot_tools/+/main:recipes/recipe_modules/bot_update/resources/bot_update.py;l=753;drc=489304d94984bb006a03e842cf2c171c73e7d367 to bring the checkout back to a valid remote infra/infra commit before we get to `gclient sync`. But with infra_superproject as the new root solution, `git checkout --force <pin>` runs for infra_superproject.

'git reset --hard HEAD' is coming from:
https://source.chromium.org/chromium/chromium/tools/depot_tools/+/main:gclient_scm.py;l=786-791;drc=cf4658579326856b9b25cfe2efbfc8683af88814

This is noop. The previous patch commit IS HEAD.

With --upstream we get: `git reset --hard refs/remotes/origin/main`


Bug: 1421776, 1434522
Change-Id: I0d192a160fcc7c3d405765e2e03e05aeb60f6875
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4445126
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Commit-Queue: Joanna Wang <jojwang@chromium.org>
2 years ago
..
examples Apply the gerrit REST timeout to only 'GetChanges' calls 2 years ago
resources Use --upstream when calling bot_update (passed to gclient sync). 2 years ago
tests Update recipes python tests. 2 years ago
__init__.py Remove recipe warnings due to python module. 3 years ago
api.py
test_api.py