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

Merge branch 'rtp-patch' into next_version

This commit is contained in:
Nat Welch 2013-06-26 23:17:04 -07:00
commit 0d83fa2ab8
2 changed files with 16 additions and 19 deletions

View file

@ -39,15 +39,6 @@ module Fog
ip
end
def metadata
def []=(k,v)
service.set_metadata(self.name, self.zone, {k => v})
return self.metadata
end
data = service.get_server(self.name, self.zone).body
data['metadata'] || {}
end
def ready?
self.state == RUNNING
end
@ -73,19 +64,20 @@ module Fog
requires :machine_type
requires :zone_name
if metadata.nil?
metadata = {}
end
metadata.merge!({
"sshKeys" => "#{username}:#{File.read(public_key_path).strip}"
}) if :public_key_path
data = service.insert_server(
name,
image_name,
zone_name,
machine_type)
end
def setup(credentials = {})
requires :public_ip_address, :public_key, :username
self.metadata['sshKeys'] = "#{self.username}:#{self.public_key}"
rescue Errno::ECONNREFUSED
sleep(1)
retry
machine_type,
metadata)
end
end

View file

@ -12,8 +12,12 @@ module Fog
class Real
def format_metadata(metadata)
{ "items" => metadata.map {|k,v| {"key" => k, "value" => v}} }
end
def insert_server(server_name, image_name,
zone_name, machine_name,
zone_name, machine_name, metadata,
network_name=@default_network)
# We need to get the right owner for an image.
@ -34,6 +38,7 @@ module Fog
'name' => server_name,
'image' => @image_url,
'machineType' => @api_url + @project + "/zones/#{zone_name}/machineTypes/#{machine_name}",
'metadata' => format_metadata(metadata),
'networkInterfaces' => [{
'network' => @api_url + @project + "/global/networks/#{network_name}",
'accessConfigs' => [{