embulk-input-zendesk 0.1.8 → 0.1.9
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/CHANGELOG.md +3 -0
- data/embulk-input-zendesk.gemspec +1 -1
- data/lib/embulk/input/zendesk/client.rb +14 -0
- data/test/embulk/input/zendesk/test_client.rb +14 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f81eb6b1d20e4c6fda87abed25edfb355d980278
|
4
|
+
data.tar.gz: 77f7e79b4b7ac4c962874854863fc7a2ee857abf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6bfd6c462ad3b628a923025c8f6d406b0a009990ecc8fba791703be61579d6b079b969858f050eb60ead3912fc9405d3a19b86e0fca302217b95fa58dfeebed0
|
7
|
+
data.tar.gz: bc93fc9b9340bc5555668e083e9516aee5738b23f4ab65e94d3e1eb6fc6f047d571d8916ed65b3dc5ed18b64c5decb839dcd5004c6eee827d496b4c6a982e3bd
|
data/CHANGELOG.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
Gem::Specification.new do |spec|
|
3
3
|
spec.name = "embulk-input-zendesk"
|
4
|
-
spec.version = "0.1.
|
4
|
+
spec.version = "0.1.9"
|
5
5
|
spec.authors = ["uu59", "muga", "sakama"]
|
6
6
|
spec.summary = "Zendesk input plugin for Embulk"
|
7
7
|
spec.description = "Loads records from Zendesk."
|
@@ -319,6 +319,20 @@ module Embulk
|
|
319
319
|
# 404 would be returned e.g. ticket comments are empty (on fetch_subresource method)
|
320
320
|
when 409
|
321
321
|
raise "[#{status_code}] temporally failure."
|
322
|
+
when 422
|
323
|
+
begin
|
324
|
+
payload = JSON.parse(body)
|
325
|
+
if payload["description"].start_with?("Too recent start_time.")
|
326
|
+
# That means "No records from start_time". We can recognize it same as 200.
|
327
|
+
return
|
328
|
+
end
|
329
|
+
rescue
|
330
|
+
# Failed to parse response.body as JSON
|
331
|
+
raise Embulk::ConfigError.new("[#{status_code}] #{body}")
|
332
|
+
end
|
333
|
+
|
334
|
+
# 422 and it isn't "Too recent start_time"
|
335
|
+
raise Embulk::ConfigError.new("[#{status_code}] #{body}")
|
322
336
|
when 429
|
323
337
|
# rate limit
|
324
338
|
retry_after = headers["Retry-After"]
|
@@ -418,6 +418,20 @@ module Embulk
|
|
418
418
|
end
|
419
419
|
end
|
420
420
|
|
421
|
+
test "422 with Too recent start_time" do
|
422
|
+
stub_response(422, [], '{"error":"InvalidValue","description":"Too recent start_time. Use a start_time older than 5 minutes"}')
|
423
|
+
assert_nothing_raised do
|
424
|
+
client.tickets(&proc{})
|
425
|
+
end
|
426
|
+
end
|
427
|
+
|
428
|
+
test "422" do
|
429
|
+
stub_response(422)
|
430
|
+
assert_raise(ConfigError) do
|
431
|
+
client.tickets(&proc{})
|
432
|
+
end
|
433
|
+
end
|
434
|
+
|
421
435
|
test "429" do
|
422
436
|
after = "123"
|
423
437
|
stub_response(429, ["Retry-After: #{after}"])
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embulk-input-zendesk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- uu59
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2016-
|
13
|
+
date: 2016-08-26 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|