This is an automated email from the ASF dual-hosted git repository. jhelou pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit d15f9c4e416e8050db05b3d76a8665941510d9ff Author: Jean Helou <j...@xn--gml-cma.com> AuthorDate: Fri Mar 14 18:43:47 2025 +0100 [devscout] renames duplicated PostgresExtension The PostgresExtension in scaling-pulsar-smtp build a JPA configuration and is incompatible with the shared PostgresExtension from the postgres backend. This commit renames the extension to clarify its intent, it also ensures the version of postgres is aligned with the one in the postgres backend --- .../james/mpt/smtp/JpaPulsarForwardSmtpTest.java | 4 +-- .../mpt/smtp/JpaPulsarSmtpStarttlsCommandTest.java | 4 +-- server/apps/scaling-pulsar-smtp/docker-compose.yml | 4 ++- server/apps/scaling-pulsar-smtp/pom.xml | 7 ++++- ...resExtension.java => PostgresJPAExtension.java} | 31 +++++++++------------- .../java/org/apache/james/SMTPJamesServerTest.java | 2 +- 6 files changed, 26 insertions(+), 26 deletions(-) diff --git a/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarForwardSmtpTest.java b/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarForwardSmtpTest.java index c1ec286c5d..056e412080 100644 --- a/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarForwardSmtpTest.java +++ b/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarForwardSmtpTest.java @@ -23,7 +23,7 @@ import static org.apache.james.modules.protocols.SmtpGuiceProbe.SmtpServerConnec import org.apache.james.JamesServerExtension; import org.apache.james.Main; -import org.apache.james.PostgresExtension; +import org.apache.james.PostgresJPAExtension; import org.apache.james.PulsarExtension; import org.apache.james.TestingSmtpRelayJamesServerBuilder; import org.apache.james.modules.AwsS3BlobStoreExtension; @@ -35,7 +35,7 @@ public class JpaPulsarForwardSmtpTest implements ForwardSmtpTest { @Order(1) @RegisterExtension static JamesServerExtension testExtension = TestingSmtpRelayJamesServerBuilder.forConfiguration(c -> c) - .extension(new PostgresExtension()) + .extension(new PostgresJPAExtension()) .extension(new PulsarExtension()) .extension(new AwsS3BlobStoreExtension()) .extension(new InMemoryDnsExtension()) diff --git a/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarSmtpStarttlsCommandTest.java b/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarSmtpStarttlsCommandTest.java index 921313c770..27e6e33ffe 100644 --- a/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarSmtpStarttlsCommandTest.java +++ b/mpt/impl/smtp/jpa-pulsar/src/test/java/org/apache/james/mpt/smtp/JpaPulsarSmtpStarttlsCommandTest.java @@ -23,7 +23,7 @@ import static org.apache.james.modules.protocols.SmtpGuiceProbe.SmtpServerConnec import org.apache.james.JamesServerExtension; import org.apache.james.Main; -import org.apache.james.PostgresExtension; +import org.apache.james.PostgresJPAExtension; import org.apache.james.PulsarExtension; import org.apache.james.TestingSmtpRelayJamesServerBuilder; import org.apache.james.modules.AwsS3BlobStoreExtension; @@ -35,7 +35,7 @@ public class JpaPulsarSmtpStarttlsCommandTest extends SmtpStarttlsCommandTest { @Order(1) @RegisterExtension static JamesServerExtension testExtension = TestingSmtpRelayJamesServerBuilder.forConfiguration(c -> c) - .extension(new PostgresExtension()) + .extension(new PostgresJPAExtension()) .extension(new PulsarExtension()) .extension(new AwsS3BlobStoreExtension()) .extension(new InMemoryDnsExtension()) diff --git a/server/apps/scaling-pulsar-smtp/docker-compose.yml b/server/apps/scaling-pulsar-smtp/docker-compose.yml index 72667c4ade..79e41a514e 100644 --- a/server/apps/scaling-pulsar-smtp/docker-compose.yml +++ b/server/apps/scaling-pulsar-smtp/docker-compose.yml @@ -57,7 +57,9 @@ services: - REMOTE_MANAGEMENT_DISABLE=1 postgres: - image: postgres:14 + image: postgres:16.3 + ports: + - "5432:5432" environment: - POSTGRES_PASSWORD=password diff --git a/server/apps/scaling-pulsar-smtp/pom.xml b/server/apps/scaling-pulsar-smtp/pom.xml index 0368dd56a1..31a7ab5383 100644 --- a/server/apps/scaling-pulsar-smtp/pom.xml +++ b/server/apps/scaling-pulsar-smtp/pom.xml @@ -52,6 +52,12 @@ </dependencyManagement> <dependencies> + <dependency> + <groupId>${james.groupId}</groupId> + <artifactId>apache-james-backends-postgres</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> <dependency> <groupId>${james.groupId}</groupId> <artifactId>apache-james-backends-pulsar</artifactId> @@ -189,7 +195,6 @@ <dependency> <groupId>org.testcontainers</groupId> <artifactId>postgresql</artifactId> - <version>1.17.2</version> <scope>test</scope> </dependency> <dependency> diff --git a/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/PostgresExtension.java b/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/PostgresJPAExtension.java similarity index 71% rename from server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/PostgresExtension.java rename to server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/PostgresJPAExtension.java index afd80a5f7a..6bb3e82e9e 100644 --- a/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/PostgresExtension.java +++ b/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/PostgresJPAExtension.java @@ -22,34 +22,27 @@ package org.apache.james; import java.util.UUID; import org.apache.james.backends.jpa.JPAConfiguration; -import org.apache.pulsar.client.api.PulsarClientException; +import org.apache.james.backends.postgres.DockerPostgresSingleton; import org.junit.jupiter.api.extension.ExtensionContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.testcontainers.containers.PostgreSQLContainer; -import org.testcontainers.containers.output.OutputFrame; import com.google.inject.Module; import com.google.inject.util.Modules; -public class PostgresExtension implements GuiceModuleTestExtension { +public class PostgresJPAExtension implements GuiceModuleTestExtension { - private static final Logger logger = LoggerFactory.getLogger(PostgresExtension.class); + private static final Logger logger = LoggerFactory.getLogger(PostgresJPAExtension.class); - private static void displayDockerLog(OutputFrame outputFrame) { - logger.info(outputFrame.getUtf8String().trim()); - } - - private final PostgreSQLContainer container; + private final PostgreSQLContainer container = DockerPostgresSingleton.SINGLETON; private JPAConfiguration jpaConfiguration; - public PostgresExtension() { - container = new PostgreSQLContainer<>("postgres:11") - .withLogConsumer(PostgresExtension::displayDockerLog); + public PostgresJPAExtension() { } @Override - public void beforeAll(ExtensionContext extensionContext) throws PulsarClientException { + public void beforeAll(ExtensionContext extensionContext) { container.start(); } @@ -64,16 +57,16 @@ public class PostgresExtension implements GuiceModuleTestExtension { container.execInContainer("psql", "-U", container.getUsername(), "-c", "create database \"" + dbName + "\""); container.withDatabaseName(dbName); jpaConfiguration = JPAConfiguration.builder() - .driverName(container.getDriverClassName()) - .driverURL(container.getJdbcUrl()) - .username(container.getUsername()) - .password(container.getPassword()) - .build(); + .driverName(container.getDriverClassName()) + .driverURL(container.getJdbcUrl()) + .username(container.getUsername()) + .password(container.getPassword()) + .build(); } @Override public Module getModule() { return Modules.combine(binder -> binder.bind(JPAConfiguration.class) - .toInstance(jpaConfiguration)); + .toInstance(jpaConfiguration)); } } diff --git a/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/SMTPJamesServerTest.java b/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/SMTPJamesServerTest.java index 75696ebdda..115da78c08 100644 --- a/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/SMTPJamesServerTest.java +++ b/server/apps/scaling-pulsar-smtp/src/test/java/org/apache/james/SMTPJamesServerTest.java @@ -37,7 +37,7 @@ class SMTPJamesServerTest { @RegisterExtension static JamesServerExtension testExtension = TestingSmtpRelayJamesServerBuilder.forConfiguration(c -> c) - .extension(new PostgresExtension()) + .extension(new PostgresJPAExtension()) .extension(new PulsarExtension()) .extension(new AwsS3BlobStoreExtension()) .server(Main::createServer) --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@james.apache.org For additional commands, e-mail: notifications-h...@james.apache.org