From 9029ae77ac5c553c4bad1e2a19d48d4e0b375ffb Mon Sep 17 00:00:00 2001 From: Christopher Batey Date: Tue, 12 Feb 2019 08:06:52 +0000 Subject: [PATCH] Clean up old docker containers at start of a docker test Fixes #26203 --- .../scala/akka/io/dns/DockerBindDnsService.scala | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/akka-actor-tests/src/test/scala/akka/io/dns/DockerBindDnsService.scala b/akka-actor-tests/src/test/scala/akka/io/dns/DockerBindDnsService.scala index d986804856..cb7ac6c8db 100644 --- a/akka-actor-tests/src/test/scala/akka/io/dns/DockerBindDnsService.scala +++ b/akka-actor-tests/src/test/scala/akka/io/dns/DockerBindDnsService.scala @@ -7,7 +7,7 @@ package akka.io.dns import collection.JavaConverters._ import akka.testkit.AkkaSpec import com.spotify.docker.client.DefaultDockerClient -import com.spotify.docker.client.DockerClient.LogsParam +import com.spotify.docker.client.DockerClient.{ ListContainersParam, LogsParam } import com.spotify.docker.client.messages.{ ContainerConfig, HostConfig, PortBinding } import org.scalatest.concurrent.Eventually @@ -53,7 +53,15 @@ trait DockerBindDnsService extends Eventually { self: AkkaSpec ⇒ ) .build() - val creation = client.createContainer(containerConfig, "akka-test-dns-" + getClass.getCanonicalName) + val containerName = "akka-test-dns-" + getClass.getCanonicalName + + client.listContainers().asScala.filter(_.names().contains(containerName)) + .foreach(c ⇒ { + log.debug("Removing container id: {} from previous test run", c.id()) + client.removeContainer(c.id()) + }) + + val creation = client.createContainer(containerConfig, containerName) creation.warnings() should be(null) id = Some(creation.id())