This directory contains infra-specific files. The branch-config/ directory
contains configs that are specific to the main branch (e.g. config for the CQ
committing to the main branch), while project-config/ directory contains
project-wide configuration (e.g. list of buckets for cr-buildbucket service and
list of refs known to the infra services).
