You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltacloud.apache.org by mf...@apache.org on 2011/09/13 12:27:45 UTC
svn commit: r1170105 - in
/incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere:
vsphere_driver.rb vsphere_filemanager.rb
Author: mfojtik
Date: Tue Sep 13 10:27:45 2011
New Revision: 1170105
URL: http://svn.apache.org/viewvc?rev=1170105&view=rev
Log:
VSphere: Fixed CDROM device connecting if template defines it as disconnected and user_data is set
Modified:
incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb
incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_filemanager.rb
Modified: incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb
URL: http://svn.apache.org/viewvc/incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb?rev=1170105&r1=1170104&r2=1170105&view=diff
==============================================================================
--- incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb (original)
+++ incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_driver.rb Tue Sep 13 10:27:45 2011
@@ -219,6 +219,7 @@ module Deltacloud::Drivers::VSphere
relocate = { :pool => resourcePool, :datastore => datastore }
relocateSpec = RbVmomi::VIM.VirtualMachineRelocateSpec(relocate)
# Set extra configuration for VM, like template_id
+ raise "ERROR: Memory must be multiple of 4" unless valid_memory_value?(opts[:hwp_memory])
machine_config = {
:memoryMB => opts[:hwp_memory],
:numCPUs => opts[:hwp_cpu],
@@ -240,6 +241,7 @@ module Deltacloud::Drivers::VSphere
machine_config[:extraConfig] << {
:key => 'user_data_file', :value => "#{opts[:name]}.iso"
}
+ device.connectable.startConnected = true
device.backing = RbVmomi::VIM.VirtualCdromIsoBackingInfo(:fileName => "[#{opts[:realm_id] || vm[:datastore]}] "+
"/#{VSphere::FileManager::DIRECTORY_PATH}/#{opts[:name]}.iso")
machine_config.merge!({
@@ -259,6 +261,7 @@ module Deltacloud::Drivers::VSphere
machine_config[:extraConfig] << {
:key => 'user_iso_file', :value => "#{opts[:name]}.iso"
}
+ device.connectable.startConnected = true
device.backing = RbVmomi::VIM.VirtualCdromIsoBackingInfo(:fileName => "[#{opts[:realm_id] || vm[:datastore]}] "+
"/#{VSphere::FileManager::DIRECTORY_PATH}/#{opts[:name]}.iso")
machine_config.merge!({
@@ -376,7 +379,7 @@ module Deltacloud::Drivers::VSphere
def convert_realm(datastore)
Realm::new(
:id => datastore.name,
- :name => datastore.name,
+ :name => datastore.name,
:limit => datastore.summary.freeSpace,
:state => datastore.summary.accessible ? 'AVAILABLE' : 'UNAVAILABLE'
)
@@ -400,6 +403,10 @@ module Deltacloud::Drivers::VSphere
new_state
end
+ def valid_memory_value?(val)
+ true if (val.to_i%4) == 0
+ end
+
end
end
Modified: incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_filemanager.rb
URL: http://svn.apache.org/viewvc/incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_filemanager.rb?rev=1170105&r1=1170104&r2=1170105&view=diff
==============================================================================
--- incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_filemanager.rb (original)
+++ incubator/deltacloud/trunk/server/lib/deltacloud/drivers/vsphere/vsphere_filemanager.rb Tue Sep 13 10:27:45 2011
@@ -27,7 +27,7 @@ module VSphere
# he have to pad the content of the iso file
# that mean a limit of 400 kb file since
# 1 sector of iso file = 2048 bytes
- ISO_SECTORS=200
+ ISO_SECTORS=202
RbVmomi::VIM::Datastore::class_eval do
def soap