lib/fog/google/requests/compute/attach_disk.rb in fog-1.22.0 vs lib/fog/google/requests/compute/attach_disk.rb in fog-1.22.1

- old
+ new

@@ -1,27 +1,33 @@ module Fog module Compute class Google - class Mock - def attach_disk(instance, zone, deviceName) + def attach_disk(instance, zone, source, options = {}) Fog::Mock.not_implemented end end class Real - - def attach_disk(instance, zone, deviceName) + def attach_disk(instance, zone, source, options = {}) api_method = @compute.instances.attach_disk parameters = { 'project' => @project, 'instance' => instance, - 'zone' => zone + 'zone' => zone.split('/')[-1], } + + writable = options.delete(:writable) body_object = { - "deviceName" => deviceName + 'type' => 'PERSISTENT', + 'source' => source, + 'mode' => writable ? 'READ_WRITE' : 'READ_ONLY', + 'deviceName' => options.delete(:deviceName), + 'boot' => options.delete(:boot), + 'autoDelete' => options.delete(:autoDelete), } - result = self.build_result(api_method, parameters, body_object=body_object) + + result = self.build_result(api_method, parameters, body_object) response = self.build_response(result) end end end end