mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-08 05:26:58 +02:00
commit
1539ff334e
@ -63,7 +63,7 @@
|
|||||||
"num": 9,
|
"num": 9,
|
||||||
"label":"STATE",
|
"label":"STATE",
|
||||||
"type":"data",
|
"type":"data",
|
||||||
"blocks":"2097152"
|
"blocks":"1048576"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"vm": [
|
"vm": [
|
||||||
@ -73,6 +73,14 @@
|
|||||||
"type":"data",
|
"type":"data",
|
||||||
"blocks":"6291456"
|
"blocks":"6291456"
|
||||||
}
|
}
|
||||||
|
],
|
||||||
|
"vagrant": [
|
||||||
|
{
|
||||||
|
"num": 9,
|
||||||
|
"label":"STATE",
|
||||||
|
"type":"data",
|
||||||
|
"blocks":"33587200"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -48,6 +48,9 @@ IMG_DEFAULT_OEM_PACKAGE=
|
|||||||
# May be raw, qcow2 (qemu), or vmdk (vmware, virtualbox)
|
# May be raw, qcow2 (qemu), or vmdk (vmware, virtualbox)
|
||||||
IMG_DEFAULT_DISK_FORMAT=raw
|
IMG_DEFAULT_DISK_FORMAT=raw
|
||||||
|
|
||||||
|
# Name of the partition layout from legacy_disk_layout.json
|
||||||
|
IMG_DEFAULT_DISK_LAYOUT=base
|
||||||
|
|
||||||
# Name of the target config format, default is no config
|
# Name of the target config format, default is no config
|
||||||
IMG_DEFAULT_CONF_FORMAT=
|
IMG_DEFAULT_CONF_FORMAT=
|
||||||
|
|
||||||
@ -56,6 +59,7 @@ IMG_DEFAULT_MEM=1024
|
|||||||
|
|
||||||
## qemu
|
## qemu
|
||||||
IMG_qemu_DISK_FORMAT=qcow2
|
IMG_qemu_DISK_FORMAT=qcow2
|
||||||
|
IMG_qemu_DISK_LAYOUT=vm
|
||||||
IMG_qemu_CONF_FORMAT=qemu
|
IMG_qemu_CONF_FORMAT=qemu
|
||||||
|
|
||||||
## xen
|
## xen
|
||||||
@ -65,24 +69,29 @@ IMG_xen_CONF_FORMAT=xl
|
|||||||
|
|
||||||
## virtualbox
|
## virtualbox
|
||||||
IMG_virtualbox_DISK_FORMAT=vmdk
|
IMG_virtualbox_DISK_FORMAT=vmdk
|
||||||
|
IMG_virtualbox_DISK_LAYOUT=vm
|
||||||
IMG_virtualbox_CONF_FORMAT=ovf
|
IMG_virtualbox_CONF_FORMAT=ovf
|
||||||
|
|
||||||
## vagrant
|
## vagrant
|
||||||
IMG_vagrant_DISK_FORMAT=vmdk
|
IMG_vagrant_DISK_FORMAT=vmdk
|
||||||
|
IMG_vagrant_DISK_LAYOUT=vagrant
|
||||||
IMG_vagrant_CONF_FORMAT=vagrant
|
IMG_vagrant_CONF_FORMAT=vagrant
|
||||||
IMG_vagrant_OEM_PACKAGE=oem-vagrant
|
IMG_vagrant_OEM_PACKAGE=oem-vagrant
|
||||||
|
|
||||||
## vagrant_vmware
|
## vagrant_vmware
|
||||||
IMG_vagrant_vmware_fusion_DISK_FORMAT=vmdk
|
IMG_vagrant_vmware_fusion_DISK_FORMAT=vmdk
|
||||||
|
IMG_vagrant_vmware_fusion_DISK_LAYOUT=vagrant
|
||||||
IMG_vagrant_vmware_fusion_CONF_FORMAT=vagrant_vmware_fusion
|
IMG_vagrant_vmware_fusion_CONF_FORMAT=vagrant_vmware_fusion
|
||||||
IMG_vagrant_vmware_fusion_OEM_PACKAGE=oem-vagrant
|
IMG_vagrant_vmware_fusion_OEM_PACKAGE=oem-vagrant
|
||||||
|
|
||||||
## vmware
|
## vmware
|
||||||
IMG_vmware_DISK_FORMAT=vmdk
|
IMG_vmware_DISK_FORMAT=vmdk
|
||||||
|
IMG_vmware_DISK_LAYOUT=vm
|
||||||
IMG_vmware_CONF_FORMAT=vmx
|
IMG_vmware_CONF_FORMAT=vmx
|
||||||
|
|
||||||
## vmware_insecure
|
## vmware_insecure
|
||||||
IMG_vmware_insecure_DISK_FORMAT=vmdk
|
IMG_vmware_insecure_DISK_FORMAT=vmdk
|
||||||
|
IMG_vmware_insecure_DISK_LAYOUT=vm
|
||||||
IMG_vmware_insecure_CONF_FORMAT=vmware_zip
|
IMG_vmware_insecure_CONF_FORMAT=vmware_zip
|
||||||
IMG_vmware_insecure_OEM_PACKAGE=oem-vagrant
|
IMG_vmware_insecure_OEM_PACKAGE=oem-vagrant
|
||||||
|
|
||||||
@ -92,6 +101,7 @@ IMG_ami_OEM_PACKAGE=oem-ami
|
|||||||
|
|
||||||
## openstack, supports ec2's metadata format so use oem-ami
|
## openstack, supports ec2's metadata format so use oem-ami
|
||||||
IMG_openstack_DISK_FORMAT=qcow2
|
IMG_openstack_DISK_FORMAT=qcow2
|
||||||
|
IMG_openstack_DISK_LAYOUT=vm
|
||||||
IMG_openstack_OEM_PACKAGE=oem-ami
|
IMG_openstack_OEM_PACKAGE=oem-ami
|
||||||
|
|
||||||
## pxe, which is an cpio image
|
## pxe, which is an cpio image
|
||||||
@ -182,7 +192,7 @@ _disk_ext() {
|
|||||||
# alternate filesystem image for the state partition instead of the one
|
# alternate filesystem image for the state partition instead of the one
|
||||||
# from VM_SRC_IMG. Start new image using the given disk layout.
|
# from VM_SRC_IMG. Start new image using the given disk layout.
|
||||||
unpack_source_disk() {
|
unpack_source_disk() {
|
||||||
local disk_layout="$1"
|
local disk_layout="${1:-$(_get_vm_opt DISK_LAYOUT)}"
|
||||||
local alternate_state_image="$2"
|
local alternate_state_image="$2"
|
||||||
|
|
||||||
if [[ -n "${alternate_state_image}" && ! -f "${alternate_state_image}" ]]
|
if [[ -n "${alternate_state_image}" && ! -f "${alternate_state_image}" ]]
|
||||||
@ -217,7 +227,8 @@ unpack_source_disk() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
resize_state_partition() {
|
resize_state_partition() {
|
||||||
local size_in_bytes="$1"
|
local disk_layout="${1:-$(_get_vm_opt DISK_LAYOUT)}"
|
||||||
|
local size_in_bytes=$(get_filesystem_size "${disk_layout}" ${NUM_STATEFUL})
|
||||||
local size_in_sectors=$(( size_in_bytes / 512 ))
|
local size_in_sectors=$(( size_in_bytes / 512 ))
|
||||||
local size_in_mb=$(( size_in_bytes / 1024 / 1024 ))
|
local size_in_mb=$(( size_in_bytes / 1024 / 1024 ))
|
||||||
local original_size=$(stat -c%s "${TEMP_STATE}")
|
local original_size=$(stat -c%s "${TEMP_STATE}")
|
||||||
|
@ -37,7 +37,7 @@ DEFINE_string format "qemu" \
|
|||||||
"Output format, one of: ${VALID_IMG_TYPES[*]}"
|
"Output format, one of: ${VALID_IMG_TYPES[*]}"
|
||||||
DEFINE_string from "" \
|
DEFINE_string from "" \
|
||||||
"Directory containing rootfs.image and mbr.image"
|
"Directory containing rootfs.image and mbr.image"
|
||||||
DEFINE_string disk_layout "vm" \
|
DEFINE_string disk_layout "" \
|
||||||
"The disk layout type to use for this image."
|
"The disk layout type to use for this image."
|
||||||
DEFINE_integer mem "${DEFAULT_MEM}" \
|
DEFINE_integer mem "${DEFAULT_MEM}" \
|
||||||
"Memory size for the vm config in MBs."
|
"Memory size for the vm config in MBs."
|
||||||
@ -111,9 +111,8 @@ trap vm_cleanup EXIT
|
|||||||
|
|
||||||
# Unpack image, using alternate state image if defined
|
# Unpack image, using alternate state image if defined
|
||||||
# Resize to use all available space in new disk layout
|
# Resize to use all available space in new disk layout
|
||||||
STATEFUL_SIZE=$(get_filesystem_size "${FLAGS_disk_layout}" ${NUM_STATEFUL})
|
|
||||||
unpack_source_disk "${FLAGS_disk_layout}" "${FLAGS_state_image}"
|
unpack_source_disk "${FLAGS_disk_layout}" "${FLAGS_state_image}"
|
||||||
resize_state_partition "${STATEFUL_SIZE}"
|
resize_state_partition "${FLAGS_disk_layout}"
|
||||||
|
|
||||||
# Optionally install any OEM packages
|
# Optionally install any OEM packages
|
||||||
install_oem_package
|
install_oem_package
|
||||||
|
Loading…
Reference in New Issue
Block a user