incubator-deltacloud-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mfoj...@redhat.com
Subject [PATCH core] VSphere: Renamed user_data feature to user_iso
Date Thu, 21 Jul 2011 11:02:16 GMT
From: Michal Fojtik <mfojtik@redhat.com>


Signed-off-by: Michal fojtik <mfojtik@redhat.com>
---
 server/lib/deltacloud/base_driver/features.rb      |    8 ++++++++
 .../deltacloud/drivers/vsphere/vsphere_driver.rb   |   12 ++++++------
 server/views/instances/new.html.haml               |    6 +++---
 3 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/server/lib/deltacloud/base_driver/features.rb b/server/lib/deltacloud/base_driver/features.rb
index c3e296f..af1a9c5 100644
--- a/server/lib/deltacloud/base_driver/features.rb
+++ b/server/lib/deltacloud/base_driver/features.rb
@@ -175,6 +175,14 @@ module Deltacloud
       end
     end
 
+    declare_feature :instances, :user_iso do
+      description "Make user-defined ISO available inside instance"
+      operation :create do
+        param :user_iso, :string, :optional, [],
+        "Base64 encoded gzipped ISO file will be accessible as CD-ROM drive in instance"
+      end
+    end
+
     declare_feature :instances, :user_files do
       description "Accept up to 5 files to be placed into the instance before launch."
       operation :create do
diff --git a/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb b/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb
index 20cf483..cff74ca 100644
--- a/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb
+++ b/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb
@@ -27,10 +27,10 @@ module Deltacloud::Drivers::VSphere
     include Deltacloud::Drivers::VSphere::Helper
     include Deltacloud::Drivers::VSphere::FileManager
 
-    # You can use 'user_data' feature to set 'user_data' parameter when creating
+    # You can use 'user_iso' feature to set 'user_iso' parameter when creating
     # a new instance where this parameter can hold gzipped CDROM iso which will
     # be mounted into created instance after boot
-    feature :instances, :user_data
+    feature :instances, :user_iso
     feature :instances, :user_name
 
     # There is just one hardware profile where memory is measured using maximum
@@ -229,12 +229,12 @@ module Deltacloud::Drivers::VSphere
         # encoded gzipped ISO image.
         # This image will be uplaoded to the Datastore given in 'realm_id'
         # parameter and them attached to instance.
-        if opts[:user_data] and not opts[:user_data].empty?
+        if opts[:user_iso] and not opts[:user_iso].empty?
           device = vm[:instance].config.hardware.device.select { |hw| hw.class == RbVmomi::VIM::VirtualCdrom
}.first
           if device
-            VSphere::FileManager::store_iso!(datastore, opts[:user_data], "#{opts[:name]}.iso")
+            VSphere::FileManager::store_iso!(datastore, opts[:user_iso], "#{opts[:name]}.iso")
             machine_config[:extraConfig] << {
-              :key => 'user_data_file', :value => "#{opts[:name]}.iso"
+              :key => 'user_iso_file', :value => "#{opts[:name]}.iso"
             }
             device.backing = RbVmomi::VIM.VirtualCdromIsoBackingInfo(:fileName => "[#{opts[:realm_id]
|| vm[:datastore]}] "+
                                                                      "/#{VSphere::FileManager::DIRECTORY_PATH}/#{opts[:name]}.iso")
@@ -299,7 +299,7 @@ module Deltacloud::Drivers::VSphere
     # well.
     def destroy_instance(credentials, instance_id)
       vm = find_vm(credentials, instance_id)
-      user_file = vm[:instance].config[:extraConfig].select { |k| k.key == 'user_data_file'
}.first
+      user_file = vm[:instance].config[:extraConfig].select { |k| k.key == 'user_iso_file'
}.first
       VSphere::FileManager::delete_iso!(vm[:instance].send(:datastore).first, user_file.value)
if user_file
       vm[:instance].Destroy_Task.wait_for_completion
     end
diff --git a/server/views/instances/new.html.haml b/server/views/instances/new.html.haml
index 6f8a086..a153535 100644
--- a/server/views/instances/new.html.haml
+++ b/server/views/instances/new.html.haml
@@ -27,11 +27,11 @@
         %option
         - @load_balancers.each do |load_balancer|
           %option{:value => load_balancer.id} #{load_balancer.id}
-  -if driver_has_feature?(:user_data)
+  -if driver_has_feature?(:user_iso)
     %p
       %label
-        User data (Base64):
-      %textarea{:name => :user_data, :cols => 60, :rows => 10, :placeholder =>
"Copy&Paste a Base64 string here..."}
+        User ISO (Base64):
+      %textarea{:name => :user_iso, :cols => 60, :rows => 10, :placeholder =>
"Copy&Paste a Base64 string here..."}
   -if driver_has_feature?(:authentication_key)
     %p
       %label
-- 
1.7.4.1


Mime
View raw message