Split out commit message extraction to make things better testable

RevCommit has final fields, and RevWalk etc is a pain to mock out. So we
split that part out to make writing tests easier.

CommitMessageFetcher and its test come from the its-base plugin.

Change-Id: I5a24ae94a5e6418bba5e04464719e27ac3b19368
4 files changed
tree: 49abdf09ebe80342ce6a29fdde5f9ec37a433074
  1. src/
  2. .gitignore
  3. BUILD
  5. README.md

Gerrit Zuul Plugin

Openstack uses Zuul for project gating and one of the features of Zuul is cross repository dependencies (CRD). Zuul will detect CRDs in git commit messages to allow it to arrange patchsets (in order) before scheduling them for build and test.

The problems with having only a ‘depends-on’ reference:

  • It can become very difficult, downright confusing really, to determine the dependency relationships.
  • The use of CRD can produce dependency cycles which can be difficult to detect.

To help alleviate these issues this plugin adds the following:

  • A reverse lookup for the ‘depends-on’ reference.
  • A REST endpoint to allow other clients to retrieve CRD info.

Detailed information about this plugin can be found in the documentation.