1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

delete snapshots and address requests for google

This commit is contained in:
unknown 2013-12-27 17:09:57 +00:00
parent 53e6e0693b
commit 2ccc229ec6
7 changed files with 172 additions and 8 deletions

View file

@ -11,6 +11,7 @@ module Fog
request_path 'fog/google/requests/compute'
request :list_servers
request :list_addresses
request :list_disks
request :list_firewalls
request :list_images
@ -22,6 +23,7 @@ module Fog
request :list_snapshots
request :get_server
request :get_disk
request :get_disk
request :get_firewall
request :get_image
@ -32,7 +34,9 @@ module Fog
request :get_global_operation
request :get_zone_operation
request :delete_address
request :delete_disk
request :delete_snapshot
request :delete_firewall
request :delete_image
request :delete_network
@ -40,6 +44,7 @@ module Fog
request :delete_global_operation
request :delete_zone_operation
request :insert_address
request :insert_disk
request :insert_firewall
request :insert_image

View file

@ -0,0 +1,31 @@
module Fog
module Compute
class Google
class Mock
def delete_address(address_name)
Fog::Mock.not_implemented
end
end
class Real
def delete_address(address_name,region_name)
api_method = @compute.addresss.delete
parameters = {
'project' => @project,
'address' => address_name,
'region' => region_name
}
result = self.build_result(api_method, parameters)
response = self.build_response(result)
end
end
end
end
end

View file

@ -0,0 +1,35 @@
module Fog
module Compute
class Google
class Mock
def delete_snapshot(snapshot_name, zone_name)
Fog::Mock.not_implemented
end
end
class Real
def delete_snapshot(snapshot_name, zone_name)
if zone_name.start_with? 'http'
zone_name = zone_name.split('/')[-1]
end
api_method = @compute.snapshots.delete
parameters = {
'project' => @project,
'snapshot' => snapshot_name,
'zone' => zone_name
}
result = self.build_result(api_method, parameters)
response = self.build_response(result)
end
end
end
end
end

View file

@ -0,0 +1,31 @@
module Fog
module Compute
class Google
class Mock
def get_address(address_name,region_name)
Fog::Mock.not_implemented
end
end
class Real
def get_address(address_name,region_name)
api_method = @compute.addresss.get
parameters = {
'project' => @project,
'address' => address_name,
'region' => region_name
}
result = self.build_result(api_method, parameters)
response = self.build_response(result)
end
end
end
end
end

View file

@ -0,0 +1,34 @@
module Fog
module Compute
class Google
class Mock
def insert_address(address_name,region_name)
Fog::Mock.not_implemented
end
end
class Real
def insert_address(address_name,region_name)
api_method = @compute.addresss.insert
parameters = {
'project' => @project,
'region' => region_name
}
body_object = {
'name' => address_name
}
result = self.build_result(api_method, parameters,
body_object=body_object)
response = self.build_response(result)
end
end
end
end
end

View file

@ -3,18 +3,15 @@ module Fog
class Google
class Mock
def insert_firewall(firewall_name, source_range, allowed,
network=@default_network)
def insert_firewall(firewall_name, allowed, source_range=[], source_tags=[], network=@default_network)
Fog::Mock.not_implemented
end
end
class Real
def insert_firewall(firewall_name, source_range, allowed,
network=@default_network)
def insert_firewall(firewall_name, allowed, source_range=[], source_tags=[], network=@default_network)
api_method = @compute.firewalls.insert
parameters = {
'project' => @project,
@ -22,9 +19,10 @@ module Fog
body_object = {
"name" => firewall_name,
"network" => "#{@api_url}#{@project}/global/networks/#{network}",
"sourceRanges" => source_range,
"allowed" => allowed
"allowed" => allowed
}
body_object["sourceRanges"] = source_range if !source_range.empty?
body_object["sourceTags"] = source_tags if !source_tags.empty?
result = self.build_result(api_method, parameters,
body_object=body_object)

View file

@ -0,0 +1,30 @@
module Fog
module Compute
class Google
class Mock
def list_addresses
Fog::Mock.not_implemented
end
end
class Real
def list_addresses(region_name)
api_method = @compute.addresses.list
parameters = {
'project' => @project,
'region' => region_name
}
result = self.build_result(api_method, parameters)
response = self.build_response(result)
end
end
end
end
end