diplomat 0.1.9 → 0.1.10
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/.gitignore +1 -0
- data/.travis.yml +1 -1
- data/README.md +2 -2
- data/diplomat.gemspec +1 -1
- data/lib/diplomat.rb +1 -1
- data/lib/diplomat/check.rb +127 -0
- data/lib/diplomat/health.rb +101 -0
- data/lib/diplomat/members.rb +20 -0
- data/lib/diplomat/version.rb +1 -1
- data/spec/check_spec.rb +71 -0
- data/spec/health_spec.rb +150 -0
- data/spec/members_spec.rb +42 -0
- metadata +15 -7
- data/Gemfile.lock +0 -55
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a23e42c39267a3f6bff598a5775ec170787be1bf
|
4
|
+
data.tar.gz: 0778158f0ee8e2ba9210f1fc469b1a1b4fefff49
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 943740a0d4bb06217d8cb55d5a74cb7b72a2575f768f278f606a5aa2390992c7055424566a94043ae4a8bb81bda054ec587ab45419db326e983564d43c5a59f2
|
7
|
+
data.tar.gz: 976565fa6452fd2d96089297d5a312187461d09dedb49258f1856e25599d40ef607e5bdb866678ec745f0ae5c7e2511d2072476f690b8ed007af2df28eb1ce61
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# Diplomat
|
2
|
-
[](http://badge.fury.io/rb/diplomat) [](http://badge.fury.io/rb/diplomat) [](https://travis-ci.org/WeAreFarmGeek/diplomat) [](https://codeclimate.com/github/WeAreFarmGeek/diplomat)
|
3
3
|
### A HTTP Ruby API for [Consul](http://www.consul.io/)
|
4
4
|
|
5
5
|

|
@@ -41,7 +41,7 @@ production:
|
|
41
41
|
|
42
42
|
## Usage
|
43
43
|
|
44
|
-
[The most up to date place to read about the API is here.](http://rubydoc.info/github/
|
44
|
+
[The most up to date place to read about the API is here.](http://rubydoc.info/github/WeAreFarmGeek/diplomat)
|
45
45
|
|
46
46
|
Here's a few examples of how diplomat works:
|
47
47
|
|
data/diplomat.gemspec
CHANGED
@@ -24,6 +24,6 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.add_development_dependency "rspec", "~> 2.14"
|
25
25
|
spec.add_development_dependency "fakes-rspec", "~> 1.0"
|
26
26
|
spec.add_development_dependency "json", "~> 1.8"
|
27
|
-
spec.add_development_dependency "codeclimate-test-reporter"
|
27
|
+
spec.add_development_dependency "codeclimate-test-reporter", "~> 0.3.0"
|
28
28
|
spec.add_dependency "faraday", "~> 0.9"
|
29
29
|
end
|
data/lib/diplomat.rb
CHANGED
@@ -0,0 +1,127 @@
|
|
1
|
+
require 'base64'
|
2
|
+
require 'faraday'
|
3
|
+
|
4
|
+
module Diplomat
|
5
|
+
class Check < Diplomat::RestClient
|
6
|
+
|
7
|
+
# Get registered checks
|
8
|
+
# @return [OpenStruct] all data associated with the service
|
9
|
+
def checks
|
10
|
+
ret = @conn.get "/v1/agent/checks"
|
11
|
+
return JSON.parse(ret.body)
|
12
|
+
end
|
13
|
+
|
14
|
+
# Register a check
|
15
|
+
# @param check_id [String] the unique id of the check
|
16
|
+
# @param name [String] the name
|
17
|
+
# @param notes [String] notes about the check
|
18
|
+
# @param script [String] command to be run for check
|
19
|
+
# @param interval [String] frequency (with units) of the check execution
|
20
|
+
# @param ttl [String] time (with units) to mark a check down
|
21
|
+
# @return [Integer] Status code
|
22
|
+
def register_script check_id, name, notes, script, interval
|
23
|
+
json = JSON.generate(
|
24
|
+
{
|
25
|
+
"ID" => check_id,
|
26
|
+
"Name" => name,
|
27
|
+
"Notes" => notes,
|
28
|
+
"Script" => script,
|
29
|
+
"Interval" => interval
|
30
|
+
}
|
31
|
+
)
|
32
|
+
|
33
|
+
ret = @conn.put do |req|
|
34
|
+
req.url "/v1/agent/check/register"
|
35
|
+
req.body = json
|
36
|
+
end
|
37
|
+
|
38
|
+
return true if ret.status == 200
|
39
|
+
end
|
40
|
+
|
41
|
+
def register_ttl check_id, name, notes, ttl
|
42
|
+
json = JSON.generate(
|
43
|
+
{
|
44
|
+
"ID" => check_id,
|
45
|
+
"Name" => name,
|
46
|
+
"Notes" => notes,
|
47
|
+
"TTL" => ttl,
|
48
|
+
}
|
49
|
+
)
|
50
|
+
|
51
|
+
ret = @conn.put do |req|
|
52
|
+
req.url "/v1/agent/check/register"
|
53
|
+
req.body = json
|
54
|
+
end
|
55
|
+
|
56
|
+
return true if ret.status == 200
|
57
|
+
end
|
58
|
+
|
59
|
+
# Deregister a check
|
60
|
+
# @param check_id [String] the unique id of the check
|
61
|
+
# @return [Integer] Status code
|
62
|
+
def deregister check_id
|
63
|
+
ret = @conn.get "/v1/agent/check/deregister/#{check_id}"
|
64
|
+
return true if ret.status == 200
|
65
|
+
end
|
66
|
+
|
67
|
+
# Pass a check
|
68
|
+
# @param check_id [String] the unique id of the check
|
69
|
+
# @return [Integer] Status code
|
70
|
+
def pass check_id
|
71
|
+
ret = @conn.get "/v1/agent/check/pass/#{check_id}"
|
72
|
+
return true if ret.status == 200
|
73
|
+
end
|
74
|
+
|
75
|
+
# Warn a check
|
76
|
+
# @param check_id [String] the unique id of the check
|
77
|
+
# @return [Integer] Status code
|
78
|
+
def warn check_id
|
79
|
+
ret = @conn.get "/v1/agent/check/warn/#{check_id}"
|
80
|
+
return true if ret.status == 200
|
81
|
+
end
|
82
|
+
|
83
|
+
# Warn a check
|
84
|
+
# @param check_id [String] the unique id of the check
|
85
|
+
# @return [Integer] Status code
|
86
|
+
def fail check_id
|
87
|
+
ret = @conn.get "/v1/agent/check/fail/#{check_id}"
|
88
|
+
return true if ret.status == 200
|
89
|
+
end
|
90
|
+
|
91
|
+
# @note This is sugar, see (#checks)
|
92
|
+
def self.checks
|
93
|
+
Diplomat::Check.new.checks
|
94
|
+
end
|
95
|
+
|
96
|
+
# @note This is sugar, see (#register_script)
|
97
|
+
def self.register_script *args
|
98
|
+
Diplomat::Check.new.register_script *args
|
99
|
+
end
|
100
|
+
|
101
|
+
# @note This is sugar, see (#register_ttl)
|
102
|
+
def self.register_ttl *args
|
103
|
+
Diplomat::Check.new.register_ttl *args
|
104
|
+
end
|
105
|
+
|
106
|
+
# @note This is sugar, see (#deregister)
|
107
|
+
def self.deregister *args
|
108
|
+
Diplomat::Check.new.deregister *args
|
109
|
+
end
|
110
|
+
|
111
|
+
# @note This is sugar, see (#pass)
|
112
|
+
def self.pass *args
|
113
|
+
Diplomat::Check.new.pass *args
|
114
|
+
end
|
115
|
+
|
116
|
+
# @note This is sugar, see (#warn)
|
117
|
+
def self.warn *args
|
118
|
+
Diplomat::Check.new.warn *args
|
119
|
+
end
|
120
|
+
|
121
|
+
# @note This is sugar, see (#fail)
|
122
|
+
def self.fail *args
|
123
|
+
Diplomat::Check.new.fail *args
|
124
|
+
end
|
125
|
+
|
126
|
+
end
|
127
|
+
end
|
@@ -0,0 +1,101 @@
|
|
1
|
+
require 'base64'
|
2
|
+
require 'faraday'
|
3
|
+
|
4
|
+
module Diplomat
|
5
|
+
class Health < Diplomat::RestClient
|
6
|
+
|
7
|
+
# Get node health
|
8
|
+
# @param n [String] the node
|
9
|
+
# @return [OpenStruct] all data associated with the node
|
10
|
+
def node n
|
11
|
+
ret = @conn.get "/v1/health/node/#{n}"
|
12
|
+
return JSON.parse(ret.body)
|
13
|
+
end
|
14
|
+
|
15
|
+
# Get service checks
|
16
|
+
# @param s [String] the service
|
17
|
+
# @return [OpenStruct] all data associated with the node
|
18
|
+
def checks s
|
19
|
+
ret = @conn.get "/v1/health/checks/#{s}"
|
20
|
+
return JSON.parse(ret.body)
|
21
|
+
end
|
22
|
+
|
23
|
+
# Get service health
|
24
|
+
# @param s [String] the service
|
25
|
+
# @return [OpenStruct] all data associated with the node
|
26
|
+
def service s
|
27
|
+
ret = @conn.get "/v1/health/service/#{s}"
|
28
|
+
return JSON.parse(ret.body)
|
29
|
+
end
|
30
|
+
|
31
|
+
# Get service health
|
32
|
+
# @param s [String] the state ("unknown", "passing", "warning", or "critical")
|
33
|
+
# @return [OpenStruct] all data associated with the node
|
34
|
+
def state s
|
35
|
+
ret = @conn.get "/v1/health/state/#{s}"
|
36
|
+
return JSON.parse(ret.body)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Convenience method to get services in unknown state
|
40
|
+
def unknown
|
41
|
+
state("unknown")
|
42
|
+
end
|
43
|
+
|
44
|
+
# Convenience method to get services in passing state
|
45
|
+
def passing
|
46
|
+
state("passing")
|
47
|
+
end
|
48
|
+
|
49
|
+
# Convenience method to get services in warning state
|
50
|
+
def warning
|
51
|
+
state("warning")
|
52
|
+
end
|
53
|
+
|
54
|
+
# Convenience method to get services in critical state
|
55
|
+
def critical
|
56
|
+
state("critical")
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
# @note This is sugar, see (#node)
|
61
|
+
def self.node *args
|
62
|
+
Diplomat::Health.new.node *args
|
63
|
+
end
|
64
|
+
|
65
|
+
# @note This is sugar, see (#checks)
|
66
|
+
def self.checks *args
|
67
|
+
Diplomat::Health.new.checks *args
|
68
|
+
end
|
69
|
+
|
70
|
+
# @note This is sugar, see (#service)
|
71
|
+
def self.service *args
|
72
|
+
Diplomat::Health.new.service *args
|
73
|
+
end
|
74
|
+
|
75
|
+
# @note This is sugar, see (#state)
|
76
|
+
def self.state *args
|
77
|
+
Diplomat::Health.new.state *args
|
78
|
+
end
|
79
|
+
|
80
|
+
# @note This is sugar, see (#unknown)
|
81
|
+
def self.unknown
|
82
|
+
Diplomat::Health.new.unknown
|
83
|
+
end
|
84
|
+
|
85
|
+
# @note This is sugar, see (#passing)
|
86
|
+
def self.passing
|
87
|
+
Diplomat::Health.new.passing
|
88
|
+
end
|
89
|
+
|
90
|
+
# @note This is sugar, see (#warning)
|
91
|
+
def self.warning
|
92
|
+
Diplomat::Health.new.warning
|
93
|
+
end
|
94
|
+
|
95
|
+
# @note This is sugar, see (#critical)
|
96
|
+
def self.critical
|
97
|
+
Diplomat::Health.new.critical
|
98
|
+
end
|
99
|
+
|
100
|
+
end
|
101
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'base64'
|
2
|
+
require 'faraday'
|
3
|
+
|
4
|
+
module Diplomat
|
5
|
+
class Members < Diplomat::RestClient
|
6
|
+
|
7
|
+
# Get all members
|
8
|
+
# @return [OpenStruct] all data associated with the service
|
9
|
+
def get
|
10
|
+
ret = @conn.get "/v1/agent/members"
|
11
|
+
return JSON.parse(ret.body)
|
12
|
+
end
|
13
|
+
|
14
|
+
# @note This is sugar, see (#get)
|
15
|
+
def self.get
|
16
|
+
Diplomat::Members.new.get
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
data/lib/diplomat/version.rb
CHANGED
data/spec/check_spec.rb
ADDED
@@ -0,0 +1,71 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'json'
|
3
|
+
require 'base64'
|
4
|
+
|
5
|
+
describe Diplomat::Check do
|
6
|
+
|
7
|
+
let(:faraday) { fake }
|
8
|
+
|
9
|
+
context "check" do
|
10
|
+
|
11
|
+
it "checks" do
|
12
|
+
json = JSON.generate(
|
13
|
+
{
|
14
|
+
"service:redis"=> {
|
15
|
+
"Node"=>"foobar",
|
16
|
+
"CheckID"=>"service:redis",
|
17
|
+
"Name"=>"Service 'redis' check",
|
18
|
+
"Status"=>"passing",
|
19
|
+
"Notes"=>"",
|
20
|
+
"Output"=>"",
|
21
|
+
"ServiceID"=>"redis",
|
22
|
+
"ServiceName"=>"redis"}
|
23
|
+
}
|
24
|
+
)
|
25
|
+
|
26
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: json }))
|
27
|
+
|
28
|
+
check = Diplomat::Check.new(faraday)
|
29
|
+
|
30
|
+
expect(check.checks["service:redis"]["Node"]).to eq("foobar")
|
31
|
+
end
|
32
|
+
|
33
|
+
it "register_script" do
|
34
|
+
faraday.stub(:put).and_return(OpenStruct.new({ body: '', status: 200 }))
|
35
|
+
check = Diplomat::Check.new(faraday)
|
36
|
+
expect(check.register_script("foobar-1", "Foobar", "Foobar test", "/script/test", "10s")).to eq(true)
|
37
|
+
end
|
38
|
+
|
39
|
+
it "register_ttl" do
|
40
|
+
faraday.stub(:put).and_return(OpenStruct.new({ body: '', status: 200 }))
|
41
|
+
check = Diplomat::Check.new(faraday)
|
42
|
+
expect(check.register_ttl("foobar-1", "Foobar", "Foobar test", "15s")).to eq(true)
|
43
|
+
end
|
44
|
+
|
45
|
+
it "deregister" do
|
46
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: '', status: 200 }))
|
47
|
+
check = Diplomat::Check.new(faraday)
|
48
|
+
expect(check.deregister("foobar-1")).to eq(true)
|
49
|
+
end
|
50
|
+
|
51
|
+
it "pass" do
|
52
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: '', status: 200 }))
|
53
|
+
check = Diplomat::Check.new(faraday)
|
54
|
+
expect(check.pass("foobar-1")).to eq(true)
|
55
|
+
end
|
56
|
+
|
57
|
+
it "warn" do
|
58
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: '', status: 200 }))
|
59
|
+
check = Diplomat::Check.new(faraday)
|
60
|
+
expect(check.warn("foobar-1")).to eq(true)
|
61
|
+
end
|
62
|
+
|
63
|
+
it "fail" do
|
64
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: '', status: 200 }))
|
65
|
+
check = Diplomat::Check.new(faraday)
|
66
|
+
expect(check.fail("foobar-1")).to eq(true)
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
|
71
|
+
end
|
data/spec/health_spec.rb
ADDED
@@ -0,0 +1,150 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'json'
|
3
|
+
require 'base64'
|
4
|
+
|
5
|
+
describe Diplomat::Health do
|
6
|
+
|
7
|
+
let(:faraday) { fake }
|
8
|
+
|
9
|
+
context "health" do
|
10
|
+
|
11
|
+
it "node" do
|
12
|
+
json = <<EOF
|
13
|
+
[
|
14
|
+
{
|
15
|
+
"Node": "foobar",
|
16
|
+
"CheckID": "serfHealth",
|
17
|
+
"Name": "Serf Health Status",
|
18
|
+
"Status": "passing",
|
19
|
+
"Notes": "",
|
20
|
+
"Output": "",
|
21
|
+
"ServiceID": "",
|
22
|
+
"ServiceName": ""
|
23
|
+
},
|
24
|
+
{
|
25
|
+
"Node": "foobar",
|
26
|
+
"CheckID": "service:redis",
|
27
|
+
"Name": "Service 'redis' check",
|
28
|
+
"Status": "passing",
|
29
|
+
"Notes": "",
|
30
|
+
"Output": "",
|
31
|
+
"ServiceID": "redis",
|
32
|
+
"ServiceName": "redis"
|
33
|
+
}
|
34
|
+
]
|
35
|
+
EOF
|
36
|
+
|
37
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: json }))
|
38
|
+
|
39
|
+
health = Diplomat::Health.new(faraday)
|
40
|
+
|
41
|
+
expect(health.node("foobar")[0]["Node"]).to eq("foobar")
|
42
|
+
end
|
43
|
+
|
44
|
+
it "checks" do
|
45
|
+
json = <<EOF
|
46
|
+
[
|
47
|
+
{
|
48
|
+
"Node": "foobar",
|
49
|
+
"CheckID": "service:redis",
|
50
|
+
"Name": "Service 'redis' check",
|
51
|
+
"Status": "passing",
|
52
|
+
"Notes": "",
|
53
|
+
"Output": "",
|
54
|
+
"ServiceID": "redis",
|
55
|
+
"ServiceName": "redis"
|
56
|
+
}
|
57
|
+
]
|
58
|
+
EOF
|
59
|
+
|
60
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: json }))
|
61
|
+
|
62
|
+
health = Diplomat::Health.new(faraday)
|
63
|
+
|
64
|
+
expect(health.checks("foobar")[0]["Node"]).to eq("foobar")
|
65
|
+
end
|
66
|
+
|
67
|
+
it "service" do
|
68
|
+
json = <<EOF
|
69
|
+
[
|
70
|
+
{
|
71
|
+
"Node": {
|
72
|
+
"Node": "foobar",
|
73
|
+
"Address": "10.1.10.12"
|
74
|
+
},
|
75
|
+
"Service": {
|
76
|
+
"ID": "redis",
|
77
|
+
"Service": "redis",
|
78
|
+
"Tags": null,
|
79
|
+
"Port": 8000
|
80
|
+
},
|
81
|
+
"Checks": [
|
82
|
+
{
|
83
|
+
"Node": "foobar",
|
84
|
+
"CheckID": "service:redis",
|
85
|
+
"Name": "Service 'redis' check",
|
86
|
+
"Status": "passing",
|
87
|
+
"Notes": "",
|
88
|
+
"Output": "",
|
89
|
+
"ServiceID": "redis",
|
90
|
+
"ServiceName": "redis"
|
91
|
+
},
|
92
|
+
{
|
93
|
+
"Node": "foobar",
|
94
|
+
"CheckID": "serfHealth",
|
95
|
+
"Name": "Serf Health Status",
|
96
|
+
"Status": "passing",
|
97
|
+
"Notes": "",
|
98
|
+
"Output": "",
|
99
|
+
"ServiceID": "",
|
100
|
+
"ServiceName": ""
|
101
|
+
}
|
102
|
+
]
|
103
|
+
}
|
104
|
+
]
|
105
|
+
EOF
|
106
|
+
|
107
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: json }))
|
108
|
+
|
109
|
+
health = Diplomat::Health.new(faraday)
|
110
|
+
|
111
|
+
expect(health.service("foobar")[0]["Node"]["Node"]).to eq("foobar")
|
112
|
+
end
|
113
|
+
|
114
|
+
it "state" do
|
115
|
+
json = <<EOF
|
116
|
+
[
|
117
|
+
{
|
118
|
+
"Node": "foobar",
|
119
|
+
"CheckID": "serfHealth",
|
120
|
+
"Name": "Serf Health Status",
|
121
|
+
"Status": "passing",
|
122
|
+
"Notes": "",
|
123
|
+
"Output": "",
|
124
|
+
"ServiceID": "",
|
125
|
+
"ServiceName": ""
|
126
|
+
},
|
127
|
+
{
|
128
|
+
"Node": "foobar",
|
129
|
+
"CheckID": "service:redis",
|
130
|
+
"Name": "Service 'redis' check",
|
131
|
+
"Status": "passing",
|
132
|
+
"Notes": "",
|
133
|
+
"Output": "",
|
134
|
+
"ServiceID": "redis",
|
135
|
+
"ServiceName": "redis"
|
136
|
+
}
|
137
|
+
]
|
138
|
+
EOF
|
139
|
+
|
140
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: json }))
|
141
|
+
|
142
|
+
health = Diplomat::Health.new(faraday)
|
143
|
+
|
144
|
+
expect(health.state("foobar")[0]["Node"]).to eq("foobar")
|
145
|
+
end
|
146
|
+
|
147
|
+
|
148
|
+
end
|
149
|
+
|
150
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'json'
|
3
|
+
require 'base64'
|
4
|
+
|
5
|
+
describe Diplomat::Members do
|
6
|
+
|
7
|
+
let(:faraday) { fake }
|
8
|
+
|
9
|
+
context "member" do
|
10
|
+
|
11
|
+
it "GET" do
|
12
|
+
json = JSON.generate(
|
13
|
+
[{
|
14
|
+
"Name" => "foobar",
|
15
|
+
"Addr" => "10.1.10.12",
|
16
|
+
"Port" => 8301,
|
17
|
+
"Tags" => {
|
18
|
+
"bootstrap" => "1",
|
19
|
+
"dc" => "dc1",
|
20
|
+
"port" => 8300,
|
21
|
+
"role" => "consul",
|
22
|
+
},
|
23
|
+
"Status" => 1,
|
24
|
+
"ProtocolMin" => 1,
|
25
|
+
"ProtocolMax" => 2,
|
26
|
+
"ProtocolCur" => 2,
|
27
|
+
"DelegateMin" => 1,
|
28
|
+
"DelegateMax" => 3,
|
29
|
+
"DelegateCur" => 3
|
30
|
+
}]
|
31
|
+
)
|
32
|
+
|
33
|
+
faraday.stub(:get).and_return(OpenStruct.new({ body: json }))
|
34
|
+
|
35
|
+
members = Diplomat::Members.new(faraday)
|
36
|
+
|
37
|
+
expect(members.get[0]["Name"]).to eq("foobar")
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: diplomat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Hamelink
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-05-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -98,16 +98,16 @@ dependencies:
|
|
98
98
|
name: codeclimate-test-reporter
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
103
|
+
version: 0.3.0
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - "
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
110
|
+
version: 0.3.0
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: faraday
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -133,17 +133,22 @@ files:
|
|
133
133
|
- ".rspec"
|
134
134
|
- ".travis.yml"
|
135
135
|
- Gemfile
|
136
|
-
- Gemfile.lock
|
137
136
|
- LICENSE
|
138
137
|
- README.md
|
139
138
|
- Rakefile
|
140
139
|
- diplomat.gemspec
|
141
140
|
- lib/diplomat.rb
|
141
|
+
- lib/diplomat/check.rb
|
142
|
+
- lib/diplomat/health.rb
|
142
143
|
- lib/diplomat/kv.rb
|
144
|
+
- lib/diplomat/members.rb
|
143
145
|
- lib/diplomat/rest_client.rb
|
144
146
|
- lib/diplomat/service.rb
|
145
147
|
- lib/diplomat/version.rb
|
148
|
+
- spec/check_spec.rb
|
149
|
+
- spec/health_spec.rb
|
146
150
|
- spec/kv_spec.rb
|
151
|
+
- spec/members_spec.rb
|
147
152
|
- spec/spec_helper.rb
|
148
153
|
homepage: https://github.com/johnhamelink/diplomat
|
149
154
|
licenses:
|
@@ -170,6 +175,9 @@ signing_key:
|
|
170
175
|
specification_version: 4
|
171
176
|
summary: Diplomat is a simple wrapper for Consul
|
172
177
|
test_files:
|
178
|
+
- spec/check_spec.rb
|
179
|
+
- spec/health_spec.rb
|
173
180
|
- spec/kv_spec.rb
|
181
|
+
- spec/members_spec.rb
|
174
182
|
- spec/spec_helper.rb
|
175
183
|
has_rdoc:
|
data/Gemfile.lock
DELETED
@@ -1,55 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
diplomat (0.1.7)
|
5
|
-
faraday (~> 0.9)
|
6
|
-
|
7
|
-
GEM
|
8
|
-
remote: https://rubygems.org/
|
9
|
-
specs:
|
10
|
-
codeclimate-test-reporter (0.3.0)
|
11
|
-
simplecov (>= 0.7.1, < 1.0.0)
|
12
|
-
coderay (1.1.0)
|
13
|
-
diff-lcs (1.2.5)
|
14
|
-
docile (1.1.3)
|
15
|
-
fakes (1.1.4)
|
16
|
-
fakes-rspec (1.0.5)
|
17
|
-
fakes
|
18
|
-
faraday (0.9.0)
|
19
|
-
multipart-post (>= 1.2, < 3)
|
20
|
-
json (1.8.1)
|
21
|
-
method_source (0.8.2)
|
22
|
-
multi_json (1.9.2)
|
23
|
-
multipart-post (2.0.0)
|
24
|
-
pry (0.9.12.6)
|
25
|
-
coderay (~> 1.0)
|
26
|
-
method_source (~> 0.8)
|
27
|
-
slop (~> 3.4)
|
28
|
-
rake (10.3.1)
|
29
|
-
rspec (2.14.1)
|
30
|
-
rspec-core (~> 2.14.0)
|
31
|
-
rspec-expectations (~> 2.14.0)
|
32
|
-
rspec-mocks (~> 2.14.0)
|
33
|
-
rspec-core (2.14.8)
|
34
|
-
rspec-expectations (2.14.5)
|
35
|
-
diff-lcs (>= 1.1.3, < 2.0)
|
36
|
-
rspec-mocks (2.14.6)
|
37
|
-
simplecov (0.8.2)
|
38
|
-
docile (~> 1.1.0)
|
39
|
-
multi_json
|
40
|
-
simplecov-html (~> 0.8.0)
|
41
|
-
simplecov-html (0.8.0)
|
42
|
-
slop (3.4.7)
|
43
|
-
|
44
|
-
PLATFORMS
|
45
|
-
ruby
|
46
|
-
|
47
|
-
DEPENDENCIES
|
48
|
-
bundler (~> 1.3)
|
49
|
-
codeclimate-test-reporter
|
50
|
-
diplomat!
|
51
|
-
fakes-rspec (~> 1.0)
|
52
|
-
json (~> 1.8)
|
53
|
-
pry (~> 0.9)
|
54
|
-
rake (~> 10.3)
|
55
|
-
rspec (~> 2.14)
|