rakuna 0.7.5 → 1.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 363782f3e4d24aaca9ec31549187070b24c00a2e
4
- data.tar.gz: 4292161db562e24ca444472e622743b5075b7c19
3
+ metadata.gz: 8980e07e4615ee59f8f9bd0e1bcadbdeb10a1f64
4
+ data.tar.gz: 38e4337ac358e917bec10d3529a39b8414d9480d
5
5
  SHA512:
6
- metadata.gz: d61df6f8e1d4bd8d05ad556f4d5e7b55834559165415b33dd33da8ef77d83c337fb073cc8a5bbcfde432db1d05612d1f7deedc35ac43ac2dd4301692ef11e0dd
7
- data.tar.gz: e967f746c3beb75c3fd48002fcefd41f1c9453b05ef41c1d0c438f91b0e9675240698f40dad5786b89843980a2ed2f4ade2f0f59ac06c539274a7dc60f48ed45
6
+ metadata.gz: 012957e066c350170ddef68aa07141ea81d2848c2976a50b1b08b992df9195f9dd1254d94702c56e1d51ec0867619347a52830824d703a5f93c4bc287675be93
7
+ data.tar.gz: 70109283823d585a053a999a8efba706e2d172008c451c6322eec8f2124d2e68e5a4bc355331c75eda56fc4afb7179aae5abe3d4237f6067e557a9a5237bc56e
data/Gemfile CHANGED
@@ -1,9 +1,13 @@
1
- source "http://rubygems.org"
1
+ source "https://rubygems.org"
2
2
 
3
- gem "multi_json", "~> 1.11"
4
- gem "json-schema", "~> 2.5"
5
- gem "webmachine", "~> 1.4"
6
- gem "redis", "~> 3.2"
3
+ gem 'rakuna-core', '~> 1.0'
4
+ gem 'rakuna-content-json', '~> 1.0'
5
+ gem 'rakuna-data-redis', '~> 1.0'
6
+ gem 'rakuna-integration-github', '~> 1.0'
7
+ gem 'rakuna-session-redis', '~> 1.0'
8
+ gem 'rakuna-content-signature', '~> 1.0'
9
+ gem 'rakuna-authentication-github', '~> 1.0'
10
+ gem 'rakuna-validation-json', '~> 1.0'
7
11
 
8
12
  group :development do
9
13
  gem "rspec", "~> 3.3"
@@ -1,5 +1,5 @@
1
1
  GEM
2
- remote: http://rubygems.org/
2
+ remote: https://rubygems.org/
3
3
  specs:
4
4
  abstract_type (0.0.7)
5
5
  adamantium (0.2.0)
@@ -15,6 +15,7 @@ GEM
15
15
  concord (0.1.5)
16
16
  adamantium (~> 0.2.0)
17
17
  equalizer (~> 0.0.9)
18
+ contracts (0.11.0)
18
19
  descendants_tracker (0.0.4)
19
20
  thread_safe (~> 0.3, >= 0.3.1)
20
21
  diff-lcs (1.2.5)
@@ -22,6 +23,7 @@ GEM
22
23
  equalizer (0.0.11)
23
24
  faraday (0.9.1)
24
25
  multipart-post (>= 1.2, < 3)
26
+ fast_secure_compare (1.0.1)
25
27
  flog (4.3.2)
26
28
  ruby_parser (~> 3.1, > 3.1.0)
27
29
  sexp_processor (~> 4.4)
@@ -71,9 +73,12 @@ GEM
71
73
  multi_json (~> 1.3)
72
74
  multi_xml (~> 0.5)
73
75
  rack (~> 1.2)
76
+ octokit (4.1.0)
77
+ sawyer (~> 0.6.0, >= 0.5.3)
74
78
  parser (2.2.2.6)
75
79
  ast (>= 1.1, < 3.0)
76
80
  powerpack (0.1.1)
81
+ private_attr (1.1.0)
77
82
  procto (0.0.2)
78
83
  pry (0.10.1)
79
84
  coderay (~> 1.1.0)
@@ -82,10 +87,37 @@ GEM
82
87
  rack (1.6.4)
