You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by ma...@apache.org on 2021/02/09 09:18:19 UTC
[james-project] 22/27: JAMES-3225 log all image events related to
DockerCassandra
This is an automated email from the ASF dual-hosted git repository.
matthieu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 5920cb0b2d1763319a38266d71599091c6801cc5
Author: Jean Helou <jh...@codamens.fr>
AuthorDate: Wed Feb 3 22:35:40 2021 +0100
JAMES-3225 log all image events related to DockerCassandra
---
.../james/backends/cassandra/DockerCassandra.java | 33 +++++++++++++++++++++-
1 file changed, 32 insertions(+), 1 deletion(-)
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 fce5fc0..3d18326 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
@@ -19,6 +19,10 @@
package org.apache.james.backends.cassandra;
+import com.github.dockerjava.api.async.ResultCallback;
+import com.github.dockerjava.api.command.EventsCmd;
+import com.github.dockerjava.api.model.Event;
+import com.github.dockerjava.api.model.EventType;
import org.apache.james.backends.cassandra.init.ClusterFactory;
import org.apache.james.backends.cassandra.init.KeyspaceFactory;
import org.apache.james.backends.cassandra.init.configuration.CassandraConsistenciesConfiguration;
@@ -38,6 +42,8 @@ import com.datastax.driver.core.Session;
import com.github.dockerjava.api.DockerClient;
import com.google.common.collect.ImmutableMap;
+import java.io.Closeable;
+import java.io.IOException;
import java.util.UUID;
public class DockerCassandra {
@@ -123,8 +129,33 @@ public class DockerCassandra {
this("cassandra_3_11_3-"+ UUID.randomUUID().toString(), AdditionalDockerFileStep.IDENTITY);
}
- public DockerCassandra(String imageName, AdditionalDockerFileStep additionalSteps) {
+ private DockerCassandra(String imageName, AdditionalDockerFileStep additionalSteps) {
client = DockerClientFactory.instance().client();
+ EventsCmd eventsCmd = client.eventsCmd().withEventTypeFilter(EventType.IMAGE).withImageFilter(imageName);
+ eventsCmd.exec(new ResultCallback<Event>() {
+ @Override
+ public void onStart(Closeable closeable) {
+
+ }
+
+ @Override
+ public void onNext(Event object) {
+ logger.info(object.toString());
+ }
+
+ @Override
+ public void onError(Throwable throwable) {
+ logger.error("event stream failure",throwable);
+ }
+
+ @Override
+ public void onComplete() {
+ }
+
+ @Override
+ public void close() throws IOException {
+ }
+ });
boolean doNotDeleteImageAfterUsage = false;
cassandraContainer = new GenericContainer<>(
new ImageFromDockerfile(imageName,doNotDeleteImageAfterUsage)
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org