| # ci.yaml |
| |
| `.ci.yaml` is a universal config for managing work on Flutter infrastructure. See |
| https://github.com/flutter/cocoon/blob/master/CI_YAML.md for more information. |
| |
| This starlark module takes in a JSON version of the `.ci.yaml` for a repo, and |
| translates it to the relevant LUCI config. This reduces the manual work required |
| to keep the repos in sync. |
| |
| These configs are automatically kept up to date via a luci_config_generator builder. |
| |
| ## Manually Updating Repo Configs |
| |
| ```sh |
| export $FLUTTER_INFRA=#Root to the flutter/infra checkout |
| # A local version of Cocoon is required |
| git checkout git@github.com/flutter/cocoon |
| # This script translates the given .ci.yaml into JSON and adds it to the repoS |
| dart app_dart/bin/generate_jspb.dart $repo $sha > $FLUTTER_INFRA/lib/$repo_config.json |
| # Generate the LUCI configurations |
| lucicfg generate config/main.star |
| ``` |
| |
| ## Manually Updating ProtoBuf |
| |
| After editing the protobuf, run the script: |
| |
| `./compile_proto.sh` |
| |
| And check in the updated `scheduler.bin` file. |