This is an automated email from the ASF dual-hosted git repository.

dongjoon pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/spark.git


The following commit(s) were added to refs/heads/master by this push:
     new d966154af2b [SPARK-39466][CORE][TESTS] Ensure clean 
`core/temp-secrets/` directory after `SecurityManagerSuite`
d966154af2b is described below

commit d966154af2b33a9b406b58636c23ae3d70e10527
Author: yangjie01 <yangji...@baidu.com>
AuthorDate: Tue Jun 14 09:03:59 2022 -0700

    [SPARK-39466][CORE][TESTS] Ensure clean `core/temp-secrets/` directory 
after `SecurityManagerSuite`
    
    ### What changes were proposed in this pull request?
    This pr refactor `createTempSecretFile` in `SecurityManagerSuite` to ensure 
clean `core/temp-secrets/` directory after `SecurityManagerSuite`.
    
    ### Why are the changes needed?
    To ensure clean `core/temp-secrets/` directory after `SecurityManagerSuite`.
    
    ### Does this PR introduce _any_ user-facing change?
    No
    
    ### How was this patch tested?
    
    - Pass Github Actions
    - Manual test
    
    run following commands:
    
    ```
    mvn clean install -DskipTests -pl core -am
    mvn clean test -Dtest=none 
-DwildcardSuites=org.apache.spark.SecurityManagerSuite -pl core
    git status
    ```
    
    **Before**
    
    The `core/temp-secrets/` directory is not cleaned up
    
    **After**
    
    The `core/temp-secrets/` directory has been cleaned up
    
    Closes #36867 from LuciferYang/SPARK-39466.
    
    Authored-by: yangjie01 <yangji...@baidu.com>
    Signed-off-by: Dongjoon Hyun <dongj...@apache.org>
---
 .../org/apache/spark/SecurityManagerSuite.scala    | 35 ++++++++++++----------
 1 file changed, 20 insertions(+), 15 deletions(-)

diff --git a/core/src/test/scala/org/apache/spark/SecurityManagerSuite.scala 
b/core/src/test/scala/org/apache/spark/SecurityManagerSuite.scala
index b31a6b4e2f9..44e338c6f00 100644
--- a/core/src/test/scala/org/apache/spark/SecurityManagerSuite.scala
+++ b/core/src/test/scala/org/apache/spark/SecurityManagerSuite.scala
@@ -404,15 +404,17 @@ class SecurityManagerSuite extends SparkFunSuite with 
ResetSystemProperties {
   }
 
   test("use executor-specific secret file configuration.") {
-    val secretFileFromDriver = createTempSecretFile("driver-secret")
-    val secretFileFromExecutor = createTempSecretFile("executor-secret")
-    val conf = new SparkConf()
-      .setMaster("k8s://127.0.0.1")
-      .set(AUTH_SECRET_FILE_DRIVER, Some(secretFileFromDriver.getAbsolutePath))
-      .set(AUTH_SECRET_FILE_EXECUTOR, 
Some(secretFileFromExecutor.getAbsolutePath))
-      .set(SecurityManager.SPARK_AUTH_CONF, "true")
-    val mgr = new SecurityManager(conf, authSecretFileConf = 
AUTH_SECRET_FILE_EXECUTOR)
-    assert(encodeFileAsBase64(secretFileFromExecutor) === mgr.getSecretKey())
+    withSecretFile("driver-secret") { secretFileFromDriver =>
+      withSecretFile("executor-secret") { secretFileFromExecutor =>
+        val conf = new SparkConf()
+          .setMaster("k8s://127.0.0.1")
+          .set(AUTH_SECRET_FILE_DRIVER, 
Some(secretFileFromDriver.getAbsolutePath))
+          .set(AUTH_SECRET_FILE_EXECUTOR, 
Some(secretFileFromExecutor.getAbsolutePath))
+          .set(SecurityManager.SPARK_AUTH_CONF, "true")
+        val mgr = new SecurityManager(conf, authSecretFileConf = 
AUTH_SECRET_FILE_EXECUTOR)
+        assert(encodeFileAsBase64(secretFileFromExecutor) === 
mgr.getSecretKey())
+      }
+    }
   }
 
   test("secret file must be defined in both driver and executor") {
@@ -496,10 +498,11 @@ class SecurityManagerSuite extends SparkFunSuite with 
ResetSystemProperties {
                 }
 
               case FILE =>
-                val secretFile = createTempSecretFile()
-                conf.set(AUTH_SECRET_FILE, secretFile.getAbsolutePath)
-                mgr.initializeAuth()
-                assert(encodeFileAsBase64(secretFile) === mgr.getSecretKey())
+                withSecretFile() { secretFile =>
+                  conf.set(AUTH_SECRET_FILE, secretFile.getAbsolutePath)
+                  mgr.initializeAuth()
+                  assert(encodeFileAsBase64(secretFile) === mgr.getSecretKey())
+                }
             }
           }
         }
@@ -511,11 +514,13 @@ class SecurityManagerSuite extends SparkFunSuite with 
ResetSystemProperties {
     Base64.getEncoder.encodeToString(Files.readAllBytes(secretFile.toPath))
   }
 
-  private def createTempSecretFile(contents: String = "test-secret"): File = {
+  private def withSecretFile(contents: String = "test-secret")(f: File => 
Unit): Unit = {
     val secretDir = Utils.createTempDir("temp-secrets")
     val secretFile = new File(secretDir, "temp-secret.txt")
     Files.write(secretFile.toPath, contents.getBytes(UTF_8))
-    secretFile
+    try f(secretFile) finally {
+      Utils.deleteRecursively(secretDir)
+    }
   }
 }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org
For additional commands, e-mail: commits-h...@spark.apache.org

Reply via email to