fog-google 0.0.6 → 0.0.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a924fff0c53902ab17cf84ba699c35cfb2139898
4
- data.tar.gz: f2a1df01bb2be2dccf652d477c80b38fd20ce86d
3
+ metadata.gz: 0511793f96bfb19f9b6aeb03d9255aa75e9e80bc
4
+ data.tar.gz: 11cad15a2d43d83bf7610a46868ecadba74035b5
5
5
  SHA512:
6
- metadata.gz: ab467619990b86e9dd1d9144e928434f9343516a12f589f815879471b841372b2b3b020dea667336d0f5473b8a5f7e813bc5d798a5f72d67208a1fbf89111522
7
- data.tar.gz: 1a640d9fd9479034e6445febe59eff84ff22a7033502f4bbf24c9a953210546578a84ccd89fd55707e2c99c9fe17119607b5c5a079aa5b88065624ed3e60745a
6
+ metadata.gz: 8dbfd29a46fadd9e640e0e9cca7c8bda8c7e213ada72badfff8f2e7f55ae3e25382efa6213590461745060d8918997fa8ec52128583a4c3cc950aff5236bd02f
7
+ data.tar.gz: 15b829e415184704289d27260d23472cc1a73907ac0afbb8cab6cc568a5042a92d80b3a77dfa2bc8848096b02819d42e289581ab4affcb01593a5730e5361e86
data/CONTRIBUTING.md CHANGED
@@ -74,6 +74,16 @@ or just one:
74
74
  $ rake test TEST=test/integration/compute/test_servers.rb TESTOPTS="--name=TestServers#test_bootstrap_ssh_destroy"
75
75
  ```
76
76
 
77
+ #### The transition from `shindo` to Minitest
78
+
79
+ Previously, [shindo](https://github.com/geemus/shindo) was the primary testing framework. We've started moving away from it, and to Minitest, but some artifacts remain.
80
+
81
+ - The `test` directory contains the new Minitest tests, which currently only cover live integration testing for `compute`.
82
+ - The `tests` directory contains the old `shindo` tests, which generally pass if mocking is turned on. No promises if mocking is off.
83
+ - Travis CI runs the mocked `shindo` tests, though hopefully in the long run it will run the unit and integration `Minitest` tests. Currently, Google maintains its own Jenkins instance that runs the Minitest integraiton tests.
84
+
85
+ Follow [#50](https://github.com/fog/fog-google/issues/50) for the status of the transition from `shindo` to Minitest.
86
+
77
87
  #### Some notes about the tests as they stand
78
88
 
79
89
  The live integration tests for resources, (servers, disks, etc.,) have a few components:
@@ -30,6 +30,7 @@ module Fog
30
30
  attribute :external_ip, :aliases => 'externalIP'
31
31
  attribute :auto_restart
32
32
  attribute :on_host_maintenance
33
+ attribute :preemptible
33
34
 
34
35
  # Security account scope aliases used by official gcloud utility
35
36
  # List derived from 'gcloud compute instances create --help'
@@ -172,10 +173,10 @@ module Fog
172
173
  Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
173
174
  end
174
175
 
175
- def set_scheduling(on_host_maintenance, automatic_restart)
176
+ def set_scheduling(on_host_maintenance, automatic_restart, preemptible)
176
177
  requires :identity, :zone
177
178
 
178
- data = service.set_server_scheduling(identity, zone_name, on_host_maintenance, automatic_restart)
179
+ data = service.set_server_scheduling(identity, zone_name, on_host_maintenance, automatic_restart, preemptible)
179
180
  Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'], data.body['zone'])
180
181
  end
181
182
 
@@ -270,6 +271,7 @@ module Fog
270
271
  'tags' => tags,
271
272
  'auto_restart' => auto_restart,
272
273
  'on_host_maintenance' => on_host_maintenance,
274
+ 'preemptible' => preemptible,
273
275
  'can_ip_forward' => can_ip_forward
274
276
  }.delete_if {|key, value| value.nil?}
275
277
 
@@ -151,12 +151,17 @@ module Fog
151
151
 
152
152
  scheduling = {
153
153
  'automaticRestart' => false,
154
- 'onHostMaintenance' => "MIGRATE"
154
+ 'onHostMaintenance' => "MIGRATE",
155
+ 'preemptible' => false
155
156
  }
156
157
  if options.key? 'auto_restart'
157
158
  scheduling['automaticRestart'] = options.delete 'auto_restart'
158
159
  scheduling['automaticRestart'] = scheduling['automaticRestart'].class == TrueClass
159
160
  end
161
+ if options.key? 'preemptible'
162
+ scheduling['preemptible'] = options.delete 'preemptible'
163
+ scheduling['preemptible'] = scheduling['preemptible'].class == TrueClass
164
+ end
160
165
  if options.key? 'on_host_maintenance'
161
166
  ohm = options.delete 'on_host_maintenance'
162
167
  scheduling['onHostMaintenance'] = (ohm.respond_to?("upcase") &&
@@ -2,13 +2,13 @@ module Fog
2
2
  module Compute
3
3
  class Google
4
4
  class Mock
5
- def set_server_scheduling(identity, zone, on_host_maintenance, automatic_restart)
5
+ def set_server_scheduling(identity, zone, on_host_maintenance, automatic_restart, preemptible)
6
6
  Fog::Mock.not_implemented
7
7
  end
8
8
  end
9
9
 
10
10
  class Real
11
- def set_server_scheduling(identity, zone, on_host_maintenance, automatic_restart)
11
+ def set_server_scheduling(identity, zone, on_host_maintenance, automatic_restart, preemptible)
12
12
  api_method = @compute.instances.set_scheduling
13
13
  parameters = {
14
14
  'project' => @project,
@@ -19,6 +19,7 @@ module Fog
19
19
  body_object = {
20
20
  'onHostMaintenance' => on_host_maintenance,
21
21
  'automaticRestart' => automatic_restart,
22
+ 'preemptible' => preemptible
22
23
  }
23
24
 
24
25
  request(api_method, parameters, body_object)
@@ -1,5 +1,5 @@
1
1
  module Fog
2
2
  module Google
3
- VERSION = "0.0.6"
3
+ VERSION = "0.0.7"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fog-google
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nat Welch
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-06-23 00:00:00.000000000 Z
13
+ date: 2015-07-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: fog-core