problem: a change in a core recipe module, such as infra_paths, may cause breakage across the board. Deploying these changes and rolling them back is slow (goes through recipe roller) so it worsens the problem.
Goal: make it possible to try changes to recipes without landing
Proposal:
- recipe engine: extend -O flag value format. If the value starts with @, it is followed by a treeish. If it is a hash, fetch master and checkout the hash. Otherwise treat as ref name and fetch that instead of master.
- kitchen: add -O flag
- swarmbucket: add support for -O in kitchen through a build parameter
use case:
- upload a change to Gerrit (even if we typically use Rietveld for repo)
- schedule a buildbucket build that overrides a recipe package
- see if build succeeds
Comment 1 by estaab@chromium.org
, Nov 7 2016