Revise the "init project" client to accommodate the configuration

This modification enhances the FetchApiClient interface by enabling the
replication of the "init project" operation, complete with its
configuration settings.

The new feature involves sending an HTTP PUT request to the endpoint:
pull-replication/init-project/<project_name>.git, including the
configuration (refs/meta/config) as part of the request body.

This update assumes, as a prerequisite, that every newly created
project must possess a configuration. Any deviation from this
requirement will result in a java.lang.IllegalStateException is being
thrown.

It's crucial to emphasise that this alteration will not affect prior
Gerrit instances utilising older versions of the pull-replication
plugin. The payload introduced as part of the "init project" operation
will be disregarded.

Bug: Issue 296854545
Change-Id: I01fc49c5327b48efc7f3292c313a067076b4b0ed
6 files changed
tree: 1446d8f4afe95682e43fa8e6e2e1f3145f998633
  1. example-setup/
  2. src/
  3. .gitignore
  4. BUILD
  5. Jenkinsfile
  6. LICENSE