83
88
  rainbow (2.0.0)
84
89
  rake (10.4.2)
90
+ rakuna-authentication-github (1.0.0)
91
+ rakuna-core (~> 1.0)
92
+ rakuna-integration-github (~> 1.0)
93
+ rakuna-content-json (1.0.0)
94
+ multi_json (~> 1.11)
95
+ rakuna-core (~> 1.0)
96
+ rakuna-content-signature (1.0.0)
97
+ fast_secure_compare (~> 1.0)
98
+ rakuna-core (~> 1.0)
99
+ secure_compare (~> 0.0)
100
+ rakuna-core (1.0.0)
101
+ contracts (~> 0.11)
102
+ webmachine (~> 1.4)
103
+ rakuna-data-redis (1.0.0)
104
+ rakuna-core (~> 1.0)
105
+ redis (~> 3.2)
106
+ rakuna-integration-github (1.0.0)
107
+ octokit (~> 4.1)
108
+ rakuna-core (~> 1.0)
109
+ rakuna-session-redis (1.0.1)
110
+ rakuna-core (~> 1.0)
111
+ rakuna-data-redis (~> 1.0)
112
+ rakuna-validation-json (1.0.0)
113
+ json-schema (~> 2.5)
114
+ rakuna-content-json (~> 1.0)
115
+ rakuna-core (~> 1.0)
85
116
  rdoc (4.2.0)
86
117
  redis (3.2.1)
87
- reek (3.1)
118
+ reek (3.3.1)
88
119
  parser (~> 2.2.2.5)
120
+ private_attr (~> 1.1)
89
121
  rainbow (~> 2.0)
90
122
  unparser (~> 0.2.2)
91
123
  roodi (5.0.0)
@@ -103,15 +135,19 @@ GEM
103
135
  diff-lcs (>= 1.2.0, < 2.0)
104
136
  rspec-support (~> 3.3.0)
105
137
  rspec-support (3.3.0)
106
- rubocop (0.33.0)
138
+ rubocop (0.34.1)
107
139
  astrolabe (~> 1.3)
108
140
  parser (>= 2.2.2.5, < 3.0)
109
141
  powerpack (~> 0.1)
110
142
  rainbow (>= 1.99.1, < 3.0)
111
143
  ruby-progressbar (~> 1.4)
112
144
  ruby-progressbar (1.7.5)
113
- ruby_parser (3.7.0)
145
+ ruby_parser (3.7.1)
114
146
  sexp_processor (~> 4.1)
147
+ sawyer (0.6.0)
148
+ addressable (~> 2.3.5)
149
+ faraday (~> 0.8, < 0.10)
150
+ secure_compare (0.0.1)
115
151
  sexp_processor (4.6.0)
116
152
  simplecov (0.10.0)
117
153
  docile (~> 1.1.0)
@@ -123,7 +159,7 @@ GEM
123
159
  term-ansicolor (1.3.2)
124
160
  tins (~> 1.0)
125
161
  thread_safe (0.3.5)
126
- tins (1.5.4)
162
+ tins (1.6.0)
127
163
  unparser (0.2.4)
128
164
  abstract_type (~> 0.0.7)
129
165
  adamantium (~> 0.2.0)
@@ -146,16 +182,20 @@ DEPENDENCIES
146
182
  flog (~> 4.3)
147
183
  inch (~> 0.6)
148
184
  jeweler (~> 2.0)
149
- json-schema (~> 2.5)
150
- multi_json (~> 1.11)
151
- redis (~> 3.2)
185
+ rakuna-authentication-github (~> 1.0)
186
+ rakuna-content-json (~> 1.0)
187
+ rakuna-content-signature (~> 1.0)
188
+ rakuna-core (~> 1.0)
189
+ rakuna-data-redis (~> 1.0)
190
+ rakuna-integration-github (~> 1.0)
191
+ rakuna-session-redis (~> 1.0)
192
+ rakuna-validation-json (~> 1.0)
152
193
  reek (~> 3.1)
153
194
  roodi (~> 5.0)
154
195
  rspec (~> 3.3)
155
196
  rubocop (~> 0.33)
