Update doc.

Change-Id: Ia5672415f02e38601ec22d0ca32a21f2f7fa322d
1 file changed
tree: 054f8144ac825a7a59dcf177e353a3fe36ff26b4
  1. infra/
  2. codereview.settings
  3. README.md
  4. test1.py
  5. test2

Simple CI with Gerrit and CQ



Contact tandrii@{chromium.org,google.com} first, though the rest of steps should be doable without his involvement.


  1. Create new repository in Gerrit, but you already have it, don't you?

  2. Register it in luci-config - ask infra. Example: https://chrome-internal-review.googlesource.com/#/c/262666/

  3. (Public repos only) Mark your repo as such:

     git checkout --orphan infra/config
     wget https://chromium.googlesource.com/infra/infra.git/+/infra/config/project.cfg
     git add project.cfg && git commit -m "Mark this repo public"
     git push origin infra/config
     git checkout master  # Go back to familiar branch.
  4. Get basic setup for your Gerrit codereview patches auto-tested:

     git checkout master
     mkdir infra/config && cd infra/config
     wget https://chromium.googlesource.com/playground/gerrit-cq/simple-ci/+/master/infra/config/ci.cfg
     wget https://chromium.googlesource.com/playground/gerrit-cq/simple-ci/+/master/infra/config/cq.cfg

    Now customize cq.cfg and ci.cfg, and land the change.

    Note: it takes up to 40 minutes for this change to become active. So, do next step while you are waiting.

  5. Ask your Gerrit admin to:

    1. On the Gerrit host itself, make sure CQ bot account commit-bot@chromium.org exists, and has a corresponding group. Then use that group in the following step. Note, adding bot account is non-trivial, see (internal only, sorry) http://go/gob-docs.

    2. On the project itself:

      1. grant chrome-commit-bot group -1..+1 voting rights on refs/heads/master
      2. add a label Commit-Queue 0..1 on refs/heads/master. Setting default value 1 will trigger tests automatically on patch upload. Otherwise, developers will have to set it manually to 1, so grant them rights to do so.

      Point your Gerrit admin to this example: https://chromium.googlesource.com/playground/gerrit-cq/simple-ci/+/refs/meta/config

    3. (If your repo is private, and you will use our machines to actually run tests) We need to make sure our bots can access your repository. For https://chrome-internal.googlesource.com/ it's already done, but for other hosts, contact chrome-infra@.

Example CLs: