|
17 | 17 | package org.apache.spark.deploy.k8s.integrationtest.docker |
18 | 18 |
|
19 | 19 | import java.net.URI |
| 20 | +import java.net.URLEncoder |
20 | 21 | import java.nio.file.Paths |
21 | 22 |
|
22 | | -import com.spotify.docker.client.{DefaultDockerClient, DockerCertificates, LoggingBuildHandler} |
| 23 | +import com.spotify.docker.client.{DockerClient, DefaultDockerClient, DockerCertificates, LoggingBuildHandler} |
23 | 24 | import org.apache.http.client.utils.URIBuilder |
24 | 25 | import org.scalatest.concurrent.{Eventually, PatienceConfiguration} |
25 | 26 | import org.scalatest.time.{Minutes, Seconds, Span} |
@@ -61,17 +62,19 @@ private[spark] class SparkDockerImageBuilder |
61 | 62 |
|
62 | 63 | def buildSparkDockerImages(): Unit = { |
63 | 64 | Eventually.eventually(TIMEOUT, INTERVAL) { dockerClient.ping() } |
64 | | - buildImage("spark-base", BASE_DOCKER_FILE) |
65 | | - buildImage("spark-driver", DRIVER_DOCKER_FILE) |
66 | | - buildImage("spark-executor", EXECUTOR_DOCKER_FILE) |
| 65 | + buildImage("spark-base", BASE_DOCKER_FILE, |
| 66 | + "{\"spark_jars\":\"jars\",\"img_path\":\"kubernetes/dockerfiles\"}") |
| 67 | + buildImage("spark-driver", DRIVER_DOCKER_FILE, "{\"base_image\":\"spark-base\"}") |
| 68 | + buildImage("spark-executor", EXECUTOR_DOCKER_FILE, "{\"base_image\":\"spark-base\"}") |
67 | 69 | } |
68 | 70 |
|
69 | | - private def buildImage(name: String, dockerFile: String): Unit = { |
| 71 | + private def buildImage(name: String, dockerFile: String, buildArgs: String): Unit = { |
70 | 72 | dockerClient.build( |
71 | 73 | DOCKER_BUILD_PATH, |
72 | 74 | name, |
73 | 75 | dockerFile, |
74 | | - new LoggingBuildHandler()) |
| 76 | + new LoggingBuildHandler(), |
| 77 | + DockerClient.BuildParam.create("buildargs", URLEncoder.encode(buildArgs, "UTF-8"))) |
75 | 78 | logInfo(s"Built $name docker image") |
76 | 79 | } |
77 | 80 | } |
0 commit comments