156
197
  simplecov (~> 0.10)
157
- webmachine (~> 1.4)
158
198
  yard (~> 0.8)
159
199
 
160
200
  BUNDLED WITH
161
- 1.10.5
201
+ 1.10.6
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.7.5
1
+ 1.0.0
@@ -1,3 +1,12 @@
1
- require 'rakuna/content'
2
- require 'rakuna/resource'
3
- require 'rakuna/storage'
1
+ require 'rakuna/core'
2
+
3
+ require 'rakuna/content/json'
4
+ require 'rakuna/validation/json'
5
+
6
+ require 'rakuna/validation/signature'
7
+
8
+ require 'rakuna/integration/github'
9
+ require 'rakuna/authentication/github'
10
+
11
+ require 'rakuna/data/redis'
12
+ require 'rakuna/session/redis'
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: rakuna 0.7.5 ruby lib
5
+ # stub: rakuna 1.0.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "rakuna"
9
- s.version = "0.7.5"
9
+ s.version = "1.0.0"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
13
13
  s.authors = ["Chris Olstrom"]
14
- s.date = "2015-08-28"
14
+ s.date = "2015-09-11"
15
15
  s.description = "Rakuna provides mixins to simplify Webmachine development"
16
16
  s.email = "chris@olstrom.com"
17
17
  s.extra_rdoc_files = [
@@ -28,32 +28,27 @@ Gem::Specification.new do |s|
28
28
  "Rakefile",
29
29
  "VERSION",
30
30
  "lib/rakuna.rb",
31
- "lib/rakuna/content.rb",
32
- "lib/rakuna/content/json.rb",
33
- "lib/rakuna/content/validation.rb",
34
- "lib/rakuna/resource.rb",
35
- "lib/rakuna/resource/action.rb",
36
- "lib/rakuna/resource/collection.rb",
37
- "lib/rakuna/resource/item.rb",
38
- "lib/rakuna/storage.rb",
39
- "lib/rakuna/storage/redis.rb",
40
31
  "rakuna.gemspec",
41
32
  "spec/rakuna_spec.rb",
42
33
  "spec/spec_helper.rb"
43
34
  ]
44
35
  s.homepage = "http://github.com/colstrom/rakuna"
45
36
  s.licenses = ["MIT"]
46
- s.rubygems_version = "2.4.8"
37
+ s.rubygems_version = "2.4.5.1"
47
38
  s.summary = "Reusable Mixins for Webmachine-powered Applications"
48
39
 
49
40
  if s.respond_to? :specification_version then
50
41
  s.specification_version = 4
51
42
 
52
43
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
53
- s.add_runtime_dependency(%q<multi_json>, ["~> 1.11"])
54
- s.add_runtime_dependency(%q<json-schema>, ["~> 2.5"])
55
- s.add_runtime_dependency(%q<webmachine>, ["~> 1.4"])
56
- s.add_runtime_dependency(%q<redis>, ["~> 3.2"])
44
+ s.add_runtime_dependency(%q<rakuna-core>, ["~> 1.0"])
45
+ s.add_runtime_dependency(%q<rakuna-content-json>, ["~> 1.0"])
46
+ s.add_runtime_dependency(%q<rakuna-data-redis>, ["~> 1.0"])
47
+ s.add_runtime_dependency(%q<rakuna-integration-github>, ["~> 1.0"])
48
+ s.add_runtime_dependency(%q<rakuna-session-redis>, ["~> 1.0"])
49
+ s.add_runtime_dependency(%q<rakuna-content-signature>, ["~> 1.0"])
50
+ s.add_runtime_dependency(%q<rakuna-authentication-github>, ["~> 1.0"])
51
+ s.add_runtime_dependency(%q<rakuna-validation-json>, ["~> 1.0"])
57
52
  s.add_development_dependency(%q<rspec>, ["~> 3.3"])
58
53
  s.add_development_dependency(%q<yard>, ["~> 0.8"])
59
54
  s.add_development_dependency(%q<bundler>, ["~> 1.10"])
@@ -65,10 +60,14 @@ Gem::Specification.new do |s|
65
60
  s.add_development_dependency(%q<rubocop>, ["~> 0.33"])
