Adds versioned xcode support

This CL does
1) cleans up doc following https://flutter-review.googlesource.com/c/infra/+/42061
2) stops `remove_runtime`
3) installs `runtime` to the same cache path `osx_sdk` to make it sharable across builds. (the old way has never worked as expected due to incorrect cache path config)
4) installs `runtime` one time and copies to destination dir one time
5) cleans cache only when specified (removing cache clean when runtime is required)

A series of LED validation is listed in the doc:
https://docs.google.com/document/d/1EcXm4Woq48GR_ky07mEJka6NfV1vFBN2OHDEeGfPk34/edit?resourcekey=0-0Gjtt1I66mGJ8AwiCTlFNw#heading=h.v9tje5e0dl78

This CL will cause fresh xcode installation on all bots. The good thing is this is a one-time change. I will send a PSA before landing.

Change-Id: Ibebb8047b6cdfae1799dae8cb936ce75ed9d4f75
Bug: https://github.com/flutter/flutter/issues/117541
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/42160
Commit-Queue: Keyong Han <keyonghan@google.com>
Reviewed-by: Ricardo Amador <ricardoamador@google.com>
Reviewed-by: Yusuf Mohsinally <mohsinally@google.com>
118 files changed
tree: 97af02d0950697e5a8fb369e7f069e1ef077ccb4
  1. infra/
  2. recipe_modules/
  3. recipes/
  4. .gitignore
  5. .style.yapf
  6. AUTHORS
  7. LICENSE
  8. OWNERS
  9. README.md
  10. recipes.py
README.md

Flutter LUCI Recipes

This repository contains Flutter's LUCI recipes. For the LUCI infrastructure config, see flutter/infra. Actual builds can be seen at ci.chromium.org.

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.

Configuration

Tricium configurations recipes repo.

Testing locally

Running python recipes.py test train will execute all of the tests in this repository

Troubleshooting

Required binary is not found on PATH: cipd when testing locally

You need to ensure depot_tools is installed. See Depot Tools Installation Tutorial