maintenance: upgrade to postgres:17.7-trixie in docs and for Testcontainers (#222)
Co-authored-by: Michael Hoennig <michael@hoennig.de> Reviewed-on: http://dev.hostsharing.net/hostsharing/hs.hsadmin.ng/pulls/222 Reviewed-by: Stefan Begerad <stefan.begerad@hostsharing.net>
This commit is contained in:
co-authored by
Michael Hoennig
parent
62307a0764
commit
c2ddf90f8c
@@ -95,7 +95,7 @@ import static org.springframework.util.FileCopyUtils.copyToByteArray;
|
||||
@Tag("migrationTest")
|
||||
@Tag("importHostingAssets")
|
||||
@DataJpaTest(properties = {
|
||||
"spring.datasource.url=${HSADMINNG_POSTGRES_JDBC_URL:jdbc:tc:postgresql:15.5-bookworm:///importHostingAssetsTC}",
|
||||
"spring.datasource.url=${HSADMINNG_POSTGRES_JDBC_URL:jdbc:tc:postgresql:17.7-trixie:///importHostingAssetsTC}",
|
||||
"spring.datasource.username=${HSADMINNG_POSTGRES_ADMIN_USERNAME:ADMIN}",
|
||||
"spring.datasource.password=${HSADMINNG_POSTGRES_ADMIN_PASSWORD:password}",
|
||||
"hsadminng.superuser=${HSADMINNG_SUPERUSER:import-superuser@hostsharing.net}",
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ import static org.springframework.test.context.jdbc.Sql.ExecutionPhase.BEFORE_TE
|
||||
*/
|
||||
@Tag("migrationTest")
|
||||
@DataJpaTest(properties = {
|
||||
"spring.datasource.url=jdbc:tc:postgresql:15.5-bookworm:///liquibaseMigrationTestTC",
|
||||
"spring.datasource.url=jdbc:tc:postgresql:17.7-trixie:///liquibaseMigrationTestTC",
|
||||
"hsadminng.superuser=${HSADMINNG_SUPERUSER:import-superuser@hostsharing.net}",
|
||||
"spring.liquibase.enabled=false" // @Sql should go first, Liquibase will be initialized programmatically
|
||||
})
|
||||
|
||||
@@ -4,10 +4,7 @@ import lombok.SneakyThrows;
|
||||
import org.testcontainers.containers.JdbcDatabaseContainer;
|
||||
import org.testcontainers.jdbc.ContainerDatabaseDriver;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
import java.io.InputStreamReader;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
import static org.apache.commons.io.FileUtils.readFileToString;
|
||||
@@ -23,22 +20,20 @@ public class PostgresTestcontainer {
|
||||
|
||||
final var jdbcDatabaseContainer = getJdbcDatabaseContainer(jdbcUrl);
|
||||
|
||||
// use the pg_dump from within the container to get the same version
|
||||
final var sqlDumpFile = new File(targetFileName.getParent(), "." + targetFileName.getName());
|
||||
final var pb = new ProcessBuilder(
|
||||
final var containerDumpFile = "/tmp/" + sqlDumpFile.getName();
|
||||
final var result = jdbcDatabaseContainer.execInContainer(
|
||||
"env", "PGPASSWORD=" + jdbcDatabaseContainer.getPassword(),
|
||||
"pg_dump", "--column-inserts", "--disable-dollar-quoting",
|
||||
"--host=" + jdbcDatabaseContainer.getHost(),
|
||||
"--port=" + jdbcDatabaseContainer.getFirstMappedPort(),
|
||||
"--host=localhost",
|
||||
"--port=5432",
|
||||
"--username=" + jdbcDatabaseContainer.getUsername() ,
|
||||
"--dbname=" + jdbcDatabaseContainer.getDatabaseName(),
|
||||
"--file=" + sqlDumpFile.getCanonicalPath()
|
||||
"--file=" + containerDumpFile
|
||||
);
|
||||
pb.environment().put("PGPASSWORD", jdbcDatabaseContainer.getPassword());
|
||||
|
||||
final var process = pb.start();
|
||||
int exitCode = process.waitFor();
|
||||
final var stderr = new BufferedReader(new InputStreamReader(process.getErrorStream()))
|
||||
.lines().collect(Collectors.joining("\n"));
|
||||
assertThat(exitCode).describedAs(stderr).isEqualTo(0);
|
||||
assertThat(result.getExitCode()).describedAs(result.getStderr()).isEqualTo(0);
|
||||
jdbcDatabaseContainer.copyFileFromContainer(containerDumpFile, sqlDumpFile.getCanonicalPath());
|
||||
|
||||
final var header = """
|
||||
-- =================================================================================
|
||||
|
||||
@@ -53,7 +53,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
classes = { HsadminNgApplication.class,
|
||||
RbacGrantsDiagramService.class },
|
||||
properties = {
|
||||
"spring.datasource.url=${HSADMINNG_POSTGRES_JDBC_URL:jdbc:tc:postgresql:15.5-bookworm:///scenariosTC}",
|
||||
"spring.datasource.url=${HSADMINNG_POSTGRES_JDBC_URL:jdbc:tc:postgresql:17.7-trixie:///scenariosTC}",
|
||||
"spring.datasource.username=${HSADMINNG_POSTGRES_ADMIN_USERNAME:ADMIN}",
|
||||
"spring.datasource.password=${HSADMINNG_POSTGRES_ADMIN_PASSWORD:password}",
|
||||
"hsadminng.superuser=${HSADMINNG_SUPERUSER:superuser-alex@hostsharing.net}"
|
||||
|
||||
@@ -14,8 +14,8 @@ spring:
|
||||
platform: postgres
|
||||
|
||||
datasource:
|
||||
url-tc: jdbc:tc:postgresql:15.5-bookworm:///spring_boot_testcontainers
|
||||
url-tcx: jdbc:tc:postgresql:15.5-bookworm:///spring_boot_testcontainers?TC_REUSABLE=true&TC_DAEMON=true
|
||||
url-tc: jdbc:tc:postgresql:17.7-trixie:///spring_boot_testcontainers
|
||||
url-tcx: jdbc:tc:postgresql:17.7-trixie:///spring_boot_testcontainers?TC_REUSABLE=true&TC_DAEMON=true
|
||||
url-local: jdbc:postgresql://localhost:5432/postgres
|
||||
url: ${spring.datasource.url-tc}
|
||||
username: postgres
|
||||
|
||||
Reference in New Issue
Block a user