feat(image_to_vm): Add minimal GCE support.

Simply rolls our disk image into a tarball that can be passed to gcutil.
To actually be useful we need an OEM package to handle SSH keys.
This commit is contained in:
Michael Marineau 2013-10-07 11:31:58 -07:00 committed by Michael Marineau
parent 9179f985d0
commit 0cb0cbf71e

View File

@ -17,6 +17,7 @@ VALID_IMG_TYPES=(
vmware
vmware_insecure
xen
gce
)
# Set at runtime to one of the above types
@ -110,6 +111,9 @@ IMG_pxe_PARTITIONED_IMG=0
IMG_pxe_CONF_FORMAT=pxe
IMG_pxe_OEM_PACKAGE=oem-pxe
## gce, image tarball
IMG_gce_CONF_FORMAT=gce
## rackspace
# TODO: package doesn't exist yet
IMG_rackspace_OEM_PACKAGE=oem-rackspace
@ -695,6 +699,16 @@ EOF
VM_GENERATED_FILES=( "${box}" "${VM_README}" )
}
_write_gce_conf() {
local src_name=$(basename "$VM_SRC_IMG")
local dst_dir=$(dirname "$VM_DST_IMG")
local tar_path="${dst_dir}/$(_src_to_dst_name "${src_name}" ".tar.gz")"
mv "${VM_DST_IMG}" "${VM_TMP_DIR}/disk.raw"
tar -czf "${tar_path}" -C "${VM_TMP_DIR}" "disk.raw"
VM_GENERATED_FILES=( "${tar_path}" )
}
vm_cleanup() {
info "Cleaning up temporary files"
sudo rm -rf "${VM_TMP_DIR}"