diff --git a/common/src/test/java/org/apache/uniffle/common/KerberizedHdfs.java b/common/src/test/java/org/apache/uniffle/common/KerberizedHdfs.java index 312ff9b54d..dc1f19ad4e 100644 --- a/common/src/test/java/org/apache/uniffle/common/KerberizedHdfs.java +++ b/common/src/test/java/org/apache/uniffle/common/KerberizedHdfs.java @@ -25,6 +25,8 @@ import java.net.BindException; import java.net.ServerSocket; import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; import java.security.PrivilegedExceptionAction; import java.util.ArrayList; import java.util.List; @@ -73,7 +75,8 @@ public class KerberizedHdfs implements Serializable { private MiniKdc kdc; private File workDir; - private File kerberizedDfsBaseDir; + private Path tempDir; + private Path kerberizedDfsBaseDir; private MiniDFSCluster kerberizedDfsCluster; @@ -88,12 +91,9 @@ public class KerberizedHdfs implements Serializable { // krb5.conf file path private String krb5ConfFile; - KerberizedHdfs(File workDir, File kerberizedDfsBaseDir) { - this.workDir = workDir; - this.kerberizedDfsBaseDir = kerberizedDfsBaseDir; - } - protected void setup() throws Exception { + tempDir = Files.createTempDirectory("tempDir").toFile().toPath(); + kerberizedDfsBaseDir = Files.createTempDirectory("kerberizedDfsBaseDir").toFile().toPath(); startKDC(); try { @@ -159,7 +159,7 @@ private Configuration createSecureDFSConfig() throws Exception { CommonConfigurationKeysPublic.HADOOP_SECURITY_IMPERSONATION_PROVIDER_CLASS, TestDummyImpersonationProvider.class.getName()); - String keystoresDir = kerberizedDfsBaseDir.getAbsolutePath(); + String keystoresDir = kerberizedDfsBaseDir.toFile().getAbsolutePath(); String sslConfDir = KeyStoreTestUtil.getClasspathDir(testRunnerCls); KeyStoreTestUtil.setupSSLConfig(keystoresDir, sslConfDir, conf, false); @@ -222,6 +222,7 @@ private void startKDC() throws Exception { kdcConf.setProperty(MiniKdc.ORG_DOMAIN, "COM"); kdcConf.setProperty(MiniKdc.KDC_BIND_ADDRESS, hostName); kdcConf.setProperty(MiniKdc.KDC_PORT, "0"); + workDir = tempDir.toFile(); kdc = new MiniKdc(kdcConf, workDir); kdc.start(); diff --git a/common/src/test/java/org/apache/uniffle/common/KerberizedHdfsBase.java b/common/src/test/java/org/apache/uniffle/common/KerberizedHdfsBase.java index d0e30b2562..aec3627565 100644 --- a/common/src/test/java/org/apache/uniffle/common/KerberizedHdfsBase.java +++ b/common/src/test/java/org/apache/uniffle/common/KerberizedHdfsBase.java @@ -17,10 +17,7 @@ package org.apache.uniffle.common; -import java.io.File; - import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.io.TempDir; import org.apache.uniffle.common.security.HadoopSecurityContext; import org.apache.uniffle.common.security.NoOpSecurityContext; @@ -33,13 +30,8 @@ public class KerberizedHdfsBase { protected static KerberizedHdfs kerberizedHdfs; protected static Class testRunner = KerberizedHdfsBase.class; - @TempDir - private static File workDir; - @TempDir - private static File kerberizedDfsBaseDir; - public static void init() throws Exception { - kerberizedHdfs = new KerberizedHdfs(workDir, kerberizedDfsBaseDir); + kerberizedHdfs = new KerberizedHdfs(); kerberizedHdfs.setTestRunner(testRunner); kerberizedHdfs.setup(); }