Add gerrit_cq_ability verifier.

TBR=sergiyb@chromium.org
BUG=692613
NOTRY=True

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

Simple CI with Gerrit and CQ

https://goto.google.com/chrome-simple-ci

Example CLs:

How do I get this?

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

      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@.

  6. Upload your next CL and vote on Commit-Queue label +1.