Author: arkurth
Date: Wed Jan  5 19:29:21 2011
New Revision: 1055596

URL: http://svn.apache.org/viewvc?rev=1055596&view=rev
Log:
VCL-424
Updated VMware.pm:

Added "memsize" values to the %VM_OS_CONFIGURATION hash representing the 
minimum amount of RAM in MB a particular OS requires.  VMs will be assigned 
this amount of memory if the value assigned to the VCL image is less than the 
required MB for the OS.

Added feature to automatically configure the SSH key to persist on ESXi.  This 
is done by configure_vmhost_persistent_ssh_key.

Removed call to set_vcld_post_load_status in load.  This is now handled by the 
OS module.

Updated logic in capture() to determine whether or not the image is captured to 
the repository based on whether or not vmprofile.repositorypath is configured.  
Added check to fail the capture process if vmprofile.vmdisk is local and the 
repository path isn't configured.

Updated variable names in capture() to be less confusing.

Updated capture code and all other places that use the repository path to allow 
the path to either be mounted on the VM host or management node.  Mounting the 
repository directly on the VM host is preferred because VMware's utilities can 
be used to copy and convert a vmdk at the same time.  Having a repository path 
mounted on the VM host is also much faster than using SCP to transfer an image.

Updated capture code to always save images in the repository using the 
2gbsparse format.  Thin disks do not remain thin when copied using other 
utilities.  Also, using SCP to copy a thin disk results in a fat disk.

Updated code to use the management node OS object ($self->mn_os) wherever the 
management node OS was directly interacted with.

Added feature to set the computer's current image and imagerevision to the 
"noimage" image whenever a VM is deleted.  This improves the chances that the 
scheduler assigns a VM that is actually loaded with the requested image.

Updated the VM display name to not contain "(nonpersistent)" if the VM is not 
persistent (default).  It still displays "(persistent)" if the VM is 
persistent.  This makes it easier to distinguish them in the vSphere Client.

Added code to check the space available on the VM host before attempting to 
load a VM.  This is not complete yet and isn't currently being called.  
Subroutines added:
-is_vmx_vmdk_volume_shared
-get_vmx_volume_total_space
-get_vmdk_volume_total_space
-check_vmhost_disk_space
-reclaim_vmhost_disk_space

Added feature to allow the vmprofile paths to either be:
-a full absolute path: /vmfs/volumes/nfs-datastore
-a datastore name: nfs-datastore
-a datastore name in datastore format:  [nfs-datastore]
This allows the same profile to be used by multiple hosts as long as each host 
uses the same datastore names, even if pointing to different locations.

Changed naming of vmx directory to be the same regardless of whether or not the 
VM is persistent.

Added optional $vmx_file_path argument to power_on, power_off, power_reset, and 
power_status.

Modified:
    
incubator/vcl/trunk/managementnode/lib/VCL/Module/Provisioning/VMware/VMware.pm

Reply via email to