Add support for new reboot ChecksApi

The plan is to switch the Checks Plugin to the new standard API and its
UI at some point. This will be done via an experiment flag.

This change adds basic support for this flag and converting/providing
its data to the new plugin API. At the moment the flag is turned off
for everyone, so this is currently for developing/debugging only.

This was tested by using the Dev Helper and adding a few lines of code
to the ChecksApi such that the provider was called. It was manually
verified that the provider has converted and returned data. Unit tests
will be added in later changes.

Change-Id: Ib6b9f66f6bf34471db7b167495acccf7fac4d216
2 files changed
tree: 92f126b35483c0332c860f78c6ed570478fbaf8d
  1. gr-checks/
  2. java/
  3. javatests/
  4. proto/
  5. resources/
  6. test/
  7. .eslintrc.json
  8. .gitignore
  9. .gitreview
  10. bower.json
  11. BUILD
  12. LICENSE
  13. package-lock.json
  14. package.json
  15. README.md
README.md

Gerrit Code Review Checks Plugin

This plugin provides a unified experience for checkers (CI systems, static analyzers, etc.) to integrate with Gerrit Code Review.

When upgrading the plugin, please use init:

java -jar gerrit.war init -d site_path

More details about “init” in https://gerrit-review.googlesource.com/Documentation/pgm-init.html

UI tests

To run UI tests here will need install dependencies from both npm and bower.

npm run wct-test should take care both for you, read more in package.json.

You will need polymer-bridges which is a submodule you can clone from: https://gerrit-review.googlesource.com/admin/repos/polymer-bridges

Test plugin on Gerrit

  1. Build the bundle locally with: bazel build gr-checks:gr-checks
  2. Serve your generated ‘checks.js’ somewhere, you can put it under gerrit/plugins/checks/ folder and it will automatically served at http://localhost:8081/plugins_/checks/ (no need to pass it to --plugins flag)
  3. Use FE dev helper, https://gerrit.googlesource.com/gerrit-fe-dev-helper/, inject the local served ‘checks.js’ to the page

If your plugin is already enabled, then you can block it and then inject the compiled local verison.

See more about how to use dev helper extension to help you test here: https://gerrit.googlesource.com/gerrit-fe-dev-helper/+/master