66
61
  s.add_development_dependency(%q<inch>, ["~> 0.6"])
67
62
  else
68
- s.add_dependency(%q<multi_json>, ["~> 1.11"])
69
- s.add_dependency(%q<json-schema>, ["~> 2.5"])
70
- s.add_dependency(%q<webmachine>, ["~> 1.4"])
71
- s.add_dependency(%q<redis>, ["~> 3.2"])
63
+ s.add_dependency(%q<rakuna-core>, ["~> 1.0"])
64
+ s.add_dependency(%q<rakuna-content-json>, ["~> 1.0"])
65
+ s.add_dependency(%q<rakuna-data-redis>, ["~> 1.0"])
66
+ s.add_dependency(%q<rakuna-integration-github>, ["~> 1.0"])
67
+ s.add_dependency(%q<rakuna-session-redis>, ["~> 1.0"])
68
+ s.add_dependency(%q<rakuna-content-signature>, ["~> 1.0"])
69
+ s.add_dependency(%q<rakuna-authentication-github>, ["~> 1.0"])
70
+ s.add_dependency(%q<rakuna-validation-json>, ["~> 1.0"])
72
71
  s.add_dependency(%q<rspec>, ["~> 3.3"])
73
72
  s.add_dependency(%q<yard>, ["~> 0.8"])
74
73
  s.add_dependency(%q<bundler>, ["~> 1.10"])
@@ -81,10 +80,14 @@ Gem::Specification.new do |s|
81
80
  s.add_dependency(%q<inch>, ["~> 0.6"])
82
81
  end
83
82
  else
84
- s.add_dependency(%q<multi_json>, ["~> 1.11"])
85
- s.add_dependency(%q<json-schema>, ["~> 2.5"])
86
- s.add_dependency(%q<webmachine>, ["~> 1.4"])
87
- s.add_dependency(%q<redis>, ["~> 3.2"])
83
+ s.add_dependency(%q<rakuna-core>, ["~> 1.0"])
84
+ s.add_dependency(%q<rakuna-content-json>, ["~> 1.0"])
85
+ s.add_dependency(%q<rakuna-data-redis>, ["~> 1.0"])
86
+ s.add_dependency(%q<rakuna-integration-github>, ["~> 1.0"])
87
+ s.add_dependency(%q<rakuna-session-redis>, ["~> 1.0"])
88
+ s.add_dependency(%q<rakuna-content-signature>, ["~> 1.0"])
89
+ s.add_dependency(%q<rakuna-authentication-github>, ["~> 1.0"])
90
+ s.add_dependency(%q<rakuna-validation-json>, ["~> 1.0"])
88
91
  s.add_dependency(%q<rspec>, ["~> 3.3"])
89
92
  s.add_dependency(%q<yard>, ["~> 0.8"])
90
93
  s.add_dependency(%q<bundler>, ["~> 1.10"])
metadata CHANGED
@@ -1,71 +1,127 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rakuna
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.5
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Olstrom
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-28 00:00:00.000000000 Z
11
+ date: 2015-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: multi_json
14
+ name: rakuna-core
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.11'
19
+ version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.11'
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: json-schema
28
+ name: rakuna-content-json
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '2.5'
33
+ version: '1.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '2.5'
40
+ version: '1.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: webmachine
42
+ name: rakuna-data-redis
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.4'
47
+ version: '1.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.4'
54
+ version: '1.0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: redis
56
+ name: rakuna-integration-github
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.2'
61
+ version: '1.0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.2'
68
+ version: '1.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rakuna-session-redis
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rakuna-content-signature
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '1.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rakuna-authentication-github
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '1.0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '1.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rakuna-validation-json
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.0'
69
125
  - !ruby/object:Gem::Dependency
70
126
  name: rspec
71
127
  requirement: !ruby/object:Gem::Requirement
@@ -223,15 +279,6 @@ files:
223
279
  - Rakefile
224
280
  - VERSION
225
281
  - lib/rakuna.rb
