zaikio-loom 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +1 -0
- data/CHANGELOG.md +4 -0
- data/Gemfile.lock +13 -11
- data/bin/test +1 -1
- data/lib/zaikio/loom/configuration.rb +4 -14
- data/lib/zaikio/loom/event.rb +8 -2
- data/lib/zaikio/loom/event_serializer.rb +4 -4
- data/lib/zaikio/loom/version.rb +1 -1
- data/zaikio-loom.gemspec +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 83b8f848c42ce893f17ea2fcc965f607cbb2582de13d2cb6a5082937f4035d66
|
|
4
|
+
data.tar.gz: dcc33304f16d8e5b223ddd62d4edb339fc087cfb8f25b61a464a76e2f2a03a0c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3f123c3dd9b2356b118593d3de86f78b7ef9307c0118b174a84b44b77acff372660e39b9bbe218c19ca19f3602c98e0d9fc6159d54a50314d7688a2d12322ea0
|
|
7
|
+
data.tar.gz: c612160d9ff55ebd84d2bc75d3d42549dfe6b0510f6dc57f43706cc4f5f2a3750fe7bb210a90fe898a36a15bcbf85076ac12dad73723d6483341dbca8be8934f
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
zaikio-loom (0.
|
|
4
|
+
zaikio-loom (0.3.0)
|
|
5
5
|
oj
|
|
6
6
|
rails (~> 6.0, >= 6.0.2.2)
|
|
7
7
|
|
|
@@ -74,11 +74,11 @@ GEM
|
|
|
74
74
|
erubi (1.9.0)
|
|
75
75
|
globalid (0.4.2)
|
|
76
76
|
activesupport (>= 4.2.0)
|
|
77
|
-
hashdiff (1.0.
|
|
77
|
+
hashdiff (1.0.1)
|
|
78
78
|
i18n (1.8.2)
|
|
79
79
|
concurrent-ruby (~> 1.0)
|
|
80
80
|
jaro_winkler (1.5.4)
|
|
81
|
-
loofah (2.
|
|
81
|
+
loofah (2.5.0)
|
|
82
82
|
crass (~> 1.0.2)
|
|
83
83
|
nokogiri (>= 1.5.9)
|
|
84
84
|
mail (2.7.1)
|
|
@@ -94,11 +94,11 @@ GEM
|
|
|
94
94
|
nio4r (2.5.2)
|
|
95
95
|
nokogiri (1.10.9)
|
|
96
96
|
mini_portile2 (~> 2.4.0)
|
|
97
|
-
oj (3.10.
|
|
97
|
+
oj (3.10.6)
|
|
98
98
|
parallel (1.19.1)
|
|
99
|
-
parser (2.7.
|
|
99
|
+
parser (2.7.1.1)
|
|
100
100
|
ast (~> 2.4.0)
|
|
101
|
-
public_suffix (4.0.
|
|
101
|
+
public_suffix (4.0.4)
|
|
102
102
|
rack (2.2.2)
|
|
103
103
|
rack-test (1.1.0)
|
|
104
104
|
rack (>= 1.0, < 3)
|
|
@@ -130,13 +130,15 @@ GEM
|
|
|
130
130
|
thor (>= 0.20.3, < 2.0)
|
|
131
131
|
rainbow (3.0.0)
|
|
132
132
|
rake (13.0.1)
|
|
133
|
-
|
|
133
|
+
rexml (3.2.4)
|
|
134
|
+
rubocop (0.82.0)
|
|
134
135
|
jaro_winkler (~> 1.5.1)
|
|
135
136
|
parallel (~> 1.10)
|
|
136
137
|
parser (>= 2.7.0.1)
|
|
137
138
|
rainbow (>= 2.2.2, < 4.0)
|
|
139
|
+
rexml
|
|
138
140
|
ruby-progressbar (~> 1.7)
|
|
139
|
-
unicode-display_width (>= 1.4.0, <
|
|
141
|
+
unicode-display_width (>= 1.4.0, < 2.0)
|
|
140
142
|
rubocop-performance (1.5.2)
|
|
141
143
|
rubocop (>= 0.71.0)
|
|
142
144
|
ruby-progressbar (1.10.1)
|
|
@@ -150,10 +152,10 @@ GEM
|
|
|
150
152
|
sprockets (>= 3.0.0)
|
|
151
153
|
thor (1.0.1)
|
|
152
154
|
thread_safe (0.3.6)
|
|
153
|
-
tzinfo (1.2.
|
|
155
|
+
tzinfo (1.2.7)
|
|
154
156
|
thread_safe (~> 0.1)
|
|
155
|
-
unicode-display_width (1.
|
|
156
|
-
webmock (3.8.
|
|
157
|
+
unicode-display_width (1.7.0)
|
|
158
|
+
webmock (3.8.3)
|
|
157
159
|
addressable (>= 2.3.6)
|
|
158
160
|
crack (>= 0.3.2)
|
|
159
161
|
hashdiff (>= 0.4.0, < 2.0.0)
|
data/bin/test
CHANGED
|
@@ -4,11 +4,9 @@ module Zaikio
|
|
|
4
4
|
module Loom
|
|
5
5
|
class Configuration
|
|
6
6
|
HOSTS = {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
sandbox: "https://loom.sandbox.zaikio.com",
|
|
11
|
-
production: "https://loom.zaikio.com"
|
|
7
|
+
test: "http://loom.zaikio.test",
|
|
8
|
+
sandbox: "https://loom.sandbox.zaikio.com",
|
|
9
|
+
production: "https://loom.zaikio.com"
|
|
12
10
|
}.freeze
|
|
13
11
|
|
|
14
12
|
attr_accessor :app_name, :password, :version
|
|
@@ -25,15 +23,7 @@ module Zaikio
|
|
|
25
23
|
|
|
26
24
|
def environment=(env)
|
|
27
25
|
@environment = env.to_sym
|
|
28
|
-
@host =
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
private
|
|
32
|
-
|
|
33
|
-
def host_for(environment)
|
|
34
|
-
HOSTS.fetch(environment) do
|
|
35
|
-
raise StandardError.new, "Invalid Zaikio::Loom environment '#{environment}'"
|
|
36
|
-
end
|
|
26
|
+
@host = HOSTS[environment]
|
|
37
27
|
end
|
|
38
28
|
end
|
|
39
29
|
end
|
data/lib/zaikio/loom/event.rb
CHANGED
|
@@ -5,7 +5,7 @@ require "securerandom"
|
|
|
5
5
|
module Zaikio
|
|
6
6
|
module Loom
|
|
7
7
|
class Event
|
|
8
|
-
attr_reader :status_code, :response_body
|
|
8
|
+
attr_reader :id, :status_code, :response_body
|
|
9
9
|
|
|
10
10
|
def initialize(name, subject:, id: nil, link: nil, payload: nil, receiver: nil, timestamp: nil, version: nil) # rubocop:disable Metrics/ParameterLists
|
|
11
11
|
@event_name = "#{configuration.app_name}.#{name}"
|
|
@@ -23,6 +23,8 @@ module Zaikio
|
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
def fire # rubocop:disable Metrics/AbcSize
|
|
26
|
+
log_event
|
|
27
|
+
|
|
26
28
|
return false unless configuration.password && configuration.host
|
|
27
29
|
|
|
28
30
|
uri = URI("#{configuration.host}/api/v1/events")
|
|
@@ -68,7 +70,11 @@ module Zaikio
|
|
|
68
70
|
end
|
|
69
71
|
|
|
70
72
|
def event_as_json
|
|
71
|
-
Oj.dump({ event: to_h }, mode: :compat)
|
|
73
|
+
@event_as_json ||= Oj.dump({ event: to_h }, mode: :compat)
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def log_event
|
|
77
|
+
configuration.logger.info("Zaikio::Loom event\n#{event_as_json}")
|
|
72
78
|
end
|
|
73
79
|
end
|
|
74
80
|
end
|
|
@@ -10,10 +10,10 @@ module Zaikio
|
|
|
10
10
|
end
|
|
11
11
|
|
|
12
12
|
def deserialize(hash)
|
|
13
|
-
name = hash.delete(
|
|
14
|
-
timestamp = DateTime.parse(hash.delete(
|
|
15
|
-
hash.delete(
|
|
16
|
-
Event.new(name, hash.symbolize_keys.merge(timestamp: timestamp))
|
|
13
|
+
name = hash.delete("name").split(".").last
|
|
14
|
+
timestamp = DateTime.parse(hash.delete("timestamp"))
|
|
15
|
+
hash.delete("_aj_serialized")
|
|
16
|
+
Event.new(name, **hash.symbolize_keys.merge(timestamp: timestamp))
|
|
17
17
|
end
|
|
18
18
|
end
|
|
19
19
|
end
|
data/lib/zaikio/loom/version.rb
CHANGED
data/zaikio-loom.gemspec
CHANGED
|
@@ -24,7 +24,7 @@ Gem::Specification.new do |spec|
|
|
|
24
24
|
spec.require_paths = ["lib"]
|
|
25
25
|
|
|
26
26
|
spec.add_runtime_dependency "oj"
|
|
27
|
-
spec.add_dependency "rails",
|
|
27
|
+
spec.add_dependency "rails", "~> 6.0", ">= 6.0.2.2"
|
|
28
28
|
|
|
29
29
|
spec.add_development_dependency "bundler"
|
|
30
30
|
spec.add_development_dependency "minitest"
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: zaikio-loom
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- crispymtn
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2020-
|
|
12
|
+
date: 2020-04-22 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: oj
|
|
@@ -195,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
195
195
|
- !ruby/object:Gem::Version
|
|
196
196
|
version: '0'
|
|
197
197
|
requirements: []
|
|
198
|
-
rubygems_version: 3.
|
|
198
|
+
rubygems_version: 3.1.2
|
|
199
199
|
signing_key:
|
|
200
200
|
specification_version: 4
|
|
201
201
|
summary: The Zaikio Loom Ruby Gem simplifies publishing events on the Zaikio Loom
|