# Google GCP pubsub messaging for the Gerrit's high-availability plugin

This plugin provides an extension of the Gerrit's high-availability plugin:
it provides GCP pubsub based message forwarding.

## License

This plugin is released under the same Apache 2.0 license and copyright holders
as of the Gerrit Code Review project.

## How to build

Refer to the [build instructions in the plugin documentation](src/main/resources/Documentation/build.md).

## Installation

Install

- the `high-availability-gcp` plugin in the Gerrit site's `plugins` folder.

## Sample configuration

This is a minimal configuration:
```
[pubsub]
  projectId = my-gcp-project
  privateKeyLocation = /path/to/private/key/my-gcp-project-6f0d80a3f655.json
```

A complete set of configuration options is given in the following example.
The example values given here are also the default values:
```
[pubsub]
  projectId = my-gcp-project
  privateKeyLocation = /path/to/private/key/my-gcp-project-6f0d80a3f655.json
[pubsub "topics"]
  main = default
  streamEvents = stream-events
[pubsub "limits"]
  subscriptionTimeout = 10s
  shutdownTimeout = 10s
  publisherThreadPoolSize = 4
  subscriberThreadPoolSize = 4
[pubsub "retention"]
  ackDeadline = 10s
  messageRetentionDuration = 7d
  retainAckedMessages = false
[pubsub "retry"]
  maxDeliveryAttempts = 5
  minimumBackoff = 10s
  maximumBackoff = 10m
```
