manageiq-messaging 1.0.2 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.codeclimate.yml +25 -30
- data/.github/workflows/ci.yaml +36 -0
- data/.rspec +2 -1
- data/.rubocop.yml +2 -3
- data/.rubocop_cc.yml +3 -4
- data/.whitesource +3 -0
- data/CHANGELOG.md +78 -0
- data/Gemfile +7 -0
- data/README.md +14 -2
- data/lib/manageiq/messaging/client.rb +6 -4
- data/lib/manageiq/messaging/kafka/client.rb +13 -8
- data/lib/manageiq/messaging/kafka/common.rb +2 -5
- data/lib/manageiq/messaging/kafka/queue.rb +2 -2
- data/lib/manageiq/messaging/kafka/topic.rb +3 -2
- data/lib/manageiq/messaging/stomp/topic.rb +5 -1
- data/lib/manageiq/messaging/version.rb +1 -1
- data/lib/manageiq/messaging.rb +1 -0
- data/manageiq-messaging.gemspec +10 -6
- metadata +15 -25
- data/.travis.yml +0 -8
- data/CHANGES +0 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f305d2c3c254dc42831ab6d12154fa65edeedc3461fbf88bfa77166e68613702
|
4
|
+
data.tar.gz: 939165f57c4671312398de35cec92781d5f97a82c08a584e7a0da727e2ed2eca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 14e817bf9ee97c577b866a49989b8041c96c8ec2f9949aace412c3065e5143f6bac18ffae0569b8ff87506dc33604349b2a79e4ed62edbf44820e7ebcae9bcfe
|
7
|
+
data.tar.gz: a8d5a83c36de5a9290573e893fcbd97468ef47700e96ec499cce1649e4dc68090a6d3fdb43acdf1a4a7b4ce62f8daa49f469db1b2f7b7be721e46122fda04f9b
|
data/.codeclimate.yml
CHANGED
@@ -1,18 +1,21 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
-
|
4
|
-
|
5
|
-
-
|
6
|
-
|
7
|
-
-
|
8
|
-
|
9
|
-
-
|
10
|
-
|
1
|
+
prepare:
|
2
|
+
fetch:
|
3
|
+
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/.rubocop_base.yml
|
4
|
+
path: ".rubocop_base.yml"
|
5
|
+
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/.rubocop_cc_base.yml
|
6
|
+
path: ".rubocop_cc_base.yml"
|
7
|
+
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/styles/base.yml
|
8
|
+
path: styles/base.yml
|
9
|
+
- url: https://raw.githubusercontent.com/ManageIQ/manageiq-style/master/styles/cc_base.yml
|
10
|
+
path: styles/cc_base.yml
|
11
|
+
plugins:
|
12
|
+
rubocop:
|
13
|
+
enabled: true
|
14
|
+
config: ".rubocop_cc.yml"
|
15
|
+
channel: rubocop-0-82
|
11
16
|
brakeman:
|
12
|
-
# very slow :sad_panda:
|
13
17
|
enabled: false
|
14
18
|
bundler-audit:
|
15
|
-
# requires Gemfile.lock
|
16
19
|
enabled: false
|
17
20
|
csslint:
|
18
21
|
enabled: false
|
@@ -24,25 +27,17 @@ engines:
|
|
24
27
|
- javascript
|
25
28
|
eslint:
|
26
29
|
enabled: false
|
27
|
-
channel:
|
30
|
+
channel: eslint-3
|
28
31
|
fixme:
|
29
|
-
# let's enable later
|
30
32
|
enabled: false
|
31
33
|
markdownlint:
|
32
|
-
# let's enable later
|
33
34
|
enabled: false
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
path: ".rubocop_cc_base.yml"
|
44
|
-
ratings:
|
45
|
-
paths:
|
46
|
-
- Gemfile.lock
|
47
|
-
- "**.rake"
|
48
|
-
- "**.rb"
|
35
|
+
exclude_patterns:
|
36
|
+
- ".git/"
|
37
|
+
- "**.xml"
|
38
|
+
- "**.yaml"
|
39
|
+
- "**.yml"
|
40
|
+
- locale/
|
41
|
+
- spec/
|
42
|
+
- tools/
|
43
|
+
version: '2'
|
@@ -0,0 +1,36 @@
|
|
1
|
+
name: CI
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
pull_request:
|
6
|
+
schedule:
|
7
|
+
- cron: '0 0 * * 0'
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
ci:
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
strategy:
|
13
|
+
matrix:
|
14
|
+
ruby-version:
|
15
|
+
- '2.6'
|
16
|
+
- '2.7'
|
17
|
+
- '3.0'
|
18
|
+
rails-version:
|
19
|
+
- '6.0'
|
20
|
+
- '6.1'
|
21
|
+
env:
|
22
|
+
TEST_RAILS_VERSION: ${{ matrix.rails-version }}
|
23
|
+
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
|
24
|
+
steps:
|
25
|
+
- uses: actions/checkout@v2
|
26
|
+
- name: Set up Ruby
|
27
|
+
uses: ruby/setup-ruby@v1
|
28
|
+
with:
|
29
|
+
ruby-version: ${{ matrix.ruby-version }}
|
30
|
+
bundler-cache: true
|
31
|
+
- name: Run tests
|
32
|
+
run: bundle exec rake
|
33
|
+
- name: Report code coverage
|
34
|
+
if: ${{ github.ref == 'refs/heads/master' && matrix.ruby-version == '3.0' && matrix.rails-version == '6.1' }}
|
35
|
+
continue-on-error: true
|
36
|
+
uses: paambaati/codeclimate-action@v3.0.0
|
data/.rspec
CHANGED
data/.rubocop.yml
CHANGED
data/.rubocop_cc.yml
CHANGED
data/.whitesource
ADDED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,78 @@
|
|
1
|
+
# Change Log
|
2
|
+
All notable changes to this project will be documented in this file.
|
3
|
+
|
4
|
+
The format is based on [Keep a Changelog](http://keepachangelog.com/)
|
5
|
+
and this project adheres to [Semantic Versioning](http://semver.org/).
|
6
|
+
|
7
|
+
## [Unreleased]
|
8
|
+
|
9
|
+
## [1.1.1] - 6-May-2022
|
10
|
+
|
11
|
+
* Ruby 3.0 support [#71](https://github.com/ManageIQ/manageiq-messaging/pull/71)
|
12
|
+
|
13
|
+
## [1.1.0] - 09-Feb-2022
|
14
|
+
|
15
|
+
* Allow rails 6.1 [#66](https://github.com/ManageIQ/manageiq-messaging/pull/66)
|
16
|
+
|
17
|
+
## [1.0.3] - 12-May-2021
|
18
|
+
|
19
|
+
* Allow bulk publish of messages to a topic
|
20
|
+
|
21
|
+
## [1.0.2] - 4-Jan-2021
|
22
|
+
|
23
|
+
* Rails 6.0 Support
|
24
|
+
|
25
|
+
## [1.0.1] - 15-Dec-2020
|
26
|
+
|
27
|
+
* Allow all kafka options to be passed
|
28
|
+
* remove sudo:false from .travis.yml
|
29
|
+
* Use manageiq-style
|
30
|
+
|
31
|
+
## [1.0.0] - 28-Sep-2020
|
32
|
+
|
33
|
+
* Switch to use rdkafka client
|
34
|
+
|
35
|
+
## [0.1.7] - 14-May-2021
|
36
|
+
|
37
|
+
* Loosen ActiveSupport dependency to ~> 5.2
|
38
|
+
|
39
|
+
## [0.1.6] - 6-July-2020
|
40
|
+
|
41
|
+
* Rescue message body decoding errors. Re-raise errors raised by users code of processing received messages.
|
42
|
+
|
43
|
+
## [0.1.5] - 6-Jun-2019
|
44
|
+
|
45
|
+
* Allow caller to provide extra headers to the message
|
46
|
+
|
47
|
+
## [0.1.4] - 3-Apr-2019
|
48
|
+
|
49
|
+
* Add an #ack method to a ReceivedMessage to simplify manual acknowledgements
|
50
|
+
* Allow caller to provide a session_timeout to kafka consumers, default of 30sec
|
51
|
+
|
52
|
+
## [0.1.3] - 25-Feb-2019
|
53
|
+
|
54
|
+
## 0.1.2 - 11-Dec-2018
|
55
|
+
|
56
|
+
* Allow to set max_bytes to each_batch when subscribe to a Kafka topic.
|
57
|
+
|
58
|
+
## 0.1.1 - 20-Nov-2018
|
59
|
+
|
60
|
+
* By default upon receiving a message or an event, it is automatically acknowledged. But
|
61
|
+
the subscriber can decide to turn off the auto ack feature and ack it in the callback block.
|
62
|
+
|
63
|
+
## 0.1.0 - 4-Oct-2018
|
64
|
+
|
65
|
+
* Initial release
|
66
|
+
|
67
|
+
[Unreleased]: https://github.com/ManageIQ/manageiq-messaging/compare/v1.1.1...HEAD
|
68
|
+
[1.1.1]: https://github.com/ManageIQ/manageiq-messaging/compare/v1.1.0...v1.1.1
|
69
|
+
[1.1.0]: https://github.com/ManageIQ/manageiq-messaging/compare/v1.0.3...v1.1.0
|
70
|
+
[1.0.3]: https://github.com/ManageIQ/manageiq-messaging/compare/v1.0.2...v1.0.3
|
71
|
+
[1.0.2]: https://github.com/ManageIQ/manageiq-messaging/compare/v1.0.1...v1.0.2
|
72
|
+
[1.0.1]: https://github.com/ManageIQ/manageiq-messaging/compare/v1.0.0...v1.0.1
|
73
|
+
[1.0.0]: https://github.com/ManageIQ/manageiq-messaging/compare/v0.1.7...v1.0.0
|
74
|
+
[0.1.7]: https://github.com/ManageIQ/manageiq-messaging/compare/v0.1.6...v0.1.7
|
75
|
+
[0.1.6]: https://github.com/ManageIQ/manageiq-messaging/compare/v0.1.5...v0.1.6
|
76
|
+
[0.1.5]: https://github.com/ManageIQ/manageiq-messaging/compare/v0.1.4...v0.1.5
|
77
|
+
[0.1.4]: https://github.com/ManageIQ/manageiq-messaging/compare/v0.1.3...v0.1.4
|
78
|
+
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
# ManageIQ Messaging Client
|
2
2
|
|
3
3
|
[![Gem Version](https://badge.fury.io/rb/manageiq-messaging.svg)](http://badge.fury.io/rb/manageiq-messaging)
|
4
|
-
[![
|
4
|
+
[![CI](https://github.com/ManageIQ/manageiq-messaging/actions/workflows/ci.yaml/badge.svg)](https://github.com/ManageIQ/manageiq-messaging/actions/workflows/ci.yaml)
|
5
5
|
[![Code Climate](https://codeclimate.com/github/ManageIQ/manageiq-messaging.svg)](https://codeclimate.com/github/ManageIQ/manageiq-messaging)
|
6
6
|
[![Test Coverage](https://codeclimate.com/github/ManageIQ/manageiq-messaging/badges/coverage.svg)](https://codeclimate.com/github/ManageIQ/manageiq-messaging/coverage)
|
7
|
-
[![Security](https://hakiri.io/github/ManageIQ/manageiq-messaging/master.svg)](https://hakiri.io/github/ManageIQ/manageiq-messaging/master)
|
8
7
|
|
9
8
|
Client library for ManageIQ components to exchange messages through its internal message bus.
|
10
9
|
|
@@ -155,6 +154,19 @@ This is the one-to-many publish/subscribe pattern. Multiple subscribers can subs
|
|
155
154
|
|
156
155
|
By default, events are delivered to live subscribers only. Some messaging systems support persistence with options.
|
157
156
|
|
157
|
+
### Publish bulk messages to a topic
|
158
|
+
|
159
|
+
Often it is more efficient to publish messages in bulk rather than one-at-a-time. To do this you can pass an array of messages to the `publish_topic` API:
|
160
|
+
|
161
|
+
```ruby
|
162
|
+
client.publish_topic(
|
163
|
+
[
|
164
|
+
{:service => 'provider_events', :event => 'powered_off', :payload => {:ems_ref => 'uid987', :timestamp => '1501091391'}},
|
165
|
+
{:service => 'provider_events', :event => 'powered_on', :payload => {:ems_ref => 'uid987', :timestamp => '1501091429'}},
|
166
|
+
]
|
167
|
+
)
|
168
|
+
```
|
169
|
+
|
158
170
|
### Add your own headers to a message (Queue or Topic)
|
159
171
|
|
160
172
|
If you want you can add in your own headers to the send message
|
@@ -161,7 +161,8 @@ module ManageIQ
|
|
161
161
|
end
|
162
162
|
|
163
163
|
# Publish a message as a topic. All subscribers will receive a copy of the message.
|
164
|
-
#
|
164
|
+
# +messages+ can be either a hash or an array of hashes.
|
165
|
+
# Expected keys are:
|
165
166
|
# * :service (service is used to determine the topic address)
|
166
167
|
# * :event (event name)
|
167
168
|
# * :payload (message body, a string or an user object that can be serialized)
|
@@ -169,10 +170,11 @@ module ManageIQ
|
|
169
170
|
# * :headers (optional, additional headers to add to the message)
|
170
171
|
# Other options are underlying messaging system specific.
|
171
172
|
#
|
172
|
-
def publish_topic(
|
173
|
-
|
173
|
+
def publish_topic(messages)
|
174
|
+
messages = Array.wrap(messages)
|
175
|
+
messages.each { |msg| assert_options(msg, [:event, :service]) }
|
174
176
|
|
175
|
-
publish_topic_impl(
|
177
|
+
publish_topic_impl(messages)
|
176
178
|
end
|
177
179
|
|
178
180
|
# Subscribe to receive topic type messages.
|
@@ -76,18 +76,23 @@ module ManageIQ
|
|
76
76
|
attr_reader :kafka_client
|
77
77
|
|
78
78
|
def initialize(options)
|
79
|
-
hosts = Array(options[:hosts] || options[:host])
|
80
|
-
hosts.collect! { |host| "#{host}:#{options[:port]}" }
|
81
|
-
|
82
79
|
@encoding = options[:encoding] || 'yaml'
|
83
80
|
require "json" if @encoding == "json"
|
84
81
|
|
85
|
-
connection_opts = {:"bootstrap.servers" => hosts.join(',')}
|
86
|
-
connection_opts[:"client.id"] = options[:client_ref] if options[:client_ref]
|
87
|
-
connection_opts.merge!(options.except(:port, :host, :hosts, :encoding, :protocol, :client_ref))
|
88
|
-
|
89
82
|
::Rdkafka::Config.logger = logger
|
90
|
-
@kafka_client = ::Rdkafka::Config.new(
|
83
|
+
@kafka_client = ::Rdkafka::Config.new(rdkafka_connection_opts(options))
|
84
|
+
end
|
85
|
+
|
86
|
+
def rdkafka_connection_opts(options)
|
87
|
+
hosts = Array(options[:hosts] || options[:host])
|
88
|
+
hosts.collect! { |host| "#{host}:#{options[:port]}" }
|
89
|
+
|
90
|
+
result = {:"bootstrap.servers" => hosts.join(',')}
|
91
|
+
result[:"client.id"] = options[:client_ref] if options[:client_ref]
|
92
|
+
result[:"sasl.username"] = options[:username] if options[:username]
|
93
|
+
result[:"sasl.password"] = options[:password] if options[:password]
|
94
|
+
|
95
|
+
result.merge(options.except(:port, :host, :hosts, :encoding, :protocol, :client_ref, :username, :password))
|
91
96
|
end
|
92
97
|
end
|
93
98
|
end
|
@@ -21,12 +21,9 @@ module ManageIQ
|
|
21
21
|
@consumer = kafka_client.consumer
|
22
22
|
end
|
23
23
|
|
24
|
-
def raw_publish(
|
24
|
+
def raw_publish(body, options)
|
25
25
|
options[:payload] = encode_body(options[:headers], body)
|
26
|
-
producer.produce(options)
|
27
|
-
handle.wait if wait
|
28
|
-
logger.info("Published to topic(#{options[:topic]}), msg(#{payload_log(body.inspect)})")
|
29
|
-
end
|
26
|
+
producer.produce(options)
|
30
27
|
end
|
31
28
|
|
32
29
|
def queue_for_publish(options)
|
@@ -8,11 +8,11 @@ module ManageIQ
|
|
8
8
|
|
9
9
|
def publish_message_impl(options)
|
10
10
|
raise ArgumentError, "Kafka messaging implementation does not take a block" if block_given?
|
11
|
-
raw_publish(
|
11
|
+
raw_publish(*queue_for_publish(options)).wait
|
12
12
|
end
|
13
13
|
|
14
14
|
def publish_messages_impl(messages)
|
15
|
-
handles = messages.collect { |msg_options| raw_publish(
|
15
|
+
handles = messages.collect { |msg_options| raw_publish(*queue_for_publish(msg_options)) }
|
16
16
|
handles.each(&:wait)
|
17
17
|
end
|
18
18
|
|
@@ -8,8 +8,9 @@ module ManageIQ
|
|
8
8
|
|
9
9
|
private
|
10
10
|
|
11
|
-
def publish_topic_impl(
|
12
|
-
raw_publish(
|
11
|
+
def publish_topic_impl(messages)
|
12
|
+
handles = messages.collect { |message| raw_publish(*topic_for_publish(message)) }
|
13
|
+
handles.each(&:wait)
|
13
14
|
end
|
14
15
|
|
15
16
|
def subscribe_topic_impl(options, &block)
|
@@ -4,7 +4,7 @@ module ManageIQ
|
|
4
4
|
module Topic
|
5
5
|
private
|
6
6
|
|
7
|
-
def
|
7
|
+
def publish_topic_single(options)
|
8
8
|
address, headers = topic_for_publish(options)
|
9
9
|
headers[:sender] = options[:sender] if options[:sender]
|
10
10
|
headers[:event_type] = options[:event] if options[:event]
|
@@ -12,6 +12,10 @@ module ManageIQ
|
|
12
12
|
raw_publish(address, options[:payload], headers)
|
13
13
|
end
|
14
14
|
|
15
|
+
def publish_topic_impl(messages)
|
16
|
+
messages.each { |message| publish_topic_single(message) }
|
17
|
+
end
|
18
|
+
|
15
19
|
def subscribe_topic_impl(options)
|
16
20
|
queue_name, headers = topic_for_subscribe(options)
|
17
21
|
|
data/lib/manageiq/messaging.rb
CHANGED
data/manageiq-messaging.gemspec
CHANGED
@@ -11,24 +11,28 @@ Gem::Specification.new do |spec|
|
|
11
11
|
|
12
12
|
spec.summary = 'Client library for ManageIQ components to exchange messages through its internal message bus.'
|
13
13
|
spec.description = 'Client library for ManageIQ components to exchange messages through its internal message bus.'
|
14
|
-
spec.homepage = '
|
14
|
+
spec.homepage = 'https://github.com/ManageIQ/manageiq-messaging'
|
15
15
|
spec.license = 'MIT'
|
16
16
|
|
17
17
|
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
18
18
|
f.match(%r{^(test|spec|features)/})
|
19
19
|
end
|
20
|
+
spec.metadata = {
|
21
|
+
"changelog_uri" => "https://github.com/ManageIQ/manageiq-messaging/blob/master/CHANGELOG.md",
|
22
|
+
"source_code_uri" => "https://github.com/ManageIQ/manageiq-messaging/",
|
23
|
+
"bug_tracker_uri" => "https://github.com/ManageIQ/manageiq-messaging/issues"
|
24
|
+
}
|
20
25
|
spec.bindir = "exe"
|
21
26
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
27
|
spec.require_paths = ["lib"]
|
23
28
|
|
24
|
-
spec.add_dependency 'activesupport', '>= 5.2.4.3', "<
|
29
|
+
spec.add_dependency 'activesupport', '>= 5.2.4.3', "< 7.0"
|
25
30
|
spec.add_dependency 'rdkafka', '~> 0.8'
|
26
31
|
spec.add_dependency 'stomp', '~> 1.4.4'
|
27
32
|
|
28
33
|
spec.add_development_dependency "bundler"
|
29
|
-
spec.add_development_dependency "codeclimate-test-reporter", "~> 1.0.0"
|
30
34
|
spec.add_development_dependency "manageiq-style"
|
31
|
-
spec.add_development_dependency "rake",
|
32
|
-
spec.add_development_dependency "rspec",
|
33
|
-
spec.add_development_dependency "simplecov"
|
35
|
+
spec.add_development_dependency "rake", ">= 12.3.3"
|
36
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
37
|
+
spec.add_development_dependency "simplecov", ">= 0.21.2"
|
34
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: manageiq-messaging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ManageIQ Authors
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-05-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: 5.2.4.3
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: '
|
22
|
+
version: '7.0'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: 5.2.4.3
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '
|
32
|
+
version: '7.0'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: rdkafka
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,20 +72,6 @@ dependencies:
|
|
72
72
|
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '0'
|
75
|
-
- !ruby/object:Gem::Dependency
|
76
|
-
name: codeclimate-test-reporter
|
77
|
-
requirement: !ruby/object:Gem::Requirement
|
78
|
-
requirements:
|
79
|
-
- - "~>"
|
80
|
-
- !ruby/object:Gem::Version
|
81
|
-
version: 1.0.0
|
82
|
-
type: :development
|
83
|
-
prerelease: false
|
84
|
-
version_requirements: !ruby/object:Gem::Requirement
|
85
|
-
requirements:
|
86
|
-
- - "~>"
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: 1.0.0
|
89
75
|
- !ruby/object:Gem::Dependency
|
90
76
|
name: manageiq-style
|
91
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -134,14 +120,14 @@ dependencies:
|
|
134
120
|
requirements:
|
135
121
|
- - ">="
|
136
122
|
- !ruby/object:Gem::Version
|
137
|
-
version:
|
123
|
+
version: 0.21.2
|
138
124
|
type: :development
|
139
125
|
prerelease: false
|
140
126
|
version_requirements: !ruby/object:Gem::Requirement
|
141
127
|
requirements:
|
142
128
|
- - ">="
|
143
129
|
- !ruby/object:Gem::Version
|
144
|
-
version:
|
130
|
+
version: 0.21.2
|
145
131
|
description: Client library for ManageIQ components to exchange messages through its
|
146
132
|
internal message bus.
|
147
133
|
email:
|
@@ -150,13 +136,14 @@ extensions: []
|
|
150
136
|
extra_rdoc_files: []
|
151
137
|
files:
|
152
138
|
- ".codeclimate.yml"
|
139
|
+
- ".github/workflows/ci.yaml"
|
153
140
|
- ".gitignore"
|
154
141
|
- ".rspec"
|
155
142
|
- ".rubocop.yml"
|
156
143
|
- ".rubocop_cc.yml"
|
157
144
|
- ".rubocop_local.yml"
|
158
|
-
- ".
|
159
|
-
-
|
145
|
+
- ".whitesource"
|
146
|
+
- CHANGELOG.md
|
160
147
|
- CODE_OF_CONDUCT.md
|
161
148
|
- Gemfile
|
162
149
|
- LICENSE.txt
|
@@ -188,10 +175,13 @@ files:
|
|
188
175
|
- lib/manageiq/messaging/stomp/topic.rb
|
189
176
|
- lib/manageiq/messaging/version.rb
|
190
177
|
- manageiq-messaging.gemspec
|
191
|
-
homepage:
|
178
|
+
homepage: https://github.com/ManageIQ/manageiq-messaging
|
192
179
|
licenses:
|
193
180
|
- MIT
|
194
|
-
metadata:
|
181
|
+
metadata:
|
182
|
+
changelog_uri: https://github.com/ManageIQ/manageiq-messaging/blob/master/CHANGELOG.md
|
183
|
+
source_code_uri: https://github.com/ManageIQ/manageiq-messaging/
|
184
|
+
bug_tracker_uri: https://github.com/ManageIQ/manageiq-messaging/issues
|
195
185
|
post_install_message:
|
196
186
|
rdoc_options: []
|
197
187
|
require_paths:
|
@@ -207,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
207
197
|
- !ruby/object:Gem::Version
|
208
198
|
version: '0'
|
209
199
|
requirements: []
|
210
|
-
rubygems_version: 3.
|
200
|
+
rubygems_version: 3.3.5
|
211
201
|
signing_key:
|
212
202
|
specification_version: 4
|
213
203
|
summary: Client library for ManageIQ components to exchange messages through its internal
|
data/.travis.yml
DELETED
data/CHANGES
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
= 0.1.0 - 4-Oct-2018
|
2
|
-
* Initial release
|
3
|
-
|
4
|
-
= 0.1.1 - 20-Nov-2018
|
5
|
-
* By default upon receiving a message or an event, it is automatically acknowledged. But
|
6
|
-
the subscriber can decide to turn off the auto ack feature and ack it in the callback block.
|
7
|
-
|
8
|
-
= 0.1.2 - 11-Dec-2018
|
9
|
-
* Allow to set max_bytes to each_batch when subscribe to a Kafka topic.
|
10
|
-
|
11
|
-
= 0.1.4 - 3-Apr-2019
|
12
|
-
* Add an #ack method to a ReceivedMessage to simplify manual acknowledgements
|
13
|
-
* Allow caller to provide a session_timeout to kafka consumers, default of 30sec
|
14
|
-
|
15
|
-
= 0.1.5 - 6-Jun-2019
|
16
|
-
* Allow caller to provide extra headers to the message
|
17
|
-
|
18
|
-
= 0.1.6 - 6-July-2020
|
19
|
-
* Rescue message body decoding errors. Re-raise errors raised by users code of processing received messages.
|
20
|
-
|
21
|
-
= 1.0.0 - 28-Sep-2020
|
22
|
-
* Switch to use rdkafka client
|
23
|
-
|
24
|
-
= 1.0.1 - 15-Dec-2020
|
25
|
-
* Allow all kafka options to be passed
|
26
|
-
* remove sudo:false from .travis.yml
|
27
|
-
* Use manageiq-style
|
28
|
-
|
29
|
-
= 1.0.2 - 4-Jan-2021
|
30
|
-
* Rails 6.0 Support
|