messaging 3.7.0 → 3.7.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +36 -34
- data/.env +1 -0
- data/Gemfile.lock +14 -30
- data/docker-compose.yml +62 -0
- data/lib/messaging/adapters/kafka/producer.rb +2 -2
- data/lib/messaging/adapters/kafka.rb +2 -2
- data/lib/messaging/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6b8fa8dc1718dad30b304f383f7083c633501cf97a9fe8b25ca813f2e0a93381
|
4
|
+
data.tar.gz: a3ba85a1d64ae1b6a4f43a272465431f36a7a883880a38167860179acf6dd6d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc805a0b0407bb15de8ac75778156dbd1f5bcc0672aaf25c8be8766bd14894af524d6a4f579861443821b3f9a9b15e667a4fde8e5799e8a8592c98893b460034
|
7
|
+
data.tar.gz: 8862bddce2dcd81154173551625168db71f2aa4bd2c609a43454b579e2332ab7c2f26e3a767b5deb018f947d61a9bda92ac9a73b332401341098dce3acda1bbf
|
data/.circleci/config.yml
CHANGED
@@ -2,51 +2,53 @@
|
|
2
2
|
#
|
3
3
|
# Check https://circleci.com/docs/2.0/language-ruby/ for more details
|
4
4
|
#
|
5
|
-
version: 2
|
6
|
-
|
7
|
-
|
8
|
-
docker:
|
9
|
-
- image: circleci/ruby:2.4.1-node-browsers
|
10
|
-
environment:
|
11
|
-
- CC_TEST_REPORTER_ID: 94ada9b95ee3f232a6e984809d37917cfee90ac47805429e8c49742b2e8d2276
|
12
|
-
- RAILS_ENV: test
|
13
|
-
- image: circleci/postgres:12.5-ram
|
14
|
-
environment:
|
15
|
-
- POSTGRES_HOST_AUTH_METHOD: trust
|
16
|
-
- POSTGRES_PASSWORD: password
|
5
|
+
version: 2.1
|
6
|
+
orbs:
|
7
|
+
slack: circleci/slack@4.8.2
|
17
8
|
|
18
|
-
|
9
|
+
shared: &shared
|
10
|
+
docker:
|
11
|
+
# https://github.com/bukowskis/fineart/wiki/Updating-the-development-docker-image-for-Circle-CI
|
12
|
+
- image: ghcr.io/bukowskis/base-image/development:ruby-2.6.6-v5
|
13
|
+
auth:
|
14
|
+
username: $GHCR_USER
|
15
|
+
password: $GHCR_PASSWORD
|
16
|
+
- image: cimg/postgres:12.11
|
17
|
+
environment:
|
18
|
+
- POSTGRES_HOST_AUTH_METHOD: trust
|
19
|
+
resource_class: large
|
20
|
+
environment:
|
21
|
+
- CC_TEST_REPORTER_ID: 94ada9b95ee3f232a6e984809d37917cfee90ac47805429e8c49742b2e8d2276
|
22
|
+
- DISABLE_SPRING: 1
|
23
|
+
- RACK_ENV: test
|
19
24
|
|
25
|
+
commands:
|
26
|
+
bundle_install:
|
20
27
|
steps:
|
21
|
-
- run:
|
22
|
-
name: Install aptitude because it has much more helpful error messages when ending up in dependency hell
|
23
|
-
command: sudo apt-get install --assume-yes aptitude
|
24
|
-
|
25
|
-
- run:
|
26
|
-
name: Install Postgres Client
|
27
|
-
command: sudo aptitude -y install postgresql-client
|
28
|
-
|
29
|
-
- checkout
|
30
|
-
|
31
|
-
- run:
|
32
|
-
name: Setup Code Climate test-reporter
|
33
|
-
command: |
|
34
|
-
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
35
|
-
chmod +x ./cc-test-reporter
|
36
|
-
|
37
28
|
- restore_cache:
|
38
29
|
name: Restore Bundler Cache
|
39
|
-
key:
|
30
|
+
key: bukowskis-bundle-{{ .Environment.CACHE_VERSION }}-{{ checksum "Gemfile.lock" }}
|
40
31
|
|
41
32
|
- run:
|
42
|
-
name:
|
43
|
-
command: bundle install --jobs=4 --retry=3
|
33
|
+
name: Bundle Install
|
34
|
+
command: bundle install --path=vendor/bundle --jobs=4 --retry=3
|
44
35
|
|
45
36
|
- save_cache:
|
46
|
-
key:
|
37
|
+
key: bukowskis-bundle-{{ .Environment.CACHE_VERSION }}-{{ checksum "Gemfile.lock" }}
|
47
38
|
paths:
|
48
39
|
- vendor/bundle
|
49
40
|
|
41
|
+
jobs:
|
42
|
+
specs:
|
43
|
+
<<: *shared
|
44
|
+
steps:
|
45
|
+
- checkout
|
46
|
+
- bundle_install
|
47
|
+
- run:
|
48
|
+
name: Setup Code Climate test-reporter
|
49
|
+
command: |
|
50
|
+
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
51
|
+
chmod +x ./cc-test-reporter
|
50
52
|
- run:
|
51
53
|
name: Database Setup
|
52
54
|
command: |
|
@@ -65,4 +67,4 @@ workflows:
|
|
65
67
|
version: 2
|
66
68
|
messaging_specs:
|
67
69
|
jobs:
|
68
|
-
-
|
70
|
+
- specs
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
messaging (3.
|
4
|
+
messaging (3.7.2)
|
5
5
|
activerecord
|
6
6
|
activesupport
|
7
7
|
after_transaction
|
@@ -45,8 +45,8 @@ GEM
|
|
45
45
|
tzinfo (~> 1.1)
|
46
46
|
addressable (2.7.0)
|
47
47
|
public_suffix (>= 2.0.2, < 5.0)
|
48
|
-
after_transaction (0.0.
|
49
|
-
activerecord
|
48
|
+
after_transaction (0.0.5)
|
49
|
+
activerecord
|
50
50
|
arel (9.0.0)
|
51
51
|
axiom-types (0.1.1)
|
52
52
|
descendants_tracker (~> 0.0.4)
|
@@ -73,24 +73,23 @@ GEM
|
|
73
73
|
descendants_tracker (0.0.4)
|
74
74
|
thread_safe (~> 0.3, >= 0.3.1)
|
75
75
|
diff-lcs (1.3)
|
76
|
-
digest-crc (0.
|
76
|
+
digest-crc (0.6.0)
|
77
77
|
dnsruby (1.61.3)
|
78
78
|
addressable (~> 2.5)
|
79
79
|
docile (1.3.2)
|
80
|
-
dry-configurable (0.
|
80
|
+
dry-configurable (0.13.0)
|
81
81
|
concurrent-ruby (~> 1.0)
|
82
|
-
dry-core (~> 0.
|
83
|
-
dry-container (0.
|
82
|
+
dry-core (~> 0.6)
|
83
|
+
dry-container (0.9.0)
|
84
84
|
concurrent-ruby (~> 1.0)
|
85
|
-
dry-configurable (~> 0.
|
86
|
-
dry-core (0.
|
85
|
+
dry-configurable (~> 0.13, >= 0.13.0)
|
86
|
+
dry-core (0.7.1)
|
87
87
|
concurrent-ruby (~> 1.0)
|
88
|
-
dry-equalizer (0.
|
89
|
-
dry-initializer (3.0.
|
88
|
+
dry-equalizer (0.3.0)
|
89
|
+
dry-initializer (3.0.4)
|
90
90
|
em-websocket (0.5.1)
|
91
91
|
eventmachine (>= 0.12.9)
|
92
92
|
http_parser.rb (~> 0.6.0)
|
93
|
-
equalizer (0.0.11)
|
94
93
|
erubi (1.9.0)
|
95
94
|
ethon (0.12.0)
|
96
95
|
ffi (>= 1.3.0)
|
@@ -101,7 +100,6 @@ GEM
|
|
101
100
|
ffi (1.11.3)
|
102
101
|
forwardable-extended (2.6.0)
|
103
102
|
gemoji (3.0.1)
|
104
|
-
geocoder (1.2.13)
|
105
103
|
github-pages (203)
|
106
104
|
github-pages-health-check (= 1.16.1)
|
107
105
|
jekyll (= 3.8.5)
|
@@ -151,7 +149,6 @@ GEM
|
|
151
149
|
octokit (~> 4.0)
|
152
150
|
public_suffix (~> 3.0)
|
153
151
|
typhoeus (~> 1.3)
|
154
|
-
hashie (4.1.0)
|
155
152
|
html-pipeline (2.12.2)
|
156
153
|
activesupport (>= 2)
|
157
154
|
nokogiri (>= 1.4)
|
@@ -272,21 +269,11 @@ GEM
|
|
272
269
|
listen (3.2.1)
|
273
270
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
274
271
|
rb-inotify (~> 0.9, >= 0.9.10)
|
275
|
-
locality (1.1.0)
|
276
|
-
activesupport
|
277
|
-
geocoder (= 1.2.13)
|
278
|
-
hashie
|
279
|
-
i18n
|
280
|
-
maxminddb (= 0.1.8)
|
281
|
-
operation
|
282
|
-
trouble
|
283
272
|
loofah (2.4.0)
|
284
273
|
crass (~> 1.0.2)
|
285
274
|
nokogiri (>= 1.5.9)
|
286
|
-
maxminddb (0.1.8)
|
287
275
|
mercenary (0.3.6)
|
288
|
-
meter (1.
|
289
|
-
locality (~> 1.1.0)
|
276
|
+
meter (1.4.0)
|
290
277
|
useragent (~> 0.16.3)
|
291
278
|
method_object (1.0.0)
|
292
279
|
dry-initializer
|
@@ -303,7 +290,6 @@ GEM
|
|
303
290
|
mini_portile2 (~> 2.4.0)
|
304
291
|
octokit (4.14.0)
|
305
292
|
sawyer (~> 0.8.0, >= 0.5.3)
|
306
|
-
operation (1.4.1)
|
307
293
|
pathutil (0.16.2)
|
308
294
|
forwardable-extended (~> 2.6)
|
309
295
|
pg (1.1.4)
|
@@ -358,7 +344,7 @@ GEM
|
|
358
344
|
rspec-support (3.9.0)
|
359
345
|
ruby-enum (0.7.2)
|
360
346
|
i18n
|
361
|
-
ruby-kafka (1.
|
347
|
+
ruby-kafka (1.5.0)
|
362
348
|
digest-crc
|
363
349
|
rubyzip (1.3.0)
|
364
350
|
safe_yaml (1.0.5)
|
@@ -384,18 +370,16 @@ GEM
|
|
384
370
|
unicode-display_width (~> 1.1, >= 1.1.1)
|
385
371
|
thor (0.20.3)
|
386
372
|
thread_safe (0.3.6)
|
387
|
-
trouble (0.0.13)
|
388
373
|
typhoeus (1.3.1)
|
389
374
|
ethon (>= 0.9.0)
|
390
375
|
tzinfo (1.2.5)
|
391
376
|
thread_safe (~> 0.1)
|
392
377
|
unicode-display_width (1.6.0)
|
393
378
|
useragent (0.16.10)
|
394
|
-
virtus (
|
379
|
+
virtus (2.0.0)
|
395
380
|
axiom-types (~> 0.1)
|
396
381
|
coercible (~> 1.0)
|
397
382
|
descendants_tracker (~> 0.0, >= 0.0.3)
|
398
|
-
equalizer (~> 0.0, >= 0.0.9)
|
399
383
|
|
400
384
|
PLATFORMS
|
401
385
|
ruby
|
data/docker-compose.yml
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
version: '3.4'
|
2
|
+
|
3
|
+
x-shared: &shared
|
4
|
+
tmpfs:
|
5
|
+
- /tmp
|
6
|
+
environment:
|
7
|
+
- RAILS_ENV=${RAILS_ENV:-development}
|
8
|
+
- BOOTSNAP_CACHE_DIR=/rails_cache/bootsnap
|
9
|
+
volumes:
|
10
|
+
- .:/app
|
11
|
+
- bundle:/usr/local/bundle
|
12
|
+
networks:
|
13
|
+
- ${NETWORK_NAME:-default}
|
14
|
+
|
15
|
+
services:
|
16
|
+
runner:
|
17
|
+
<<: *shared
|
18
|
+
image: ghcr.io/bukowskis/base-image/development:ruby-2.6.6-v5
|
19
|
+
stdin_open: true
|
20
|
+
tty: true
|
21
|
+
command: /bin/sh
|
22
|
+
|
23
|
+
postgres:
|
24
|
+
image: postgres:${PG_VERSION}
|
25
|
+
volumes:
|
26
|
+
- pg_data:/var/lib/postgresql/data
|
27
|
+
ports:
|
28
|
+
- 5432:5432
|
29
|
+
environment:
|
30
|
+
- POSTGRES_HOST_AUTH_METHOD=trust
|
31
|
+
|
32
|
+
zookeeper:
|
33
|
+
image: zookeeper
|
34
|
+
ports:
|
35
|
+
- "2181:2181"
|
36
|
+
|
37
|
+
kafka:
|
38
|
+
image: niks123123/kafka:2.7.0
|
39
|
+
ports:
|
40
|
+
- "9092:9092"
|
41
|
+
depends_on:
|
42
|
+
- zookeeper
|
43
|
+
environment:
|
44
|
+
KAFKA_ADVERTISED_HOST_NAME: kafka
|
45
|
+
KAFKA_ADVERTISED_PORT: 9092
|
46
|
+
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
47
|
+
KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true'
|
48
|
+
volumes:
|
49
|
+
- /var/run/docker.sock:/var/run/docker.sock
|
50
|
+
|
51
|
+
volumes:
|
52
|
+
bundle:
|
53
|
+
name: bundle
|
54
|
+
pg_data:
|
55
|
+
name: pg_data_${PG_VERSION}
|
56
|
+
|
57
|
+
networks:
|
58
|
+
default:
|
59
|
+
name: messaging_default
|
60
|
+
external:
|
61
|
+
name: ${EXTERNAL_NETWORK}
|
62
|
+
external: true
|
@@ -20,8 +20,8 @@ module Messaging
|
|
20
20
|
def call(message)
|
21
21
|
reconnect if forked?
|
22
22
|
producer.produce(message.to_json, key: message.message_key, topic: message.topic)
|
23
|
-
rescue ::Kafka::BufferOverflow =>
|
24
|
-
|
23
|
+
rescue ::Kafka::BufferOverflow => e
|
24
|
+
ExceptionHandler.call(e, message: message.to_json)
|
25
25
|
end
|
26
26
|
|
27
27
|
def shutdown
|
@@ -27,7 +27,7 @@ module Messaging
|
|
27
27
|
|
28
28
|
# Internal: Setup a Ruby-Kafka consumer
|
29
29
|
def create_kafka_consumer(group_id)
|
30
|
-
client.consumer({ group_id: group_id }.merge(Config.kafka.consumer.
|
30
|
+
client.consumer({ group_id: group_id }.merge(Config.kafka.consumer.to_h))
|
31
31
|
end
|
32
32
|
|
33
33
|
private
|
@@ -37,7 +37,7 @@ module Messaging
|
|
37
37
|
# We have a specific logger for Ruby-Kafka as it
|
38
38
|
# is a bit more noisy than we would like.
|
39
39
|
kafka_logger = Messaging.logger.dup.tap { |logger| logger.level = Config.kafka.log_level }
|
40
|
-
::Kafka.new(Config.kafka.client.
|
40
|
+
::Kafka.new(Config.kafka.client.to_h.merge(client_id: Config.app_name, logger: kafka_logger))
|
41
41
|
end
|
42
42
|
|
43
43
|
def self.register!
|
data/lib/messaging/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: messaging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.7.
|
4
|
+
version: 3.7.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bukowskis
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -271,6 +271,7 @@ extensions: []
|
|
271
271
|
extra_rdoc_files: []
|
272
272
|
files:
|
273
273
|
- ".circleci/config.yml"
|
274
|
+
- ".env"
|
274
275
|
- ".gitignore"
|
275
276
|
- ".rspec"
|
276
277
|
- Gemfile
|
@@ -282,6 +283,7 @@ files:
|
|
282
283
|
- _layouts/single.html
|
283
284
|
- bin/console
|
284
285
|
- bin/setup
|
286
|
+
- docker-compose.yml
|
285
287
|
- docs/adapters.md
|
286
288
|
- docs/consuming.md
|
287
289
|
- docs/installation.md
|