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

[digitalocean|compute] Added support to use SSH keys when creating the server

This commit is contained in:
Sergio Rubio 2013-03-03 01:12:40 +01:00
parent d0ff6c0d51
commit fee3049bfb
2 changed files with 19 additions and 15 deletions

View file

@ -90,14 +90,16 @@ module Fog
def save
raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if persisted?
requires :name, :flavor_id, :image_id, :region_id
meta_hash = {}
options = {
'name' => name,
'size_id' => flavor_id,
'image_id' => image_id,
'region_id' => region_id,
}
data = service.create_server name, flavor_id, image_id, region_id
options = {}
if attributes[:ssh_key_ids]
options[:ssh_key_ids] = attributes[:ssh_key_ids]
end
data = service.create_server name,
flavor_id,
image_id,
region_id,
options
merge_attributes(data.body['droplet'])
true
end

View file

@ -12,14 +12,16 @@ module Fog
region_id,
options = {} )
query_args = []
query_hash = {
:name => name,
:size_id => size_id,
:image_id => image_id,
:region_id => region_id
}.each { |k, v| query_args << "#{k}=#{v}" }
query_hash.each { |k, v| query_args << "#{k}=#{v}" }
:name => name,
:size_id => size_id,
:image_id => image_id,
:region_id => region_id
}
if options[:ssh_key_ids]
query_hash[:ssh_key_ids] = options[:ssh_key_ids]
end
request(
:expects => [200],