Merge branch 'stable-3.8' into stable-3.9

* stable-3.8:
  Revise the "init project" endpoint to manage project configuration
  Extract the ser/des of HTTP payloads to utility class
  Revise the "init project" client to accommodate the configuration
  Improve log message when event is fired
  Add JGit client test for unset mirror
  Add mirror replication option for CGit client

Notes:
* Catch ResourceNotFoundException in ProjectInitializationAction:
  `applyObject` was introduced in the `doPut` method since 3.8,
  however in 3.9 it started raisng a `ResourceNotFoundException`
  exception
* Make some mocks `lenient()`: some not needed mocks make the tests
  failing. The mock were not needed in previous versions either, but
  somehow the tests weren't failing before. Considering the whole
  `ReplicationQueueTest` class might be reworked because of the
  "excessive" mocking, mark the superfluous mock as leninent to
  allow the merge to continue
* `evictAndReindex` Vs `index`: make sure to evict project cache
  after project creation (I3818ff87). Also introduced temporarily
  extra cache eviction

Change-Id: I96f5609d97f138ee00a0686569dc9fc720d0226d
tree: 16d706c8270b66edebcab9d1f84f8ee47e5dbbbf
  1. example-setup/
  2. src/
  3. .gitignore
  4. BUILD
  5. Jenkinsfile
  6. LICENSE