ey-core 3.2.1 → 3.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 1c7d3bbcab00aa10fed281e8771ee72f6c00256d
4
+ data.tar.gz: 227314a376a36894f199b4eece85622c3eccc85e
5
+ SHA512:
6
+ metadata.gz: 7929b940b0028d2e0af34d966ab5846c00c71aad29c323f3b2be41f5bd5fb1cd1fbd926ab7e76e0ba1fbd84841c7993e42ee1b7066c0a046ab06b07a1a53e23e
7
+ data.tar.gz: 68046e825aa2922d62372ad9adacf6cfa31137eb20170b53951434275d1a174eccce67b665d7e262653fa2c28051e0fb52d98347f6aee9465145d766424bda86
@@ -296,6 +296,8 @@ class Ey::Core::Client < Cistern::Service
296
296
  request :run_cluster_application_action
297
297
  request :run_environment_application_action
298
298
  request :signup
299
+ request :start_server
300
+ request :stop_server
299
301
  request :timeout_deployment
300
302
  request :unassign_environment
301
303
  request :update_addon
@@ -61,6 +61,22 @@ class Ey::Core::Client::Server < Ey::Core::Model
61
61
  )
62
62
  end
63
63
 
64
+ def stop
65
+ requires :identity
66
+
67
+ connection.requests.new(
68
+ self.connection.stop_server("id" => self.identity).body["request"]
69
+ )
70
+ end
71
+
72
+ def start
73
+ requires :identity
74
+
75
+ connection.requests.new(
76
+ self.connection.start_server("id" => self.identity).body["request"]
77
+ )
78
+ end
79
+
64
80
  def reset_state(state)
