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:
commit
0d83fa2ab8
2 changed files with 16 additions and 19 deletions
|
@ -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
|
||||
|
|
|
@ -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' => [{
|
||||
|
|
Loading…
Add table
Reference in a new issue