From 72bbcc4fc46e076dde145aad333b683bf75ed864 Mon Sep 17 00:00:00 2001 From: Jens Schauder Date: Fri, 17 Nov 2023 08:30:50 +0100 Subject: [PATCH] Switch to Testcontainers Oracle Free. Timeout increased from the default because that cause problems on CI. Brought SD JDBC now uses `ojdbc11` as R2DBC. Closes #1665 Original pull request #1668 --- spring-data-jdbc/pom.xml | 4 ++-- .../data/jdbc/testing/OracleDataSourceConfiguration.java | 9 ++++----- spring-data-r2dbc/pom.xml | 2 +- .../data/r2dbc/testing/OracleTestSupport.java | 6 ++++-- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/spring-data-jdbc/pom.xml b/spring-data-jdbc/pom.xml index b09586579..080cb2504 100644 --- a/spring-data-jdbc/pom.xml +++ b/spring-data-jdbc/pom.xml @@ -148,7 +148,7 @@ com.oracle.database.jdbc - ojdbc8 + ojdbc11 ${oracle.version} test @@ -229,7 +229,7 @@ org.testcontainers - oracle-xe + oracle-free test diff --git a/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/testing/OracleDataSourceConfiguration.java b/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/testing/OracleDataSourceConfiguration.java index b6e7f8371..8f1065cc0 100644 --- a/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/testing/OracleDataSourceConfiguration.java +++ b/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/testing/OracleDataSourceConfiguration.java @@ -24,7 +24,7 @@ import org.springframework.core.env.Environment; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.datasource.DriverManagerDataSource; import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator; -import org.testcontainers.containers.OracleContainer; +import org.testcontainers.oracle.OracleContainer; import org.testcontainers.utility.DockerImageName; /** @@ -55,10 +55,9 @@ public class OracleDataSourceConfiguration extends DataSourceConfiguration { if (ORACLE_CONTAINER == null) { LOG.info("Oracle starting..."); - DockerImageName dockerImageName = DockerImageName.parse("gvenzl/oracle-free:23-slim") - .asCompatibleSubstituteFor("gvenzl/oracle-xe"); - OracleContainer container = new OracleContainer(dockerImageName) - .withDatabaseName("freepdb2") + DockerImageName dockerImageName = DockerImageName.parse("gvenzl/oracle-free:23.3-slim"); + OracleContainer container = new OracleContainer(dockerImageName) // + .withStartupTimeoutSeconds(200) // .withReuse(true); container.start(); LOG.info("Oracle started"); diff --git a/spring-data-r2dbc/pom.xml b/spring-data-r2dbc/pom.xml index 2fce0cea1..5fb879ab3 100644 --- a/spring-data-r2dbc/pom.xml +++ b/spring-data-r2dbc/pom.xml @@ -285,7 +285,7 @@ org.testcontainers - oracle-xe + oracle-free test diff --git a/spring-data-r2dbc/src/test/java/org/springframework/data/r2dbc/testing/OracleTestSupport.java b/spring-data-r2dbc/src/test/java/org/springframework/data/r2dbc/testing/OracleTestSupport.java index 76598741b..c30b59052 100644 --- a/spring-data-r2dbc/src/test/java/org/springframework/data/r2dbc/testing/OracleTestSupport.java +++ b/spring-data-r2dbc/src/test/java/org/springframework/data/r2dbc/testing/OracleTestSupport.java @@ -29,7 +29,7 @@ import org.springframework.data.r2dbc.testing.ExternalDatabase.ProvidedDatabase; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.datasource.DriverManagerDataSource; import org.springframework.util.ClassUtils; -import org.testcontainers.containers.OracleContainer; +import org.testcontainers.oracle.OracleContainer; /** * Utility class for testing against Oracle. @@ -128,7 +128,9 @@ public class OracleTestSupport { if (testContainerDatabase == null) { try { - OracleContainer container = new OracleContainer("gvenzl/oracle-xe:21.3.0-slim").withReuse(true); + OracleContainer container = new OracleContainer("23.3-slim") // + .withReuse(true) // + .withStartupTimeoutSeconds(200); // the default of 60s isn't sufficient container.start(); testContainerDatabase = ProvidedDatabase.builder(container) //