From 4c35d0911a28a7b80ff780d5477fb72a0d7e7b29 Mon Sep 17 00:00:00 2001 From: Peng Tao Date: Wed, 25 Dec 2019 00:56:15 -0800 Subject: [PATCH] vc: set store RunVMStoragePath for ut Otherwise we fail ut on failures like: === RUN TestCloudHypervisorCleanupVM --- FAIL: TestCloudHypervisorCleanupVM (0.00s) clh_test.go:191: cloudHypervisor.cleanupVM() expected error != open /run/vc/vm: permission denied clh_test.go:200: Unexpected error = stat /run/vc/vm/cleanVMID: permission denied === RUN TestClhCreateSandbox --- PASS: TestClhCreateSandbox (0.00s) === RUN TestClooudHypervisorStartSandbox time="2019-12-25T00:48:47-08:00" level=error msg="trace called before context set" source=virtcontainers subsystem=cloudHypervisor type=bug --- FAIL: TestClooudHypervisorStartSandbox (0.00s) Error Trace: clh_test.go:266 Error: Received unexpected error: mkdir /run/vc/vm: permission denied Signed-off-by: Peng Tao --- virtcontainers/virtcontainers_test.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/virtcontainers/virtcontainers_test.go b/virtcontainers/virtcontainers_test.go index fe96644143..e9af85826d 100644 --- a/virtcontainers/virtcontainers_test.go +++ b/virtcontainers/virtcontainers_test.go @@ -57,21 +57,28 @@ var testVirtiofsdPath = "" var testHyperstartCtlSocket = "" var testHyperstartTtySocket = "" +var savedRunVMStoragePathFunc func() string + // cleanUp Removes any stale sandbox/container state that can affect // the next test to run. func cleanUp() { globalSandboxList.removeSandbox(testSandboxID) store.DeleteAll() os.RemoveAll(testDir) - os.MkdirAll(testDir, store.DirMode) store.VCStorePrefix = "" + store.RunVMStoragePath = savedRunVMStoragePathFunc setup() } func setup() { - os.Mkdir(filepath.Join(testDir, testBundle), store.DirMode) store.VCStorePrefix = testDir + savedRunVMStoragePathFunc = store.RunVMStoragePath + store.RunVMStoragePath = func() string { + return filepath.Join("testDir", "vm") + } + os.MkdirAll(store.RunVMStoragePath(), store.DirMode) + os.MkdirAll(filepath.Join(testDir, testBundle), store.DirMode) for _, filename := range []string{testQemuKernelPath, testQemuInitrdPath, testQemuImagePath, testQemuPath} { _, err := os.Create(filename)