diplomat 2.4.3 → 2.6.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 +4 -4
- data/README.md +3 -2
- data/lib/diplomat/health.rb +9 -1
- data/lib/diplomat/rest_client.rb +1 -1
- data/lib/diplomat/version.rb +1 -1
- metadata +37 -55
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 25c0b2769edc31ef7e21ce9a27bb80640ad924e8c7e5d3941ad85a7cf94605da
|
|
4
|
+
data.tar.gz: b42997b367d7a4f17358823e773c5ade86789677c273d02f02ca799baba8c79f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cd6483e59dd18715f52bb783d4cdfaaa4ba3f0b16e5f045c3a7bfea6cfea5f002bda8f3ca85fe33854be9e69e1ae523ba3277699204bcf07c07a8476c84af980
|
|
7
|
+
data.tar.gz: 0c92e00358566383f63105d6c656db1b641199fefe03aefdabed592dd4efdf6eceeaa5e7e1a5a1c8ad8538bdf6ed5fdbc48ecd4400a9b556d40a5ab42b1bbeaf
|
data/README.md
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
# Diplomat
|
|
2
|
-
[](https://github.com/WeAreFarmGeek/diplomat/actions?query=branch%3Amaster)
|
|
3
|
+
[](https://rubygems.org/gems/diplomat) [](https://rubygems.org/gems/diplomat) [](https://codeclimate.com/github/WeAreFarmGeek/diplomat) [](http://inch-ci.org/github/wearefarmgeek/diplomat)
|
|
3
4
|
### A HTTP Ruby API for [Consul](http://www.consul.io/)
|
|
4
5
|
|
|
5
6
|

|
|
@@ -41,7 +42,7 @@ production:
|
|
|
41
42
|
|
|
42
43
|
### Which versions of Ruby does Diplomat support? Where did my ruby 1.9 compatibility go?
|
|
43
44
|
|
|
44
|
-
Check out [
|
|
45
|
+
Check out [GitHub Actions](https://github.com/WeAreFarmGeek/diplomat/blob/master/.github/workflows/ruby.yml) to see which versions of ruby we currently test when we're making builds.
|
|
45
46
|
|
|
46
47
|
We've dropped ruby 1.9 support. You can still depend on Diplomat by directly using the `ruby-1.9-compatible` branch on github, although be advised it's not actively maintained anymore.
|
|
47
48
|
|
data/lib/diplomat/health.rb
CHANGED
|
@@ -33,17 +33,25 @@ module Diplomat
|
|
|
33
33
|
# Get service health
|
|
34
34
|
# @param s [String] the service
|
|
35
35
|
# @param options [Hash] options parameter hash
|
|
36
|
+
# @param meta [Hash] output structure containing header information about the request (index)
|
|
36
37
|
# @return [OpenStruct] all data associated with the node
|
|
37
38
|
# rubocop:disable Metrics/PerceivedComplexity
|
|
38
|
-
def service(s, options = {})
|
|
39
|
+
def service(s, options = {}, meta = nil)
|
|
39
40
|
custom_params = []
|
|
40
41
|
custom_params << use_named_parameter('dc', options[:dc]) if options[:dc]
|
|
41
42
|
custom_params << ['passing'] if options[:passing]
|
|
42
43
|
custom_params += [*options[:tag]].map { |value| use_named_parameter('tag', value) } if options[:tag]
|
|
43
44
|
custom_params << use_named_parameter('near', options[:near]) if options[:near]
|
|
44
45
|
custom_params << use_named_parameter('node-meta', options[:node_meta]) if options[:node_meta]
|
|
46
|
+
custom_params << use_named_parameter('index', options[:index]) if options[:index]
|
|
45
47
|
|
|
46
48
|
ret = send_get_request(@conn, ["/v1/health/service/#{s}"], options, custom_params)
|
|
49
|
+
if meta && ret.headers
|
|
50
|
+
meta[:index] = ret.headers['x-consul-index'] if ret.headers['x-consul-index']
|
|
51
|
+
meta[:knownleader] = ret.headers['x-consul-knownleader'] if ret.headers['x-consul-knownleader']
|
|
52
|
+
meta[:lastcontact] = ret.headers['x-consul-lastcontact'] if ret.headers['x-consul-lastcontact']
|
|
53
|
+
end
|
|
54
|
+
|
|
47
55
|
JSON.parse(ret.body).map { |service| OpenStruct.new service }
|
|
48
56
|
end
|
|
49
57
|
|
data/lib/diplomat/rest_client.rb
CHANGED
data/lib/diplomat/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: diplomat
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.6.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- John Hamelink
|
|
8
8
|
- Trevor Wood
|
|
9
9
|
- Pierre Souchay
|
|
10
|
-
autorequire:
|
|
10
|
+
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date: 2021-
|
|
13
|
+
date: 2021-09-26 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: bundler
|
|
@@ -18,48 +18,28 @@ dependencies:
|
|
|
18
18
|
requirements:
|
|
19
19
|
- - "~>"
|
|
20
20
|
- !ruby/object:Gem::Version
|
|
21
|
-
version: '2.
|
|
22
|
-
- - ">="
|
|
23
|
-
- !ruby/object:Gem::Version
|
|
24
|
-
version: 2.0.1
|
|
21
|
+
version: '2.2'
|
|
25
22
|
type: :development
|
|
26
23
|
prerelease: false
|
|
27
24
|
version_requirements: !ruby/object:Gem::Requirement
|
|
28
25
|
requirements:
|
|
29
26
|
- - "~>"
|
|
30
27
|
- !ruby/object:Gem::Version
|
|
31
|
-
version: '2.
|
|
32
|
-
- - ">="
|
|
33
|
-
- !ruby/object:Gem::Version
|
|
34
|
-
version: 2.0.1
|
|
35
|
-
- !ruby/object:Gem::Dependency
|
|
36
|
-
name: codeclimate-test-reporter
|
|
37
|
-
requirement: !ruby/object:Gem::Requirement
|
|
38
|
-
requirements:
|
|
39
|
-
- - "~>"
|
|
40
|
-
- !ruby/object:Gem::Version
|
|
41
|
-
version: 0.4.0
|
|
42
|
-
type: :development
|
|
43
|
-
prerelease: false
|
|
44
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
45
|
-
requirements:
|
|
46
|
-
- - "~>"
|
|
47
|
-
- !ruby/object:Gem::Version
|
|
48
|
-
version: 0.4.0
|
|
28
|
+
version: '2.2'
|
|
49
29
|
- !ruby/object:Gem::Dependency
|
|
50
30
|
name: cucumber
|
|
51
31
|
requirement: !ruby/object:Gem::Requirement
|
|
52
32
|
requirements:
|
|
53
33
|
- - "~>"
|
|
54
34
|
- !ruby/object:Gem::Version
|
|
55
|
-
version: '
|
|
35
|
+
version: '5.3'
|
|
56
36
|
type: :development
|
|
57
37
|
prerelease: false
|
|
58
38
|
version_requirements: !ruby/object:Gem::Requirement
|
|
59
39
|
requirements:
|
|
60
40
|
- - "~>"
|
|
61
41
|
- !ruby/object:Gem::Version
|
|
62
|
-
version: '
|
|
42
|
+
version: '5.3'
|
|
63
43
|
- !ruby/object:Gem::Dependency
|
|
64
44
|
name: fakes-rspec
|
|
65
45
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -94,70 +74,84 @@ dependencies:
|
|
|
94
74
|
requirements:
|
|
95
75
|
- - "~>"
|
|
96
76
|
- !ruby/object:Gem::Version
|
|
97
|
-
version: '
|
|
77
|
+
version: '2.2'
|
|
98
78
|
type: :development
|
|
99
79
|
prerelease: false
|
|
100
80
|
version_requirements: !ruby/object:Gem::Requirement
|
|
101
81
|
requirements:
|
|
102
82
|
- - "~>"
|
|
103
83
|
- !ruby/object:Gem::Version
|
|
104
|
-
version: '
|
|
84
|
+
version: '2.2'
|
|
105
85
|
- !ruby/object:Gem::Dependency
|
|
106
86
|
name: pry
|
|
107
87
|
requirement: !ruby/object:Gem::Requirement
|
|
108
88
|
requirements:
|
|
109
89
|
- - "~>"
|
|
110
90
|
- !ruby/object:Gem::Version
|
|
111
|
-
version: '0.
|
|
91
|
+
version: '0.14'
|
|
112
92
|
type: :development
|
|
113
93
|
prerelease: false
|
|
114
94
|
version_requirements: !ruby/object:Gem::Requirement
|
|
115
95
|
requirements:
|
|
116
96
|
- - "~>"
|
|
117
97
|
- !ruby/object:Gem::Version
|
|
118
|
-
version: '0.
|
|
98
|
+
version: '0.14'
|
|
119
99
|
- !ruby/object:Gem::Dependency
|
|
120
100
|
name: rake
|
|
121
101
|
requirement: !ruby/object:Gem::Requirement
|
|
122
102
|
requirements:
|
|
123
103
|
- - "~>"
|
|
124
104
|
- !ruby/object:Gem::Version
|
|
125
|
-
version:
|
|
105
|
+
version: 13.0.3
|
|
126
106
|
type: :development
|
|
127
107
|
prerelease: false
|
|
128
108
|
version_requirements: !ruby/object:Gem::Requirement
|
|
129
109
|
requirements:
|
|
130
110
|
- - "~>"
|
|
131
111
|
- !ruby/object:Gem::Version
|
|
132
|
-
version:
|
|
112
|
+
version: 13.0.3
|
|
133
113
|
- !ruby/object:Gem::Dependency
|
|
134
114
|
name: rspec
|
|
135
115
|
requirement: !ruby/object:Gem::Requirement
|
|
136
116
|
requirements:
|
|
137
117
|
- - "~>"
|
|
138
118
|
- !ruby/object:Gem::Version
|
|
139
|
-
version: '3.
|
|
119
|
+
version: '3.10'
|
|
140
120
|
type: :development
|
|
141
121
|
prerelease: false
|
|
142
122
|
version_requirements: !ruby/object:Gem::Requirement
|
|
143
123
|
requirements:
|
|
144
124
|
- - "~>"
|
|
145
125
|
- !ruby/object:Gem::Version
|
|
146
|
-
version: '3.
|
|
126
|
+
version: '3.10'
|
|
147
127
|
- !ruby/object:Gem::Dependency
|
|
148
128
|
name: rubocop
|
|
149
129
|
requirement: !ruby/object:Gem::Requirement
|
|
150
130
|
requirements:
|
|
151
131
|
- - "~>"
|
|
152
132
|
- !ruby/object:Gem::Version
|
|
153
|
-
version: 0.
|
|
133
|
+
version: 0.93.1
|
|
154
134
|
type: :development
|
|
155
135
|
prerelease: false
|
|
156
136
|
version_requirements: !ruby/object:Gem::Requirement
|
|
157
137
|
requirements:
|
|
158
138
|
- - "~>"
|
|
159
139
|
- !ruby/object:Gem::Version
|
|
160
|
-
version: 0.
|
|
140
|
+
version: 0.93.1
|
|
141
|
+
- !ruby/object:Gem::Dependency
|
|
142
|
+
name: simplecov
|
|
143
|
+
requirement: !ruby/object:Gem::Requirement
|
|
144
|
+
requirements:
|
|
145
|
+
- - "~>"
|
|
146
|
+
- !ruby/object:Gem::Version
|
|
147
|
+
version: 0.21.2
|
|
148
|
+
type: :development
|
|
149
|
+
prerelease: false
|
|
150
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
151
|
+
requirements:
|
|
152
|
+
- - "~>"
|
|
153
|
+
- !ruby/object:Gem::Version
|
|
154
|
+
version: 0.21.2
|
|
161
155
|
- !ruby/object:Gem::Dependency
|
|
162
156
|
name: webmock
|
|
163
157
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -178,20 +172,14 @@ dependencies:
|
|
|
178
172
|
requirements:
|
|
179
173
|
- - "~>"
|
|
180
174
|
- !ruby/object:Gem::Version
|
|
181
|
-
version: '1.
|
|
182
|
-
- - ">="
|
|
183
|
-
- !ruby/object:Gem::Version
|
|
184
|
-
version: 1.0.1
|
|
175
|
+
version: '1.2'
|
|
185
176
|
type: :runtime
|
|
186
177
|
prerelease: false
|
|
187
178
|
version_requirements: !ruby/object:Gem::Requirement
|
|
188
179
|
requirements:
|
|
189
180
|
- - "~>"
|
|
190
181
|
- !ruby/object:Gem::Version
|
|
191
|
-
version: '1.
|
|
192
|
-
- - ">="
|
|
193
|
-
- !ruby/object:Gem::Version
|
|
194
|
-
version: 1.0.1
|
|
182
|
+
version: '1.2'
|
|
195
183
|
- !ruby/object:Gem::Dependency
|
|
196
184
|
name: faraday
|
|
197
185
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -199,9 +187,6 @@ dependencies:
|
|
|
199
187
|
- - ">="
|
|
200
188
|
- !ruby/object:Gem::Version
|
|
201
189
|
version: '0.9'
|
|
202
|
-
- - "<"
|
|
203
|
-
- !ruby/object:Gem::Version
|
|
204
|
-
version: 1.1.0
|
|
205
190
|
type: :runtime
|
|
206
191
|
prerelease: false
|
|
207
192
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -209,9 +194,6 @@ dependencies:
|
|
|
209
194
|
- - ">="
|
|
210
195
|
- !ruby/object:Gem::Version
|
|
211
196
|
version: '0.9'
|
|
212
|
-
- - "<"
|
|
213
|
-
- !ruby/object:Gem::Version
|
|
214
|
-
version: 1.1.0
|
|
215
197
|
description: Diplomat is a simple wrapper for Consul
|
|
216
198
|
email:
|
|
217
199
|
- john@johnhamelink.com
|
|
@@ -255,7 +237,7 @@ homepage: https://github.com/WeAreFarmGeek/diplomat
|
|
|
255
237
|
licenses:
|
|
256
238
|
- BSD-3-Clause
|
|
257
239
|
metadata: {}
|
|
258
|
-
post_install_message:
|
|
240
|
+
post_install_message:
|
|
259
241
|
rdoc_options: []
|
|
260
242
|
require_paths:
|
|
261
243
|
- lib
|
|
@@ -263,15 +245,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
263
245
|
requirements:
|
|
264
246
|
- - ">="
|
|
265
247
|
- !ruby/object:Gem::Version
|
|
266
|
-
version: '2.
|
|
248
|
+
version: '2.5'
|
|
267
249
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
268
250
|
requirements:
|
|
269
251
|
- - ">="
|
|
270
252
|
- !ruby/object:Gem::Version
|
|
271
253
|
version: '0'
|
|
272
254
|
requirements: []
|
|
273
|
-
rubygems_version: 3.1.
|
|
274
|
-
signing_key:
|
|
255
|
+
rubygems_version: 3.1.6
|
|
256
|
+
signing_key:
|
|
275
257
|
specification_version: 4
|
|
276
258
|
summary: Diplomat is a simple wrapper for Consul
|
|
277
259
|
test_files: []
|