Björn Terelius c53f117c4c Update documentation links in infra/config/README.md
Bug: webrtc:14917
Change-Id: Ia3dd3171eee8ce264afb0c7b51e5bcfffc324617
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294286
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@webrtc.org>
Auto-Submit: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39352}
2023-02-20 16:31:54 +00:00

53 lines
1.8 KiB
Markdown

# 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][luci-config] looks at.
They are in *protocol buffer text format*. For example,
[cr-buildbucket.cfg](cr-buildbucket.cfg) defines builders.
However, they are all automatically generated from the [Starlark][] script
[config.star](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](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:
```bash
git clone https://webrtc.googlesource.com/src/
```
Now you can create a new branch to make changes:
```bash
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][].
[console]: https://ci.chromium.org/p/webrtc/g/ci/console
[luci-config]: https://luci-config.appspot.com/#/projects/webrtc
[starlark]: https://github.com/google/starlark-go
[lucicfg]: https://chromium.googlesource.com/infra/luci/luci-go/+/main/lucicfg/doc/