From 8bacd765d0a5cf8bec5650b79a2fcbb7e26e4947 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Deckert?= Date: Fri, 5 Feb 2021 16:41:23 +0100 Subject: [PATCH] allow the creation of ova images requires open-vmdk, a gentoo ebuild is available here: https://git.unitas-network.de/Gentoo/unitas-misc/src/branch/master/app-emulation/open-vmdk --- Makefile | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 20d2972..6f65b99 100644 --- a/Makefile +++ b/Makefile @@ -10,6 +10,9 @@ RAW_IMAGE = $(IMAGES)/$(APPLIANCE).img QCOW_IMAGE = $(IMAGES)/$(APPLIANCE).qcow VMDK_IMAGE = $(IMAGES)/$(APPLIANCE).vmdk VMDK_TYPE = IDE +OVA_IMAGE = $(IMAGES)/$(APPLIANCE).ova +OVA_NUM_CPUS = 1 +OVA_MEM_SIZE = 1024 XVA_IMAGE = $(IMAGES)/$(APPLIANCE).xva LST_FILE = $(IMAGES)/$(APPLIANCE)-packages.lst CHECKSUMS = $(IMAGES)/SHA256SUMS @@ -312,6 +315,16 @@ endif vmdk: $(VMDK_IMAGE) +NUM_CPUS := $(OVA_NUM_CPUS) +MEM_SIZE := $(OVA_MEM_SIZE) +export NUM_CPUS MEM_SIZE + +$(OVA_IMAGE): $(VMDK_IMAGE) + @print Creating `basename $(OVA_IMAGE)` + cd $(IMAGES) && mkova.sh $(APPLIANCE) $(VMDK_IMAGE) /usr/share/open-vmdk/template.ovf + +ova: $(OVA_IMAGE) + $(STAGE4_TARBALL): $(PORTAGE_DIR) stage3-$(VA_ARCH).tar.xz appliances/$(APPLIANCE) configs/rsync-excludes $(MAKE) $(STAGE3) $(MAKE) $(PREPROOT) @@ -380,6 +393,7 @@ help: @echo 'image - Build a raw VM image from stage4' @echo 'qcow - Build a qcow VM image from a raw image' @echo 'vmdk - Build a vmdk image from a raw image' + @echo 'ova - Build a ova image from a vmdk image' @echo 'xva - Build an xva image from a raw image' @echo 'appliance-list - List built-in appliances' @echo 'help - Show this help' @@ -400,4 +414,4 @@ help: @print 'Example to build the base appliance' @echo 'make APPLIANCE=base HEADLESS=YES VIRTIO=YES stage4 qcow clean' -.PHONY: qcow vmdk clean realclean distclean stage4 image stage4 help appliance-list eclean sync_portage sync_stage3 checksums +.PHONY: qcow vmdk ova clean realclean distclean stage4 image stage4 help appliance-list eclean sync_portage sync_stage3 checksums