cronitor 1.1.4 → 1.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 45f4d1fee0102bb736fe0034bccfef77b137302e
4
- data.tar.gz: 66ee857b37e9ebb1a87f0e4f9ba81bb47c633cca
3
+ metadata.gz: 4c234da3ffd469dc74eefc0ee50a369c5c3b967c
4
+ data.tar.gz: c89a778d71c9b27463777699eed0b2fc21a2cd12
5
5
  SHA512:
6
- metadata.gz: 5ae75d0eba8956a41e612571dfdfb3acac7496274f3fa4007e1f90c25d57323ed5960784ca7f5d23bbec62c558b38da0543ade1048675b0a42e4621e1a2b67a3
7
- data.tar.gz: ece447cea65c579d744bc2104e5eb703531867d02dfa0c7e90569118dbdc760b36f618ecc9b1c6403f9777bb7615c3e7a8e5da51a2cf58bf3d677bcc639c59ed
6
+ metadata.gz: 958007209685433235f3387c29cddbdb6e976c27cf1539bfa5ce2e7fdd58d0e9e8057c6089ba28635005368ae658cb96370a51c9863f338671aff78860f0d38e
7
+ data.tar.gz: 64db58946e2287628ba325387cccb469a07d7bdd6bffbf965b69111f8c5f7dcd172d5dec0a61588f4e5d94b29c823c23a8394ee89563bb5770553be82b09337e
data/lib/cronitor.rb CHANGED
@@ -4,13 +4,10 @@ require 'net/http'
4
4
  require 'unirest'
5
5
  require 'hashie'
6
6
 
7
- Unirest.default_header 'Accept', 'application/json'
8
- Unirest.default_header 'Content-Type', 'application/json'
9
-
10
7
  class Cronitor
11
8
  attr_accessor :token, :opts, :code
12
- API_URL = 'https://cronitor.io/v1'
13
- PING_URL = 'https://cronitor.link'
9
+ API_URL = 'https://cronitor.io/v1'.freeze
10
+ PING_URL = 'https://cronitor.link'.freeze
14
11
 
15
12
  def initialize(token: nil, opts: {}, code: nil)
16
13
  @token = token
@@ -18,7 +15,7 @@ class Cronitor
18
15
  @code = code
19
16
 
20
17
  if @token.nil? && @code.nil?
21
- fail(
18
+ raise(
22
19
  Cronitor::Error,
23
20
  'Either a Cronitor API token or an existing monitor code must be ' \
24
21
  'provided'
@@ -37,6 +34,7 @@ class Cronitor
37
34
  def create
38
35
  response = Unirest.post(
39
36
  "#{API_URL}/monitors",
37
+ headers: default_headers.merge('Content-Type' => 'application/json'),
40
38
  auth: { user: token },
41
39
  parameters: opts.to_json
42
40
  )
@@ -47,6 +45,7 @@ class Cronitor
47
45
  def exists?(name)
48
46
  response = Unirest.get(
49
47
  "#{API_URL}/monitors/#{URI.escape(name).gsub('[', '%5B').gsub(']', '%5D')}",
48
+ headers: default_headers,
50
49
  auth: { user: token }
51
50
  )
52
51
  return false unless response.code == 200
@@ -58,7 +57,7 @@ class Cronitor
58
57
 
59
58
  def ping(type, msg = nil)
60
59
  url = "#{PING_URL}/#{code}/#{type}"
61
- url += "?msg=#{URI.escape msg}" if type == 'fail' && !msg.nil?
60
+ url += "?msg=#{URI.escape msg}" if %w(run complete fail).include?(type) && !msg.nil?
62
61
 
63
62
  response = Unirest.get url
64
63
  valid? response
@@ -79,7 +78,7 @@ class Cronitor
79
78
  return true if [200, 201].include? response.code
80
79
  server_error? response
81
80
 
82
- fail Cronitor::Error, error_msg(response.body)
81
+ raise Cronitor::Error, error_msg(response.body)
83
82
  end
84
83
 
85
84
  def error_msg(body, msg = [])
@@ -99,9 +98,13 @@ class Cronitor
99
98
  def server_error?(response)
100
99
  return unless [301, 302, 404, 500, 502, 503, 504].include? response.code
101
100
 
102
- fail(
101
+ raise(
103
102
  Cronitor::Error,
104
103
  "Something else has gone awry. HTTP status: #{response.code}"
105
104
  )
106
105
  end
106
+
107
+ def default_headers
108
+ { 'Accept' => 'application/json' }
109
+ end
107
110
  end
@@ -1,3 +1,3 @@
1
1
  class Cronitor
2
- VERSION = '1.1.4'
2
+ VERSION = '1.1.5'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cronitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.4
4
+ version: 1.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Byrnes
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-10-26 00:00:00.000000000 Z
11
+ date: 2017-07-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: unirest
@@ -176,7 +176,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
176
176
  version: '0'
177
177
  requirements: []
178
178
  rubyforge_project:
179
- rubygems_version: 2.4.6
179
+ rubygems_version: 2.6.6
180
180
  signing_key:
181
181
  specification_version: 4
182
182
  summary: An interface for the Cronitor API