< prev index next >
test/lib/jdk/test/lib/containers/docker/DockerTestUtils.java
Print this page
@ rev 55684 : 8227642: [TESTBUG] Make docker tests podman compatible
| Reviewed-by: mseledtsov, iignatyev
~
*** 35,44 ****
--- 35,46 ----
import java.nio.file.attribute.BasicFileAttributes;
import java.util.Arrays;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+ import java.util.Map;
+ import jdk.test.lib.Platform;
import jdk.test.lib.Utils;
import jdk.test.lib.process.OutputAnalyzer;
import jdk.test.lib.process.ProcessTools;
import jtreg.SkippedException;
*** 52,66 ****
// Having too many lines in the main test output will result
// in JT harness trimming the output, and can lead to loss of useful
// diagnostic information.
private static final int MAX_LINES_TO_COPY_FOR_CHILD_STDOUT = 100;
- // Use this property to specify docker location on your system.
- // E.g.: "/usr/local/bin/docker".
- private static final String DOCKER_COMMAND =
- System.getProperty("jdk.test.docker.command", "docker");
-
// Set this property to true to retain image after test. By default
// images are removed after test execution completes.
// Retaining the image can be useful for diagnostics and image inspection.
// E.g.: start image interactively: docker run -it <IMAGE_NAME>.
public static final boolean RETAIN_IMAGE_AFTER_TEST =
--- 54,63 ----
*** 114,124 ****
* @return true if docker engine is available and usable
* @throws Exception
*/
private static boolean isDockerEngineAvailableCheck() throws Exception {
try {
! execute(DOCKER_COMMAND, "ps")
.shouldHaveExitValue(0)
.shouldContain("CONTAINER")
.shouldContain("IMAGE");
} catch (Exception e) {
return false;
--- 111,121 ----
* @return true if docker engine is available and usable
* @throws Exception
*/
private static boolean isDockerEngineAvailableCheck() throws Exception {
try {
! execute(Platform.DOCKER_COMMAND, "ps")
.shouldHaveExitValue(0)
.shouldContain("CONTAINER")
.shouldContain("IMAGE");
} catch (Exception e) {
return false;
*** 177,189 ****
generateDockerFile(buildDir.resolve("Dockerfile"),
DockerfileConfig.getBaseImageName(),
DockerfileConfig.getBaseImageVersion());
try {
// Build the docker
! execute(DOCKER_COMMAND, "build", "--no-cache", "--tag", imageName, buildDir.toString())
! .shouldHaveExitValue(0)
! .shouldContain("Successfully built");
} catch (Exception e) {
// If docker image building fails there is a good chance it happens due to environment and/or
// configuration other than product failure. Throw jtreg skipped exception in such case
// instead of failing the test.
throw new SkippedException("Building docker image failed. Details: \n" + e.getMessage());
--- 174,185 ----
generateDockerFile(buildDir.resolve("Dockerfile"),
DockerfileConfig.getBaseImageName(),
DockerfileConfig.getBaseImageVersion());
try {
// Build the docker
! execute(Platform.DOCKER_COMMAND, "build", "--no-cache", "--tag", imageName, buildDir.toString())
! .shouldHaveExitValue(0);
} catch (Exception e) {
// If docker image building fails there is a good chance it happens due to environment and/or
// configuration other than product failure. Throw jtreg skipped exception in such case
// instead of failing the test.
throw new SkippedException("Building docker image failed. Details: \n" + e.getMessage());
*** 200,210 ****
* @throws Exception
*/
public static List<String> buildJavaCommand(DockerRunOptions opts) throws Exception {
List<String> cmd = new ArrayList<>();
! cmd.add(DOCKER_COMMAND);
cmd.add("run");
if (opts.tty)
cmd.add("--tty=true");
if (opts.removeContainerAfterUse)
cmd.add("--rm");
--- 196,206 ----
* @throws Exception
*/
public static List<String> buildJavaCommand(DockerRunOptions opts) throws Exception {
List<String> cmd = new ArrayList<>();
! cmd.add(Platform.DOCKER_COMMAND);
cmd.add("run");
if (opts.tty)
cmd.add("--tty=true");
if (opts.removeContainerAfterUse)
cmd.add("--rm");
*** 242,252 ****
*
* @param DockerRunOptions optins for running docker
* @throws Exception
*/
public static void removeDockerImage(String imageNameAndTag) throws Exception {
! execute(DOCKER_COMMAND, "rmi", "--force", imageNameAndTag);
}
/**
--- 238,248 ----
*
* @param DockerRunOptions optins for running docker
* @throws Exception
*/
public static void removeDockerImage(String imageNameAndTag) throws Exception {
! execute(Platform.DOCKER_COMMAND, "rmi", "--force", imageNameAndTag);
}
/**
< prev index next >