Commit graph

27 commits

Author SHA1 Message Date
Mike McLean
026abb8311 unit test 2025-04-29 16:17:20 +02:00
Yuming Zhu
ca05418fb5 unittest: use unittest.mock instead of mock
because the absence of unittest.mock on python2.7, we still fallback to
mock
2024-10-23 16:35:30 +00:00
Mike McLean
48d78bd535 more mock.patch cleanup 2024-06-04 12:54:58 +02:00
Tomas Kopecek
41869961f6 Remove six.configparser.SafeConfingParser from tests
Fixes: https://pagure.io/koji/issue/3939
2023-11-09 13:58:53 +01:00
Ken Dreyer
dbacf1f985 protonmsg: allow users to specify router-specific topic prefixes
Prior to this change, Koji would always send messages with a hard-coded
topic:// prefix.

This works fine for ActiveMQ 5 and Artemis, but RabbitMQ does not
support that syntax. Instead, RabbitMQ brokers expect clients to use
topic addresses with a "/topic/" prefix.

The RFE for RabbitMQ to support "topic://" prefixes is
https://github.com/rabbitmq/rabbitmq-server/issues/2583

In the meantime, allow users to specify "topic://" or "/topic/"
explicitly in their configuration.

For backwards-compatibility, if the user chose neither "topic://" nor
"/topic/", prepend the "topic://" string, preserving the plugin's
existing behavior.

(Note: ActiveMQ 5 advertises its expected topic:// prefix in the initial
connection properties, so we could read that value dynamically, but
RabbitMQ and Artemis do not send an expected topic prefix connection
properties, so we just make the user choose explicitly here.)
2021-12-20 08:44:27 +01:00
Tomas Kopecek
c41559f1e9 move btypes from headers to body of proton message
Fixes: https://pagure.io/koji/issue/3017
2021-09-14 09:28:21 +02:00
Jana Cupova
e689602be5 Add btype to protonmsg
Fixes: https://pagure.io/koji/issue/1217
2021-07-20 10:36:53 +02:00
Mike McLean
4b55b62355 fix unit tests 2021-05-10 09:51:03 +02:00
Jana Cupova
6a2c6e7586 Repo info with task id
Fixes: https://pagure.io/koji/issue/888
2021-04-19 15:15:10 +02:00
Tomas Kopecek
b030b46f74 remove unittest2 2020-10-06 15:00:23 +02:00
Tomas Kopecek
8c253396e8 proton: persistent message queue
Fixes: https://pagure.io/koji/issue/2230
2020-09-30 10:14:49 +02:00
Tomas Kopecek
475bf17f05 fix tests 2020-03-30 15:10:30 +02:00
Tomas Kopecek
d1e055f1b2 limit size of extra field in proton msgs
Fixes: https://pagure.io/koji/issue/2017
2020-03-25 09:07:15 +01:00
Tomas Kopecek
e016e6624d Emit user in PackageListChange messages
Fixes: https://pagure.io/koji/issue/1035
2020-02-04 09:22:43 +01:00
Tomas Kopecek
aefb2ddba7 fix py3 tests compatibility 2019-02-19 17:29:25 -05:00
Yu Ming Zhu
dc208d0555 fix invokings and unittests 2019-02-17 21:26:13 -05:00
Yu Ming Zhu
9ddae41877 using ConfigParser.read_file for PY3 2019-02-17 21:26:13 -05:00
Tomas Kopecek
be535c2854 python-modernize -f libmodernize.fixes.fix_imports_six 2018-07-11 17:37:39 -04:00
Tomas Kopecek
7f6b717eb6 python-modernize -f libmodernize.fixes.fix_import 2018-07-11 17:37:39 -04:00
Tomas Kopecek
c68396c059 Use unittest2 for rhel6 compatibility
Fixes: https://pagure.io/koji/issue/830
2018-06-07 09:39:39 -04:00
Mike McLean
1bf3bd22d7 protonmsg: unit test for unencodable data 2018-03-21 15:08:26 -04:00
Tomas Kopecek
3bfcc6a66e json serialize additional types in protonmsg
Fixes: https://pagure.io/koji/issue/741
2018-03-21 15:08:26 -04:00
Tomas Kopecek
e040745181 use six.StringIO everywhere 2017-11-09 17:27:23 -05:00
Mike Bonnet
661dd3a70c protonmsg: include the arch in the headers of rpm sign messages
Including the arch in the headers may be useful for filtering.
2017-10-25 12:01:08 -04:00
Mike Bonnet
c6a1e0952a protonmsg: don't send rpm.sign messages when the sigkey is empty
When a build completes, we store the original, unsigned rpm headers
to disk. This results in the postRPMSign callback being called, and
a rpm.sign message being sent with an empty sigkey. The intended
sematics of the rpm.sign message is to notify a service when an rpm
has been signed. Therefore, we should not be sending a message when
the sigkey is empty.
2017-10-24 21:20:24 -04:00
Mike McLean
fcfa6789c4 unit test: get protonmsg coverage back up to 100%, ensure test config is read 2017-08-25 00:10:10 -04:00
Mike Bonnet
17fac58281 protonmsg hub plugin
This plugin sends messages to a broker about events in the hub
using the proton library. This library supports the AMQP 1.0
protocol and is compatible with a wide variety of message
brokers. It queues all messages until the postCommit callback,
avoiding race conditions between message reception and database
transaction commit.
2016-11-04 11:59:51 -07:00