From c6bbadd6e06a4ce2b9e44ed6ecaa986faa722114 Mon Sep 17 00:00:00 2001 From: Michael Marineau Date: Tue, 27 Aug 2013 15:47:59 -0700 Subject: [PATCH] feat(image_to_vm): Add 'vmware_insecure' image type. This bundles the vagrant ssh key, vmdk, and vmx into a zip file for easy downloading and login access via ssh. --- build_library/vm_image_util.sh | 69 ++++++++++++++++++++++++++++++++-- 1 file changed, 66 insertions(+), 3 deletions(-) diff --git a/build_library/vm_image_util.sh b/build_library/vm_image_util.sh index dcd6c0aa5f..611f5ba6b1 100644 --- a/build_library/vm_image_util.sh +++ b/build_library/vm_image_util.sh @@ -14,6 +14,7 @@ VALID_IMG_TYPES=( vagrant_vmware_fusion virtualbox vmware + vmware_insecure xen ) @@ -76,6 +77,11 @@ IMG_vagrant_vmware_fusion_OEM_PACKAGE=oem-vagrant IMG_vmware_DISK_FORMAT=vmdk IMG_vmware_CONF_FORMAT=vmx +## vmware_insecure +IMG_vmware_insecure_DISK_FORMAT=vmdk +IMG_vmware_insecure_CONF_FORMAT=vmware_zip +IMG_vmware_insecure_OEM_PACKAGE=oem-vagrant + ## ami IMG_ami_HYBRID_MBR=1 IMG_ami_OEM_PACKAGE=oem-ami @@ -331,9 +337,8 @@ ide0:0.present = "TRUE" ide0:0.fileName = "${dst_name}" ethernet0.present = "TRUE" usb.present = "TRUE" -sound.present = "TRUE" -sound.virtualDev = "es1371" -displayName = "CoreOS" +sound.present = "FALSE" +displayName = "${VM_NAME}" guestOS = "otherlinux" ethernet0.addressType = "generated" floppy0.present = "FALSE" @@ -341,6 +346,64 @@ EOF VM_GENERATED_FILES+=( "${vmx_path}" ) } +_write_vmware_zip_conf() { + local src_name=$(basename "$VM_SRC_IMG") + local dst_name=$(basename "$VM_DST_IMG") + local dst_dir=$(dirname "$VM_DST_IMG") + local vmx_path="${dst_dir}/$(_src_to_dst_name "${src_name}" ".vmx")" + local vmx_file=$(basename "${vmx_path}") + local zip="${dst_dir}/$(_src_to_dst_name "${src_name}" ".zip")" + + _write_vmx_conf "$1" + + # Move the disk/vmx to tmp, they will be zipped. + mv "${VM_DST_IMG}" "${VM_TMP_DIR}/${dst_name}" + mv "${vmx_path}" "${VM_TMP_DIR}/${vmx_file}" + cat > "${VM_TMP_DIR}/insecure_ssh_key" < "${VM_README}" <