From: Michal Fojtik <[email protected]>
---
server/lib/deltacloud/drivers/ec2/ec2_driver.rb | 17 +++++++++++++++++
server/views/instances/show.xml.haml | 6 +++---
2 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/server/lib/deltacloud/drivers/ec2/ec2_driver.rb
b/server/lib/deltacloud/drivers/ec2/ec2_driver.rb
index 4c47db4..990cbdb 100644
--- a/server/lib/deltacloud/drivers/ec2/ec2_driver.rb
+++ b/server/lib/deltacloud/drivers/ec2/ec2_driver.rb
@@ -178,6 +178,23 @@ module Deltacloud
end
end
+ def instance(credentials, opts={})
+ ec2 = new_client(credentials)
+ inst_arr = []
+ safely do
+ instance = ec2.describe_instances([opts[:id]]).first
+ instance = convert_instance(instance)
+ return nil unless instance
+ console_output = ec2.get_console_output(instance.id)
+ windows_password =
console_output[:aws_output][%r{<Password>(.+)</Password>}m] && $1
+ if windows_password
+ instance.username = 'Administrator'
+ instance.password = windows_password
+ end
+ instance
+ end
+ end
+
def instances(credentials, opts={})
ec2 = new_client(credentials)
inst_arr = []
diff --git a/server/views/instances/show.xml.haml
b/server/views/instances/show.xml.haml
index 27f04a6..ab60fb7 100644
--- a/server/views/instances/show.xml.haml
+++ b/server/views/instances/show.xml.haml
@@ -49,11 +49,11 @@
- if @instance.authn_feature_failed?
%error #{@instance.authn_error}
- else
- - if driver_auth_feature_name == 'password'
+ - if @instance.password
%login
%username #{@instance.username}
- %password #{@instance.password}
- - if driver_auth_feature_name == 'key'
+ %password=cdata(@instance.password)
+ - if @instance.keyname
%login
%keyname #{@instance.keyname}
--
1.7.6