65
81
  params = {
66
82
  "url" => self.collection.url,
@@ -0,0 +1,39 @@
1
+ class Ey::Core::Client
2
+ class Real
3
+ def start_server(params={})
4
+ id = params["id"]
5
+ url = params["url"]
6
+
7
+ request(
8
+ :method => :put,
9
+ :path => "servers/#{id}/start",
10
+ :url => url,
11
+ )
12
+ end
13
+ end # Real
14
+
15
+ class Mock
16
+ def start_server(params={})
17
+ request_id = self.uuid
18
+ identity = resource_identity(params)
19
+
20
+ find(:servers, identity)
21
+
22
+ start_request = {
23
+ "finished_at" => Time.now,
24
+ "id" => request_id,
25
+ "started_at" => Time.now,
26
+ "successful" => "true",
27
+ "server" => url_for("/servers/#{identity}"),
28
+ "type" => "start_server_request",
29
+ }
30
+
31
+ self.data[:requests][request_id] = start_request
32
+
33
+ response(
34
+ :body => {"request" => start_request},
35
+ :status => 201,
36
+ )
37
+ end
38
+ end # Mock
39
+ end
@@ -0,0 +1,39 @@
1
+ class Ey::Core::Client
2
+ class Real
3
+ def stop_server(params={})
4
+ id = params["id"]
5
+ url = params["url"]
6
+
7
+ request(
8
+ :method => :put,
9
+ :path => "servers/#{id}/stop",
10
+ :url => url,
11
+ )
12
+ end
13
+ end # Real
14
+
15
+ class Mock
16
+ def stop_server(params={})
17
+ request_id = self.uuid
18
+ identity = resource_identity(params)
19
+
20
+ find(:servers, identity)
21
+
22
+ stop_request = {
23
+ "finished_at" => Time.now,
24
+ "id" => request_id,
25
+ "started_at" => Time.now,
26
+ "successful" => "true",
27
+ "server" => url_for("/servers/#{identity}"),
28
+ "type" => "stop_server_request",
29
+ }
30
+
31
+ self.data[:requests][request_id] = stop_request
32
+
33
+ response(
34
+ :body => {"request" => stop_request},
35
+ :status => 201,
36
+ )
37
+ end
38
+ end # Mock
39
+ end
@@ -1,5 +1,5 @@
1
1
  module Ey
2
2
  module Core
3
- VERSION = "3.2.1"
3
+ VERSION = "3.2.2"
4
4
  end
5
5
  end
data/spec/servers_spec.rb CHANGED
@@ -34,6 +34,18 @@ describe 'servers' do
34
34
  expect(reboot_request.successful).to be true
35
35
  end
36
36
 
37
+ it "stops" do
38
+ request = server.stop
39
+ request.ready!
40
+ expect(request.successful).to be true
41
+ end
42
+
43
+ it "starts" do
44
+ request = server.start
45
+ request.ready!
46
+ expect(request.successful).to be true
47
+ end
48
+
37
49
  it "applies" do
38
50
  expect(server.apply.ready!).to be_successful
39
51
 
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ey-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.1
5
- prerelease:
4
+ version: 3.2.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Josh Lane
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2016-11-11 00:00:00.000000000 Z
11
+ date: 2017-01-03 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: addressable
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - '='
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - '='
28
25
  - !ruby/object:Gem::Version
@@ -30,135 +27,118 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: awesome_print
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: belafonte
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: cistern
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0.12'
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0.12'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: colorize
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: ey-hmac
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ~>
87
+ - - "~>"
100
88
  - !ruby/object:Gem::Version
101
89
  version: '2.0'
102
90
  type: :runtime
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ~>
94
+ - - "~>"
108
95
  - !ruby/object:Gem::Version
109
96
  version: '2.0'
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: escape
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - ">="
116
102
  - !ruby/object:Gem::Version
117
103
  version: '0'
118
104
  type: :runtime
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - ">="
124
109
  - !ruby/object:Gem::Version
125
110
  version: '0'
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: faraday
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ~>
115
+ - - "~>"
132
116
  - !ruby/object:Gem::Version
133
117
  version: '0.9'
134
118
  type: :runtime
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ~>
122
+ - - "~>"
140
123
  - !ruby/object:Gem::Version
141
124
  version: '0.9'
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: faraday_middleware
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
- - - ~>
129
+ - - "~>"
148
130
  - !ruby/object:Gem::Version
149
131
  version: '0.9'
150
132
  type: :runtime
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
- - - ~>
136
+ - - "~>"
156
137
  - !ruby/object:Gem::Version
157
138
  version: '0.9'
158
139
  - !ruby/object:Gem::Dependency
159
140
  name: rack
160
141
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
142
  requirements:
163
143
  - - '='
164
144
  - !ruby/object:Gem::Version
@@ -166,7 +146,6 @@ dependencies:
166
146
  type: :runtime
167
147
  prerelease: false
168
148
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
149
  requirements:
171
150
  - - '='
172
151
  - !ruby/object:Gem::Version
@@ -174,209 +153,183 @@ dependencies:
174
153
  - !ruby/object:Gem::Dependency
175
154
  name: faye
176
155
  requirement: !ruby/object:Gem::Requirement
177
- none: false
178
156
  requirements:
179
- - - ! '>='
157
+ - - ">="
180
158
  - !ruby/object:Gem::Version
181
159
  version: '0'
182
160
  type: :runtime
183
161
  prerelease: false
184
162
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
163
  requirements:
187
- - - ! '>='
164
+ - - ">="
188
165
  - !ruby/object:Gem::Version
189
166
  version: '0'
190
167
  - !ruby/object:Gem::Dependency
191
168
  name: highline
192
169
  requirement: !ruby/object:Gem::Requirement
193
- none: false
194
170
  requirements:
195
- - - ! '>='
171
+ - - ">="
196
172
  - !ruby/object:Gem::Version
197
173
  version: '0'
198
174
  type: :runtime
199
175
  prerelease: false
200
176
  version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
177
  requirements:
203
- - - ! '>='
178
+ - - ">="
204
179
  - !ruby/object:Gem::Version
205
180
  version: '0'
206
181
  - !ruby/object:Gem::Dependency
207
182
  name: json
208
183
  requirement: !ruby/object:Gem::Requirement
209
- none: false
210
184
  requirements:
211
- - - <
185
+ - - "<"
212
186
  - !ruby/object:Gem::Version
213
187
  version: '2.0'
214
188
  type: :runtime
215
189
  prerelease: false
216
190
  version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
191
  requirements:
219
- - - <
192
+ - - "<"
220
193
  - !ruby/object:Gem::Version
221
194
  version: '2.0'
222
195
  - !ruby/object:Gem::Dependency
223
196
  name: mime-types
224
197
  requirement: !ruby/object:Gem::Requirement
225
- none: false
226
198
  requirements:
227
- - - ~>
199
+ - - "~>"
228
200
  - !ruby/object:Gem::Version
229
201
  version: 2.99.2
230
202
  type: :runtime
231
203
  prerelease: false
232
204
  version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
205
  requirements:
235
- - - ~>
206
+ - - "~>"
236
207
  - !ruby/object:Gem::Version
237
208
  version: 2.99.2
238
209
  - !ruby/object:Gem::Dependency
239
210
  name: oj
240
211
  requirement: !ruby/object:Gem::Requirement
241
- none: false
242
212
  requirements:
243
- - - ! '>='
213
+ - - ">="
244
214
  - !ruby/object:Gem::Version
245
215
  version: '0'
246
216
  type: :runtime
247
217
  prerelease: false
248
218
  version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
219
  requirements:
251
- - - ! '>='
220
+ - - ">="
252
221
  - !ruby/object:Gem::Version
253
222
  version: '0'
254
223
  - !ruby/object:Gem::Dependency
255
224
  name: oj_mimic_json
256
225
  requirement: !ruby/object:Gem::Requirement
257
- none: false
258
226
  requirements:
259
- - - ! '>='
227
+ - - ">="
260
228
  - !ruby/object:Gem::Version
261
229
  version: '0'
262
230
  type: :runtime
263
231
  prerelease: false
264
232
  version_requirements: !ruby/object:Gem::Requirement
265
- none: false
266
233
  requirements:
267
- - - ! '>='
234
+ - - ">="
268
235
  - !ruby/object:Gem::Version
269
236
  version: '0'
270
237
  - !ruby/object:Gem::Dependency
271
238
  name: pry
272
239
  requirement: !ruby/object:Gem::Requirement
273
- none: false
274
240
  requirements:
275
- - - ! '>='
241
+ - - ">="
276
242
  - !ruby/object:Gem::Version
277
243
  version: '0'
278
244
  type: :runtime
279
245
  prerelease: false
280
246
  version_requirements: !ruby/object:Gem::Requirement
281
- none: false
282
247
  requirements:
283
- - - ! '>='
248
+ - - ">="
284
249
  - !ruby/object:Gem::Version
285
250
  version: '0'
286
251
  - !ruby/object:Gem::Dependency
287
252
  name: sshkey
288
253
  requirement: !ruby/object:Gem::Requirement
289
- none: false
290
254
  requirements:
291
- - - ~>
255
+ - - "~>"
292
256
  - !ruby/object:Gem::Version
293
257
  version: '1.6'
294
258
  type: :runtime
295
259
  prerelease: false
296
260
  version_requirements: !ruby/object:Gem::Requirement
297
- none: false
298
261
  requirements:
299
- - - ~>
262
+ - - "~>"
300
263
  - !ruby/object:Gem::Version
301
264
  version: '1.6'
302
265
  - !ruby/object:Gem::Dependency
303
266
  name: table_print
304
267
  requirement: !ruby/object:Gem::Requirement
305
- none: false
306
268
  requirements:
307
- - - ! '>='
269
+ - - ">="
308
270
  - !ruby/object:Gem::Version
309
271
  version: '0'
310
272
  type: :runtime
311
273
  prerelease: false
312
274
  version_requirements: !ruby/object:Gem::Requirement
313
- none: false
314
275
  requirements:
315
- - - ! '>='
276
+ - - ">="
316
277
  - !ruby/object:Gem::Version
317
278
  version: '0'
318
279
  - !ruby/object:Gem::Dependency
319
280
  name: pry-nav
320
281
  requirement: !ruby/object:Gem::Requirement
321
- none: false
322
282
  requirements:
323
- - - ! '>='
283
+ - - ">="
324
284
  - !ruby/object:Gem::Version
325
285
  version: '0'
326
286
  type: :development
327
287
  prerelease: false
328
288
  version_requirements: !ruby/object:Gem::Requirement
329
- none: false
330
289
  requirements:
331
- - - ! '>='
290
+ - - ">="
332
291
  - !ruby/object:Gem::Version
333
292
  version: '0'
334
293
  - !ruby/object:Gem::Dependency
335
294
  name: rspec
336
295
  requirement: !ruby/object:Gem::Requirement
337
- none: false
338
296
  requirements:
339
- - - ~>
297
+ - - "~>"
340
298
  - !ruby/object:Gem::Version
341
299
  version: '3.0'
342
300
  type: :development
343
301
  prerelease: false
344
302
  version_requirements: !ruby/object:Gem::Requirement
345
- none: false
346
303
  requirements:
347
- - - ~>
304
+ - - "~>"
348
305
  - !ruby/object:Gem::Version
349
306
  version: '3.0'
350
307
  - !ruby/object:Gem::Dependency
351
308
  name: ffaker
352
309
  requirement: !ruby/object:Gem::Requirement
353
- none: false
354
310
  requirements:
355
- - - ! '>='
311
+ - - ">="
356
312
  - !ruby/object:Gem::Version
357
313
  version: '0'
358
314
  type: :development
359
315
  prerelease: false
360
316
  version_requirements: !ruby/object:Gem::Requirement
361
- none: false
362
317
  requirements:
363
- - - ! '>='
318
+ - - ">="
364
319
  - !ruby/object:Gem::Version
365
320
  version: '0'
366
321
  - !ruby/object:Gem::Dependency
367
322
  name: rake
368
323
  requirement: !ruby/object:Gem::Requirement
369
- none: false
370
324
  requirements:
371
- - - ! '>='
325
+ - - ">="
372
326
  - !ruby/object:Gem::Version
373
327
  version: '0'
374
328
  type: :development
375
329
  prerelease: false
376
330
  version_requirements: !ruby/object:Gem::Requirement
377
- none: false
378
331
  requirements:
379
- - - ! '>='
332
+ - - ">="
380
333
  - !ruby/object:Gem::Version
381
334
  version: '0'
382
335
  description: Engine Yard Core API Ruby Client
@@ -388,10 +341,10 @@ executables:
388
341
  extensions: []
389
342
  extra_rdoc_files: []
390
343
  files:
391
- - .gitignore
392
- - .ruby-gemset
393
- - .ruby-version
394
- - .travis.yml
344
+ - ".gitignore"
345
+ - ".ruby-gemset"
346
+ - ".ruby-version"
347
+ - ".travis.yml"
395
348
  - CHANGELOG.md
396
349
  - Gemfile
397
350
  - Guardfile
@@ -753,6 +706,8 @@ files:
753
706
  - lib/ey-core/requests/run_cluster_application_action.rb
754
707
  - lib/ey-core/requests/run_environment_application_action.rb
755
708
  - lib/ey-core/requests/signup.rb
709
+ - lib/ey-core/requests/start_server.rb
710
+ - lib/ey-core/requests/stop_server.rb
756
711
  - lib/ey-core/requests/timeout_deployment.rb
757
712
  - lib/ey-core/requests/unassign_environment.rb
758
713
  - lib/ey-core/requests/update_addon.rb
@@ -848,27 +803,26 @@ files:
848
803
  homepage: ''
849
804
  licenses:
850
805
  - MIT
806
+ metadata: {}
851
807
  post_install_message:
852
808
  rdoc_options: []
853
809
  require_paths:
854
810
  - lib
855
811
  required_ruby_version: !ruby/object:Gem::Requirement
856
- none: false
857
812
  requirements:
858
- - - ! '>='
813
+ - - ">="
859
814
  - !ruby/object:Gem::Version
860
815
  version: '0'
861
816
  required_rubygems_version: !ruby/object:Gem::Requirement
862
- none: false
863
817
  requirements:
864
- - - ! '>='
818
+ - - ">="
865
819
  - !ruby/object:Gem::Version
866
820
  version: '0'
867
821
  requirements: []
868
822
  rubyforge_project:
869
- rubygems_version: 1.8.23.2
823
+ rubygems_version: 2.5.1
870
824
  signing_key:
871
- specification_version: 3
825
+ specification_version: 4
872
826
  summary: Client library providing real and mock functionality for accessing Engine
873
827
  Yard's Core API
874
828
  test_files: