tree: f8a39ea6f4ed4d7e4e839af3a13fbb1aa8ad7e04 [path history] [tgz]
  1. generated/
  2. luci-notify/
  3. codereview.settings
  4. commit-queue.cfg
  5. config.star
  6. console-header.textpb
  7. cr-buildbucket.cfg
  8. luci-analysis.cfg
  9. luci-logdog.cfg
  10. luci-milo.cfg
  11. luci-notify.cfg
  12. luci-scheduler.cfg
  13. PRESUBMIT.py
  14. project.cfg
  15. README.md
  16. realms.cfg
infra/config/README.md

infra/config folder

This folder contains WebRTC project-wide configurations for Chrome infra services, mainly the CI system (console).

*.cfg files are the actual configuration that LUCI looks at. They are in protocol buffer text format. For example, cr-buildbucket.cfg defines builders.

However, they are all automatically generated from the Starlark script config.star that defines a unified config using lucicfg. The main body of the config is at the bottom of the file, following all the helper definitions.

lucicfg should be available as part of depot_tools. After editing config.star you should run lucicfg generate config.star to re-generate *.cfg files. Check the diffs in generated files to confirm that your change worked as expected. Both the code change and the generated changes need to be committed together.

Uploading changes

It is recommended to have a separate checkout for this branch, so switching to/from it does not populate/delete all files in the main branch.

Initial setup:

git clone https://webrtc.googlesource.com/src/

Now you can create a new branch to make changes:

git new-branch add-new-builder
# edit/generate files
git commit -a
git cl upload

Changes can be reviewed on Gerrit and submitted with commit queue as usual.

Activating the changes

Any changes to this directory go live soon after landing, without any additional steps. You can see the status or force a refresh of the config at luci-config.