diff --git a/Makefile b/Makefile index 526239cb2d..0476acf3d4 100644 --- a/Makefile +++ b/Makefile @@ -297,6 +297,7 @@ minikube-iso-%: deploy/iso/minikube-iso/board/minikube/%/rootfs-overlay/usr/bin/ $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* minikube_$*_defconfig $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* host-python $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* + # x86_64 ISO is still BIOS rather than EFI because of AppArmor issues for KVM, and Gen 2 issues for Hyper-V if [ "$*" = "aarch64" ]; then \ mv $(BUILD_DIR)/buildroot/output-aarch64/images/boot.iso $(BUILD_DIR)/minikube-arm64.iso; \ else \ @@ -310,11 +311,10 @@ iso-menuconfig: ## Configure buildroot configuration $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) savedefconfig # Change the kernel configuration for the minikube ISO -.PHONY: linux-menuconfig -linux-menuconfig: ## Configure Linux kernel configuration +linux-menuconfig-%: ## Configure Linux kernel configuration $(MAKE) -C $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/ menuconfig $(MAKE) -C $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/ savedefconfig - cp $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/defconfig deploy/iso/minikube-iso/board/minikube/x86_64/linux_x86_64_defconfig + cp $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/defconfig deploy/iso/minikube-iso/board/minikube/$*/linux_$*_defconfig out/minikube-%.iso: $(shell find "deploy/iso/minikube-iso" -type f) ifeq ($(IN_DOCKER),1) @@ -330,9 +330,6 @@ iso_in_docker: --user $(shell id -u):$(shell id -g) --env HOME=/tmp --env IN_DOCKER=1 \ $(ISO_BUILD_IMAGE) /bin/bash -test-iso: - go test -v $(INTEGRATION_TESTS_TO_RUN) --tags=iso --minikube-start-args="--iso-url=file://$(shell pwd)/out/buildroot/output/images/boot.iso" - .PHONY: test-pkg test-pkg/%: ## Trigger packaging test go test -v -test.timeout=60m ./$* --tags="$(MINIKUBE_BUILD_TAGS)" diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk index f5185876cc..0ab94ba0e8 100644 --- a/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk @@ -25,6 +25,8 @@ CRI_DOCKERD_AARCH64_ENV = \ CRI_DOCKERD_AARCH64_COMPILE_SRC = $(CRI_DOCKERD_AARCH64_GOPATH)/src/github.com/Mirantis/cri-dockerd CRI_DOCKERD_AARCH64_BUILDFLAGS = "-ldflags '-X github.com/Mirantis/cri-dockerd/version.Version=$(CRI_DOCKERD_AARCH64_VER) -X github.com/Mirantis/cri-dockerd/version.GitCommit=$(CRI_DOCKERD_AARCH64_REV)'" +# If https://github.com/Mirantis/cri-dockerd/blob/master/packaging/Makefile changes, then this will almost certainly need to change +# This uses the static make target at the top level Makefile, since that builds everything, then picks out the arm64 binary define CRI_DOCKERD_AARCH64_BUILD_CMDS $(CRI_DOCKERD_AARCH64_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) LDFLAGS=$(CRI_DOCKERD_AARCH64_BUILDFLAGS) GO_VERSION=$(GO_VERSION) -C $(@D) VERSION=$(CRI_DOCKERD_AARCH64_VER) REVISION=$(CRI_DOCKERD_AARCH64_REV) static endef diff --git a/deploy/iso/minikube-iso/configs/minikube_aarch64_defconfig b/deploy/iso/minikube-iso/configs/minikube_aarch64_defconfig index 0fcad243a5..2ab5989e6a 100644 --- a/deploy/iso/minikube-iso/configs/minikube_aarch64_defconfig +++ b/deploy/iso/minikube-iso/configs/minikube_aarch64_defconfig @@ -1,7 +1,7 @@ # Architecture BR2_aarch64=y -# Toolchainmv +# Toolchain BR2_TOOLCHAIN_BUILDROOT_WCHAR=y # System diff --git a/deploy/iso/minikube-iso/configs/minikube_x86_64_defconfig b/deploy/iso/minikube-iso/configs/minikube_x86_64_defconfig index c1e1792995..2623be4091 100644 --- a/deploy/iso/minikube-iso/configs/minikube_x86_64_defconfig +++ b/deploy/iso/minikube-iso/configs/minikube_x86_64_defconfig @@ -15,10 +15,14 @@ BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y # Bootloader +# To turn the x86_64 ISO from BIOS to EFI, uncomment the following 7 lines and comment out the 3 lines beneath it. #BR2_TARGET_GRUB2=y #BR2_TARGET_GRUB2_X86_64_EFI=y #BR2_TARGET_GRUB2_BUILTIN_CONFIG="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/grub-stub.cfg" #BR2_TARGET_GRUB2_BUILTIN_MODULES="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop udf iso9660 search search_fs_file search_fs_uuid search_label" +#BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/post-build.sh" +#BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/post-image.sh" +#BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/genimage.cfg" BR2_TARGET_ROOTFS_ISO9660=y BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/isolinux.cfg" BR2_TARGET_SYSLINUX=y @@ -26,9 +30,6 @@ BR2_TARGET_SYSLINUX=y # Filesystem / image BR2_TARGET_ROOTFS_CPIO=y BR2_TARGET_ROOTFS_CPIO_GZIP=y -#BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/post-build.sh" -#BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/post-image.sh" -#BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/genimage.cfg" # Linux headers same as kernel, a 4.19 series BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y diff --git a/hack/jenkins/build_iso.sh b/hack/jenkins/build_iso.sh index 4c05c5f2e0..8a3c1b52b1 100755 --- a/hack/jenkins/build_iso.sh +++ b/hack/jenkins/build_iso.sh @@ -79,7 +79,7 @@ if [ "$release" = false ]; then sed -i "s|isoBucket := .*|isoBucket := \"${ISO_BUCKET}\"|" pkg/minikube/download/iso.go make generate-docs - git add Makefile pkg/minikube/download/iso.go site/content/en/docs/commands/start.md deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/CHANGELOG deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/CHANGELOG + git add Makefile pkg/minikube/download/iso.go site/content/en/docs/commands/start.md git commit -m "Updating ISO to ${ISO_VERSION}" git push ${ghprbPullAuthorLogin} HEAD:${ghprbSourceBranch}