feat: content_hash flag + upload

Performs an extra uplaod of artifacts produced (and signed) to the
contnet_hash of the engine source code. This has been added in both
engine_v2/engine_v2.py and engine_v2/builder.py as both can produce
artifacts; e.g.

* Mac Production Engine Drone builds artifacts, but the orchestrator
  signs and uploads them
* Linux linux_host_engine uploads docs; but Linux Production Engine Drone
  builds and uploads

- Adds new runtime flag `upload_content_hash` to roll out this feature
- Updated luci_flags to follow:
  * cocoon sets the defaults
  * builders update them from .json files

Change-Id: I21bee317d8ad9a4fc75d74d91665f606796ac5ef
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/66780
Reviewed-by: Jason Simmons <jsimmons@google.com>
Commit-Queue: John McDole <codefu@google.com>
13 files changed
tree: 8a2dc8e0b331449b67db00345e3dd9c959f2dab6
  1. .vscode/
  2. infra/
  3. recipe_modules/
  4. recipes/
  5. .gitignore
  6. .style.yapf
  7. AUTHORS
  8. CONTRIBUTING.md
  9. LICENSE
  10. OWNERS
  11. README.md
  12. recipes.py
README.md

Flutter LUCI Recipes

This repository contains Flutter's LUCI recipes. For the LUCI infrastructure config, see flutter/infra. Builds can be found in the Flutter Dashboard.

Supported repositories roll their .ci.yaml into flutter/infra, which updates what properties builds have. For example, flutter config specifies various dependencies the different tests require, which are then used by the flutter_deps recipe_module No modifications to flutter/infra are required to work on the recipes.

Contributing

Please follow instructions on Contributing docs to set up your development environment.