commit | 7b67529cdddbd28bd63ee9dd87299b4a211bdce2 | [log] [tgz] |
---|---|---|
author | David Åkerman <davidak@axis.com> | Thu Aug 10 15:40:31 2023 +0200 |
committer | David Åkerman <davidak@axis.com> | Thu Nov 30 15:59:10 2023 +0100 |
tree | 4e0231f51e248eba5c0ff4bb09f544da63d60174 | |
parent | e1c11eeff270abdbfe64142f00be44911292697e [diff] |
Add implementation of BrokerApi for RabbitMQ This change add an implementation of the BrokerApi from the Gerrit events-broker lib. This make it possible to use RabbitMQ as the message-broker in a multi-site setup. The BrokerApi implementation can make use of the default configuration values in $site_path/data/@PLUGIN@.config but specific configurations needs to be set in $site_path/data/@PLUGIN@/broker/broker.config Added a new section called General with the flags: * publishAllGerritEvents: This will make the plugin publish gerrit stream events to a configured exchange. This was the original purpose of this plugin and is therefore enabled by default. * enableBrokerApi: Enable the RabbitMQ Broker API. This is the new functionality and is disabled by default. Change-Id: I7806bee5a10e6a0724427ff2c1dd065c6af1514c
Publish gerrit stream events to a RabbitMQ queue. This plugin works with any version of Gerrit starting from v2.8. This plugin also implements most of the events-broker API, so RabbitMQ can be used as a message-broker in a multi-master setup. The one part that is missing is the implementation of the replayAllEvents method. However, this method is not needed by the multi-site plugin.
linux
java-1.8
Bazel
[amqp] uri = amqp://localhost [exchange] name = exchange-for-gerrit-queue [message] routingKey = com.foobar.www.gerrit [gerrit] name = foobar-gerrit hostname = www.foobar.com
3.14 (Freezed)
stable-2.10
master
is permanently latest but would not be updated by author anymore.3.1
3.0
2.0
1.4
1.3
1.2
1.1
monitor.failureCount
1.0
The Apache Software License, Version 2.0
Copyright (c) 2013 rinrinne a.k.a. rin_ne