This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 8999fd2c1cf686df0dc441b090019177dd591b45 Author: Tung Tran <vtt...@linagora.com> AuthorDate: Fri Aug 18 08:57:17 2023 +0700 JAMES-3500 delete dynamic cassandra image after usage --- .../apache/james/backends/cassandra/DockerCassandra.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/backends-common/cassandra/src/test/java/org/apache/james/backends/cassandra/DockerCassandra.java b/backends-common/cassandra/src/test/java/org/apache/james/backends/cassandra/DockerCassandra.java index 7d5e2d4920..cc7a74210d 100644 --- a/backends-common/cassandra/src/test/java/org/apache/james/backends/cassandra/DockerCassandra.java +++ b/backends-common/cassandra/src/test/java/org/apache/james/backends/cassandra/DockerCassandra.java @@ -117,11 +117,15 @@ public class DockerCassandra { // If available try to access the image shared by all maven projects // This avoids rebuilding one for each maven surefire fork. // BUILD_ID should be set by the execution context, here JenkinsFile - return Optional.ofNullable(System.getenv("BUILD_ID")) + return getFixedBuildId() // Default to an image discriminator specific to this JVM .orElse(UUID.randomUUID().toString()); } + private static Optional<String> getFixedBuildId() { + return Optional.ofNullable(System.getenv("BUILD_ID")); + } + private static final int CASSANDRA_PORT = 9042; private static final int CASSANDRA_MEMORY = 1024; @@ -133,10 +137,12 @@ public class DockerCassandra { @SuppressWarnings("resource") public DockerCassandra() { - this("cassandra_4_1_3-" + buildSpecificImageDiscriminator(), AdditionalDockerFileStep.IDENTITY); + this("cassandra_4_1_3-" + buildSpecificImageDiscriminator(), + getFixedBuildId().isEmpty(), + AdditionalDockerFileStep.IDENTITY); } - private DockerCassandra(String imageName, AdditionalDockerFileStep additionalSteps) { + private DockerCassandra(String imageName, boolean deleteImageAfterUsage, AdditionalDockerFileStep additionalSteps) { client = DockerClientFactory.instance().client(); EventsCmd eventsCmd = client.eventsCmd().withEventTypeFilter(EventType.IMAGE).withImageFilter(imageName); eventsCmd.exec(new ResultCallback<Event>() { @@ -163,9 +169,8 @@ public class DockerCassandra { public void close() { } }); - boolean doNotDeleteImageAfterUsage = false; cassandraContainer = new GenericContainer<>( - new ImageFromDockerfile(imageName,doNotDeleteImageAfterUsage) + new ImageFromDockerfile(imageName,deleteImageAfterUsage) .withDockerfileFromBuilder(builder -> additionalSteps.applyStep(builder .from("cassandra:4.1.3") --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@james.apache.org For additional commands, e-mail: notifications-h...@james.apache.org