commit | fda2cbbc7c6608bbfab5622af782353ab580c557 | [log] [tgz] |
---|---|---|
author | Anthony Fandrianto <atyfto@google.com> | Sat Oct 17 05:16:46 2020 +0000 |
committer | CQ Bot <commit-bot@chromium.org> | Sat Oct 17 05:16:46 2020 +0000 |
tree | 83bbfb41473c027dc41eff431a4052a822f25441 | |
parent | 72959a38896fc76d7fb2074f917ca2aa4b676776 [diff] |
[recipe_bootstrap] Ensure Build.Input.GitilesCommit Previously, if we detected a recipe change, we would set the recipe_version property to the GerritChange and checkout directly without rebasing. This sort of works, but may lead to inconsistent checkouts between parent and child builds if recipes.git HEAD moves. This change reworks the strategy of checking out changes by ensuring that the build input has a GitilesCommit with a resolved HEAD in _all_ cases, recipe change or otherwise. This essentially performs the role of build_input_resolver/api.py. This is a nice-to-have for non-recipe changes, as we move the resolution further up in the pipeline. build_input_resolver will no-op when it sees an existing GitilesCommit. For recipe changes, this is essential, because the checkout and rebase of recipes happens in the execution of this tool. If we wait until the recipe has already started to do any kind of rebasing for recipes.git, we're too late. See go/recipe-versioning-in-recipes-cq for the relevant design. Bug: 58899, 61798 Change-Id: I7fd719f2f91a963cc03c914de3a1ce988544136e Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/infra/+/439655 Commit-Queue: Anthony Fandrianto <atyfto@google.com> Reviewed-by: Oliver Newman <olivernewman@google.com>
This repo contains tools and config files necessary to run infrastructure related to builds, code review, version control, and continuous integrations.
In order to build the Go code, you must clone this repo into an appropriately named directory. This should do the trick:
REPO=fuchsia.googlesource.com/infra/infra git clone https://${REPO} $(go env GOPATH)/src/${REPO}