226
- - lib/rakuna/content.rb
227
- - lib/rakuna/content/json.rb
228
- - lib/rakuna/content/validation.rb
229
- - lib/rakuna/resource.rb
230
- - lib/rakuna/resource/action.rb
231
- - lib/rakuna/resource/collection.rb
232
- - lib/rakuna/resource/item.rb
233
- - lib/rakuna/storage.rb
234
- - lib/rakuna/storage/redis.rb
235
282
  - rakuna.gemspec
236
283
  - spec/rakuna_spec.rb
237
284
  - spec/spec_helper.rb
@@ -255,7 +302,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
255
302
  version: '0'
256
303
  requirements: []
257
304
  rubyforge_project:
258
- rubygems_version: 2.4.8
305
+ rubygems_version: 2.4.5.1
259
306
  signing_key:
260
307
  specification_version: 4
261
308
  summary: Reusable Mixins for Webmachine-powered Applications
@@ -1,2 +0,0 @@
1
- require 'rakuna/content/json'
2
- require 'rakuna/content/validation'
@@ -1,34 +0,0 @@
1
- require 'multi_json'
2
- require 'json-schema'
3
-
4
- module Rakuna
5
- module Content
6
- # Mixin to add JSON support to resources
7
- module JSON
8
- def content_types_provided
9
- [['application/json', :to_json]]
10
- end
11
-
12
- def content_types_accepted
13
- [['application/json', :from_json]]
14
- end
15
-
16
- def from_json
17
- input
18
- end
19
-
20
- def payload
21
- @payload ||= MultiJson.load request.body.to_s
22
- end
23
-
24
- def to_json
25
- MultiJson.dump output
26
- end
27
-
28
- def valid?
29
- return true unless self.methods.include? validation_schema
30
- @valid ||= ::JSON::Validator.validate validation_schema, request.body.to_s
31
- end
32
- end
33
- end
34
- end
@@ -1,14 +0,0 @@
1
- module Rakuna
2
- module Content
3
- # Mixin to handle payload validation.
4
- module Validation
5
- def malformed_request?
6
- if request.post?
7
- false unless valid?
8
- else
9
- false
10
- end
11
- end
12
- end
13
- end
14
- end
@@ -1,3 +0,0 @@
1
- require 'rakuna/resource/action'
2
- require 'rakuna/resource/collection'
3
- require 'rakuna/resource/item'
@@ -1,17 +0,0 @@
1
- require 'webmachine/resource'
2
-
3
- module Rakuna
4
- module Resource
5
- # Action Resources perform tasks.
6
- class Action < Webmachine::Resource
7
- def allowed_methods
8
- %w(POST)
9
- end
10
-
11
- def process_post
12
- input
13
- true
14
- end
15
- end
16
- end
17
- end
@@ -1,16 +0,0 @@
1
- require 'webmachine/resource'
2
-
3
- module Rakuna
4
- module Resource
5
- # Collection Resources contain multiple resources, and can be added to.
6
- class Collection < Webmachine::Resource
7
- def allowed_methods
8
- %w(HEAD GET POST)
9
- end
10
-
11
- def post_is_create?
12
- true
13
- end
14
- end
15
- end
16
- end
@@ -1,12 +0,0 @@
1
- require 'webmachine/resource'
2
-
3
- module Rakuna
4
- module Resource
5
- # Item Resources allow specific items to be fetched/deleted/replaced.
6
- class Item < Webmachine::Resource
7
- def allowed_methods
8
- %w(HEAD GET PUT DELETE)
9
- end
10
- end
11
- end
12
- end
@@ -1 +0,0 @@
1
- require 'rakuna/storage/redis'
@@ -1,16 +0,0 @@
1
- require 'redis'
2
-
3
- module Rakuna
4
- module Storage
5
- # Mixin to expose Redis to resources
6
- module Redis
7
- def redis_url
8
- @redis_host ||= ENV['REDIS_URL'] || ENV.fetch('REDIS_PORT', 'tcp://127.0.0.1:6379').sub('tcp://', 'redis://')
9
- end
10
-
11
- def redis
12
- @redis ||= ::Redis.new(url: redis_url)
13
- end
14
- end
15
- end
16
- end