record_store 8.0.6 → 8.0.8
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/.github/workflows/ci.yml +1 -1
- data/.ruby-version +1 -1
- data/.travis.yml +1 -1
- data/CHANGELOG.md +6 -0
- data/lib/record_store/provider/cloudflare/client.rb +6 -9
- data/lib/record_store/provider.rb +10 -1
- data/lib/record_store/version.rb +1 -1
- data/record_store.gemspec +4 -4
- metadata +9 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6841eb222738f6dd2c59e20db6f7e6b9f6e8217c402a638e6a48d6fa85f637fa
|
4
|
+
data.tar.gz: 220a069f8f2e16e9ef2d4768d9a88c52790e7b8d954c0b1fbefa32687824cc4f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ddcd7243281f211c6381ce1cb980b190ea4a5263ee20772fe73f327d639909b8a747dea513f97dfd274e43aefc5c73f05aa1d126af122c2fcd56edfe00ea5da4
|
7
|
+
data.tar.gz: de7a759bde4075262f25c4ae4c3e841735e613e48dbfe7d4b9ab65b0a14da203e5c85c199c279a03017d0f3d3f0afcf052d759b964072324d5ca177c542f4c9a
|
data/.github/workflows/ci.yml
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.
|
1
|
+
3.4.4
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -64,16 +64,13 @@ module Cloudflare
|
|
64
64
|
|
65
65
|
begin
|
66
66
|
response = conn.request(request)
|
67
|
-
|
68
|
-
|
67
|
+
response.value
|
68
|
+
response
|
69
|
+
rescue Net::HTTPRetriableError, Net::HTTPFatalError => e
|
70
|
+
raise RecordStore::Provider::RetriableError, e.message
|
71
|
+
rescue Net::HTTPClientException, Net::HTTPError => e
|
72
|
+
raise RecordStore::Provider::Error, e.message
|
69
73
|
end
|
70
|
-
|
71
|
-
if response.code.to_i >= 300
|
72
|
-
raise RecordStore::Provider::Error,
|
73
|
-
"HTTP response code: #{response.code} - #{response.message}; #{response.body}"
|
74
|
-
end
|
75
|
-
|
76
|
-
response
|
77
74
|
end
|
78
75
|
end
|
79
76
|
|
@@ -6,6 +6,8 @@ module RecordStore
|
|
6
6
|
|
7
7
|
class UnparseableBodyError < Error; end
|
8
8
|
|
9
|
+
class RetriableError < Error; end
|
10
|
+
|
9
11
|
class << self
|
10
12
|
def provider_for(object)
|
11
13
|
lookup_error = false
|
@@ -145,6 +147,7 @@ module RecordStore
|
|
145
147
|
max_timeouts: 5,
|
146
148
|
max_conn_resets: 5,
|
147
149
|
max_retries: 5,
|
150
|
+
max_server_errors: 3,
|
148
151
|
delay: 1,
|
149
152
|
backoff_multiplier: 2,
|
150
153
|
max_backoff: 10
|
@@ -158,7 +161,7 @@ module RecordStore
|
|
158
161
|
|
159
162
|
loop do
|
160
163
|
return yield
|
161
|
-
rescue UnparseableBodyError
|
164
|
+
rescue RecordStore::Provider::UnparseableBodyError
|
162
165
|
raise if max_retries <= 0
|
163
166
|
|
164
167
|
max_retries -= 1
|
@@ -176,6 +179,12 @@ module RecordStore
|
|
176
179
|
max_conn_resets -= 1
|
177
180
|
|
178
181
|
waiter.wait
|
182
|
+
rescue RecordStore::Provider::RetriableError
|
183
|
+
raise if max_server_errors <= 0
|
184
|
+
|
185
|
+
max_server_errors -= 1
|
186
|
+
|
187
|
+
waiter.wait(message: 'Waiting to retry after server error')
|
179
188
|
end
|
180
189
|
end
|
181
190
|
end
|
data/lib/record_store/version.rb
CHANGED
data/record_store.gemspec
CHANGED
@@ -29,15 +29,15 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.add_runtime_dependency 'activemodel', '>= 4.2'
|
30
30
|
spec.add_runtime_dependency 'activesupport', '>= 4.2'
|
31
31
|
spec.add_runtime_dependency 'ejson'
|
32
|
-
spec.add_runtime_dependency 'thor', '>=
|
32
|
+
spec.add_runtime_dependency 'thor', '>= 1.4.0'
|
33
33
|
|
34
|
-
spec.add_runtime_dependency 'dnsimple', '>= 4.4', '<
|
34
|
+
spec.add_runtime_dependency 'dnsimple', '>= 4.4', '< 10.1'
|
35
35
|
spec.add_runtime_dependency 'fog-dynect', '>= 0.4', '< 0.6'
|
36
36
|
spec.add_runtime_dependency 'fog-json'
|
37
37
|
spec.add_runtime_dependency 'fog-xml'
|
38
38
|
spec.add_runtime_dependency 'google-cloud-dns', '>= 0.31', '< 2.0'
|
39
39
|
spec.add_runtime_dependency 'ns1'
|
40
|
-
spec.add_runtime_dependency 'oci', '>= 2.14', '< 2.
|
40
|
+
spec.add_runtime_dependency 'oci', '>= 2.14', '< 2.23'
|
41
41
|
spec.add_runtime_dependency 'ruby-limiter', '>= 1.0.1', '< 3'
|
42
42
|
|
43
43
|
spec.add_development_dependency 'bundler'
|
@@ -46,7 +46,7 @@ Gem::Specification.new do |spec|
|
|
46
46
|
spec.add_development_dependency 'mocha'
|
47
47
|
spec.add_development_dependency 'pry'
|
48
48
|
spec.add_development_dependency 'rake'
|
49
|
-
spec.add_development_dependency 'rubocop', '~> 1.
|
49
|
+
spec.add_development_dependency 'rubocop', '~> 1.78.0'
|
50
50
|
spec.add_development_dependency 'rubocop-shopify', '~> 2.15.1'
|
51
51
|
spec.add_development_dependency 'vcr'
|
52
52
|
spec.add_development_dependency 'webmock'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: record_store
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 8.0.
|
4
|
+
version: 8.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Willem van Bergen
|
8
8
|
- Emil Stolarsky
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemodel
|
@@ -57,9 +57,6 @@ dependencies:
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 0.20.3
|
62
|
-
- - "<"
|
63
60
|
- !ruby/object:Gem::Version
|
64
61
|
version: 1.4.0
|
65
62
|
type: :runtime
|
@@ -67,9 +64,6 @@ dependencies:
|
|
67
64
|
version_requirements: !ruby/object:Gem::Requirement
|
68
65
|
requirements:
|
69
66
|
- - ">="
|
70
|
-
- !ruby/object:Gem::Version
|
71
|
-
version: 0.20.3
|
72
|
-
- - "<"
|
73
67
|
- !ruby/object:Gem::Version
|
74
68
|
version: 1.4.0
|
75
69
|
- !ruby/object:Gem::Dependency
|
@@ -81,7 +75,7 @@ dependencies:
|
|
81
75
|
version: '4.4'
|
82
76
|
- - "<"
|
83
77
|
- !ruby/object:Gem::Version
|
84
|
-
version: '
|
78
|
+
version: '10.1'
|
85
79
|
type: :runtime
|
86
80
|
prerelease: false
|
87
81
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -91,7 +85,7 @@ dependencies:
|
|
91
85
|
version: '4.4'
|
92
86
|
- - "<"
|
93
87
|
- !ruby/object:Gem::Version
|
94
|
-
version: '
|
88
|
+
version: '10.1'
|
95
89
|
- !ruby/object:Gem::Dependency
|
96
90
|
name: fog-dynect
|
97
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -183,7 +177,7 @@ dependencies:
|
|
183
177
|
version: '2.14'
|
184
178
|
- - "<"
|
185
179
|
- !ruby/object:Gem::Version
|
186
|
-
version: '2.
|
180
|
+
version: '2.23'
|
187
181
|
type: :runtime
|
188
182
|
prerelease: false
|
189
183
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -193,7 +187,7 @@ dependencies:
|
|
193
187
|
version: '2.14'
|
194
188
|
- - "<"
|
195
189
|
- !ruby/object:Gem::Version
|
196
|
-
version: '2.
|
190
|
+
version: '2.23'
|
197
191
|
- !ruby/object:Gem::Dependency
|
198
192
|
name: ruby-limiter
|
199
193
|
requirement: !ruby/object:Gem::Requirement
|
@@ -304,14 +298,14 @@ dependencies:
|
|
304
298
|
requirements:
|
305
299
|
- - "~>"
|
306
300
|
- !ruby/object:Gem::Version
|
307
|
-
version: 1.
|
301
|
+
version: 1.78.0
|
308
302
|
type: :development
|
309
303
|
prerelease: false
|
310
304
|
version_requirements: !ruby/object:Gem::Requirement
|
311
305
|
requirements:
|
312
306
|
- - "~>"
|
313
307
|
- !ruby/object:Gem::Version
|
314
|
-
version: 1.
|
308
|
+
version: 1.78.0
|
315
309
|
- !ruby/object:Gem::Dependency
|
316
310
|
name: rubocop-shopify
|
317
311
|
requirement: !ruby/object:Gem::Requirement
|
@@ -453,7 +447,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
453
447
|
- !ruby/object:Gem::Version
|
454
448
|
version: '0'
|
455
449
|
requirements: []
|
456
|
-
rubygems_version: 3.6.
|
450
|
+
rubygems_version: 3.6.9
|
457
451
|
specification_version: 4
|
458
452
|
summary: Manage DNS using git
|
459
453
|
test_files: []
|