* move vixdisklib target to the root Makefile
* use sgdisk to get PARTUUID if blkid failed
Change-Id: Ibd614487278569cafd9cb6fd9e5ee44be2a97dcf
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/1518
Tested-by: gerrit-photon <photon-checkins@vmware.com>
Reviewed-by: suezzelur <anishs@vmware.com>
| ... | ... |
@@ -60,6 +60,7 @@ endif |
| 60 | 60 |
|
| 61 | 61 |
TOOLS_BIN := $(SRCROOT)/tools/bin |
| 62 | 62 |
CONTAIN := $(TOOLS_BIN)/contain |
| 63 |
+VIXDISKUTIL := $(TOOLS_BIN)/vixdiskutil |
|
| 63 | 64 |
|
| 64 | 65 |
.PHONY : all iso clean photon-build-machine photon-vagrant-build photon-vagrant-local cloud-image \ |
| 65 | 66 |
check-tools check-docker check-bison check-g++ check-gawk check-createrepo check-vagrant check-packer check-packer-ovf-plugin check-sanity \ |
| ... | ... |
@@ -449,13 +450,13 @@ photon-vagrant-local: check-packer check-vagrant |
| 449 | 449 |
echo "Unable to find $(PHOTON_STAGE)/photon-$(PHOTON_RELEASE_VERSION)-$(PHOTON_BUILD_NUMBER).iso ... aborting build"; \ |
| 450 | 450 |
fi |
| 451 | 451 |
|
| 452 |
-cloud-image: $(PHOTON_STAGE) iso |
|
| 452 |
+cloud-image: $(PHOTON_STAGE) $(VIXDISKUTIL) iso |
|
| 453 | 453 |
@echo "Building cloud image $(IMG_NAME)..." |
| 454 | 454 |
@cd $(PHOTON_CLOUD_IMAGE_BUILDER_DIR) |
| 455 | 455 |
$(PHOTON_CLOUD_IMAGE_BUILDER) $(PHOTON_CLOUD_IMAGE_BUILDER_DIR) $(IMG_NAME) $(SRCROOT) $(PHOTON_GENERATED_DATA_DIR) $(PHOTON_STAGE)/photon-$(PHOTON_RELEASE_VERSION)-$(PHOTON_BUILD_NUMBER).iso $(ADDITIONAL_RPMS_PATH) |
| 456 | 456 |
|
| 457 | 457 |
|
| 458 |
-cloud-image-all: $(PHOTON_STAGE) iso |
|
| 458 |
+cloud-image-all: $(PHOTON_STAGE) $(VIXDISKUTIL) iso |
|
| 459 | 459 |
@echo "Building cloud images - gce, ami, azure and ova..." |
| 460 | 460 |
@cd $(PHOTON_CLOUD_IMAGE_BUILDER_DIR) |
| 461 | 461 |
$(PHOTON_CLOUD_IMAGE_BUILDER) $(PHOTON_CLOUD_IMAGE_BUILDER_DIR) gce $(SRCROOT) $(PHOTON_GENERATED_DATA_DIR) $(PHOTON_STAGE)/photon-$(PHOTON_RELEASE_VERSION)-$(PHOTON_BUILD_NUMBER).iso $(ADDITIONAL_RPMS_PATH) |
| ... | ... |
@@ -553,3 +554,7 @@ $(CONTAIN): $(TOOLS_BIN) |
| 553 | 553 |
gcc -O2 -std=gnu99 -Wall -Wextra $(SRCROOT)/tools/src/contain/*.c -o $@_unpriv |
| 554 | 554 |
sudo install -o root -g root -m 4755 $@_unpriv $@ |
| 555 | 555 |
|
| 556 |
+$(VIXDISKUTIL): $(TOOLS_BIN) |
|
| 557 |
+ @cd $(SRCROOT)/tools/src/vixDiskUtil && \ |
|
| 558 |
+ make |
|
| 559 |
+ |
| ... | ... |
@@ -73,6 +73,10 @@ rm -rf $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}
|
| 73 | 73 |
mkdir $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}
|
| 74 | 74 |
|
| 75 | 75 |
UUID_VALUE=$(blkid -s UUID -o value /dev/mapper/${DEVICE_NAME}p2)
|
| 76 |
+PARTUUID_VALUE=$(blkid -s PARTUUID -o value /dev/mapper/${DEVICE_NAME}p2)
|
|
| 77 |
+if [ -z "$PARTUUID" ] ; then |
|
| 78 |
+ PARTUUID_VALUE=$(sgdisk -i 2 $DISK_DEVICE | grep "Partition unique GUID" | cut -d ' ' -f 4) |
|
| 79 |
+fi |
|
| 76 | 80 |
|
| 77 | 81 |
mkdir -p $ISO_MOUNT_FOLDER |
| 78 | 82 |
mount -o loop $PHOTON_ISO_PATH $ISO_MOUNT_FOLDER |
| ... | ... |
@@ -87,6 +91,7 @@ rm -f $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}/etc/machine-id
|
| 87 | 87 |
touch $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}/etc/machine-id
|
| 88 | 88 |
rm -f $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}/etc/fstab
|
| 89 | 89 |
echo "UUID=$UUID_VALUE / ext4 defaults 1 1" >> $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}/etc/fstab
|
| 90 |
+sed -i "s/rootpartition=PARTUUID=$/rootpartition=PARTUUID=$PARTUUID_VALUE/" $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}/boot/grub/grub.cfg
|
|
| 90 | 91 |
|
| 91 | 92 |
mkdir -p $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}/var/lib/cloud/seed/nocloud
|
| 92 | 93 |
cat << EOF >> $PHOTON_IMG_OUTPUT_PATH/photon-${IMG_NAME}/var/lib/cloud/seed/nocloud/meta-data
|
| ... | ... |
@@ -64,7 +64,7 @@ fi |
| 64 | 64 |
# |
| 65 | 65 |
# Install grub2. |
| 66 | 66 |
# |
| 67 |
-UUID=$(blkid -s UUID -o value $ROOT_PARTITION_PATH) |
|
| 67 |
+PARTUUID=$(blkid -s PARTUUID -o value $ROOT_PARTITION_PATH) |
|
| 68 | 68 |
BOOT_UUID=$(blkid -s UUID -o value $BOOT_PARTITION_PATH) |
| 69 | 69 |
|
| 70 | 70 |
|
| ... | ... |
@@ -112,13 +112,13 @@ set theme=/boot/grub2/themes/photon/theme.txt |
| 112 | 112 |
menuentry "Photon" {
|
| 113 | 113 |
insmod ext2 |
| 114 | 114 |
insmod part_gpt |
| 115 |
- linux /boot/vmlinuz-4.4.8 init=/lib/systemd/systemd root=UUID=UUID_PLACEHOLDER loglevel=3 ro |
|
| 115 |
+ linux /boot/vmlinuz-4.4.8 init=/lib/systemd/systemd root=PARTUUID=UUID_PLACEHOLDER loglevel=3 ro |
|
| 116 | 116 |
initrd /boot/initrd.img-no-kmods |
| 117 | 117 |
} |
| 118 | 118 |
# End /boot/grub2/grub.cfg |
| 119 | 119 |
EOF |
| 120 | 120 |
|
| 121 |
-sed -i "s/UUID_PLACEHOLDER/$UUID/" "$BUILDROOT"/boot/grub2/grub.cfg > ${LOGFILE}
|
|
| 121 |
+sed -i "s/UUID_PLACEHOLDER/$PARTUUID/" "$BUILDROOT"/boot/grub2/grub.cfg > ${LOGFILE}
|
|
| 122 | 122 |
|
| 123 | 123 |
#Cleanup the workspace directory |
| 124 | 124 |
rm -rf "$BUILDROOT"/tools |
| ... | ... |
@@ -13,10 +13,6 @@ sed "s|VMDK_IMAGE|$PHOTON_IMG_OUTPUT_PATH/photon-custom.vmdk|" vmx-template > /t |
| 13 | 13 |
|
| 14 | 14 |
cp ../update_custom_password.py $PHOTON_IMG_OUTPUT_PATH/ |
| 15 | 15 |
|
| 16 |
-cd $SRC_ROOT/tools/src/vixDiskUtil |
|
| 17 |
-mkdir -p $SRC_ROOT/tools/bin |
|
| 18 |
-make clean |
|
| 19 |
-make |
|
| 20 | 16 |
$SRC_ROOT/tools/bin/vixdiskutil -convert $PHOTON_IMG_OUTPUT_PATH/photon-ova.raw -cap 16000 $PHOTON_IMG_OUTPUT_PATH/photon-ova.vmdk |
| 21 | 17 |
$SRC_ROOT/tools/bin/vixdiskutil -wmeta toolsVersion 2147483647 $PHOTON_IMG_OUTPUT_PATH/photon-ova.vmdk |
| 22 | 18 |
|
| ... | ... |
@@ -13,10 +13,6 @@ sed "s|VMDK_IMAGE|$PHOTON_IMG_OUTPUT_PATH/photon-generic-custom.vmdk|" vmx-gener |
| 13 | 13 |
|
| 14 | 14 |
cp ../update_custom_password.py $PHOTON_IMG_OUTPUT_PATH/ |
| 15 | 15 |
|
| 16 |
-cd $SRC_ROOT/tools/src/vixDiskUtil |
|
| 17 |
-mkdir -p $SRC_ROOT/tools/bin |
|
| 18 |
-make clean |
|
| 19 |
-make |
|
| 20 | 16 |
$SRC_ROOT/tools/bin/vixdiskutil -convert $PHOTON_IMG_OUTPUT_PATH/photon-ova_generic.raw -cap 16000 $PHOTON_IMG_OUTPUT_PATH/photon-generic-ova.vmdk |
| 21 | 17 |
$SRC_ROOT/tools/bin/vixdiskutil -wmeta toolsVersion 2147483647 $PHOTON_IMG_OUTPUT_PATH/photon-generic-ova.vmdk |
| 22 | 18 |
|
| ... | ... |
@@ -9,11 +9,6 @@ sed "s|VMDK_IMAGE|$PHOTON_IMG_OUTPUT_PATH/photon-ova-ovs.vmdk|" vmx-ovs-template |
| 9 | 9 |
|
| 10 | 10 |
cp ../update_custom_password.py $PHOTON_IMG_OUTPUT_PATH/ |
| 11 | 11 |
|
| 12 |
-cd $SRC_ROOT/tools/src/vixDiskUtil |
|
| 13 |
-mkdir -p $SRC_ROOT/tools/bin |
|
| 14 |
-make clean |
|
| 15 |
-make |
|
| 16 |
- |
|
| 17 | 12 |
cd $PHOTON_IMG_OUTPUT_PATH |
| 18 | 13 |
|
| 19 | 14 |
DISK_DEVICE=`losetup --show -f ${PHOTON_IMG_OUTPUT_PATH}/photon-ova_ovs.raw`
|
| ... | ... |
@@ -7,11 +7,6 @@ rm -f $PHOTON_IMG_OUTPUT_PATH/*.vmdk |
| 7 | 7 |
rm -f $PHOTON_IMG_OUTPUT_PATH/*.ova |
| 8 | 8 |
sed "s|VMDK_IMAGE|$PHOTON_IMG_OUTPUT_PATH/photon-ova-uefi.vmdk|" vmx-uefi-template > /tmp/vmx-temp-uefi.vmx |
| 9 | 9 |
|
| 10 |
-cd $SRC_ROOT/tools/src/vixDiskUtil |
|
| 11 |
-mkdir -p $SRC_ROOT/tools/bin |
|
| 12 |
-make clean |
|
| 13 |
-make |
|
| 14 |
- |
|
| 15 | 10 |
cd $PHOTON_IMG_OUTPUT_PATH |
| 16 | 11 |
|
| 17 | 12 |
DISK_DEVICE=`losetup --show -f ${PHOTON_IMG_OUTPUT_PATH}/photon-ova_uefi.raw`
|