diff --git a/tests/vm/Makefile.include b/tests/vm/Makefile.include index e94d95ec54..f3a3a1c751 100644 --- a/tests/vm/Makefile.include +++ b/tests/vm/Makefile.include @@ -84,6 +84,7 @@ $(IMAGES_DIR)/%.img: $(SRC_PATH)/tests/vm/% \ $(if $(QEMU_LOCAL),--build-path $(BUILD_DIR)) \ $(if $(EFI_AARCH64),--efi-aarch64 $(EFI_AARCH64)) \ $(if $(LOG_CONSOLE),--log-console) \ + --source-path $(SRC_PATH) \ --image "$@" \ --force \ --build-image $@, \ diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py index 0f2e436ed3..254e11c932 100644 --- a/tests/vm/basevm.py +++ b/tests/vm/basevm.py @@ -96,6 +96,7 @@ class BaseVM(object): self._genisoimage = args.genisoimage self._build_path = args.build_path self._efi_aarch64 = args.efi_aarch64 + self._source_path = args.source_path # Allow input config to override defaults. self._config = DEFAULT_CONFIG.copy() if config != None: @@ -591,6 +592,9 @@ def parse_args(vmcls): parser.add_argument("--build-path", default=None, help="Path of build directory, "\ "for using build tree QEMU binary. ") + parser.add_argument("--source-path", default=None, + help="Path of source directory, "\ + "for finding additional files. ") parser.add_argument("--interactive", "-I", action="store_true", help="Interactively run command") parser.add_argument("--snapshot", "-s", action="store_true", diff --git a/tests/vm/centos.aarch64 b/tests/vm/centos.aarch64 index e687b93e52..81c3004c3c 100755 --- a/tests/vm/centos.aarch64 +++ b/tests/vm/centos.aarch64 @@ -64,7 +64,7 @@ class CentosAarch64VM(basevm.BaseVM): def create_kickstart(self): """Generate the kickstart file used to generate the centos image.""" # Start with the template for the kickstart. - ks_file = "../tests/vm/centos-8-aarch64.ks" + ks_file = self._source_path + "/tests/vm/centos-8-aarch64.ks" subprocess.check_call("cp {} ./ks.cfg".format(ks_file), shell=True) # Append the ssh keys to the kickstart file # as the post processing phase of installation.