chore(build): upgrade Gradle wrapper and Docker build images to 9.5.1 (#6501)

This commit is contained in:
Ludy
2026-06-14 15:48:44 +01:00
committed by GitHub
parent 1ce765ab1e
commit 1fa1293b39
24 changed files with 107 additions and 53 deletions
@@ -222,7 +222,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Install Task - name: Install Task
uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0 uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0
+1 -1
View File
@@ -43,7 +43,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Install Task - name: Install Task
uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0 uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0
+1 -1
View File
@@ -58,7 +58,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
cache-disabled: true cache-disabled: true
- name: Install Task - name: Install Task
+1 -1
View File
@@ -40,7 +40,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
cache-disabled: true cache-disabled: true
- name: Install Task - name: Install Task
+1 -1
View File
@@ -45,7 +45,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
cache-disabled: true cache-disabled: true
- name: Install Task - name: Install Task
+1 -1
View File
@@ -48,7 +48,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
cache-disabled: true cache-disabled: true
# No `-PnoSpotless` here yet because the upstream cache layer matches the # No `-PnoSpotless` here yet because the upstream cache layer matches the
+1 -1
View File
@@ -61,7 +61,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
cache-disabled: true cache-disabled: true
- name: Set up Docker Buildx - name: Set up Docker Buildx
@@ -349,7 +349,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Install Task - name: Install Task
uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0 uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0
+3 -3
View File
@@ -73,7 +73,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Install Task - name: Install Task
uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0 uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0
@@ -148,7 +148,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Setup Node.js - name: Setup Node.js
if: matrix.variant.build_frontend == true if: matrix.variant.build_frontend == true
@@ -252,7 +252,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Install Task - name: Install Task
uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0 uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0
+1 -1
View File
@@ -78,7 +78,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Set up Docker Buildx - name: Set up Docker Buildx
id: buildx id: buildx
+1 -1
View File
@@ -48,7 +48,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Generate Swagger documentation - name: Generate Swagger documentation
run: ./gradlew :stirling-pdf:generateOpenApiDocs run: ./gradlew :stirling-pdf:generateOpenApiDocs
+1 -1
View File
@@ -136,7 +136,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Setup Task - name: Setup Task
uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0 uses: go-task/setup-task@3be4020d41929789a01026e0e427a4321ce0ad44 # v2.0.0
+1 -1
View File
@@ -106,7 +106,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
cache-disabled: true cache-disabled: true
- name: Install Task - name: Install Task
+1 -1
View File
@@ -51,7 +51,7 @@ jobs:
- name: Setup Gradle - name: Setup Gradle
uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0 uses: gradle/actions/setup-gradle@50e97c2cd7a37755bbfafc9c5b7cafaece252f6e # v6.1.0
with: with:
gradle-version: 9.3.1 gradle-version: 9.5.1
- name: Build with Gradle - name: Build with Gradle
run: ./gradlew build run: ./gradlew build
+8 -7
View File
@@ -127,13 +127,14 @@ tasks:
cmds: cmds:
- rm -rf runtime/jre - rm -rf runtime/jre
- mkdir -p runtime - mkdir -p runtime
- >- - |
jlink JLINK_COMPRESS="$(jlink --help 2>&1 | grep -q 'zip-\[0-9\]' && echo zip-6 || echo 2)"
--add-modules {{.JLINK_MODULES}} jlink \
--strip-debug --add-modules {{.JLINK_MODULES}} \
--compress=zip-6 --strip-debug \
--no-header-files --compress="$JLINK_COMPRESS" \
--no-man-pages --no-header-files \
--no-man-pages \
--output runtime/jre --output runtime/jre
# jlink emits its files mode 444 (read-only). Tauri's build-script # jlink emits its files mode 444 (read-only). Tauri's build-script
# resource copier preserves source permissions when staging # resource copier preserves source permissions when staging
+1 -1
View File
@@ -5,7 +5,7 @@ ARG BASE_VERSION=1.0.2
ARG BASE_IMAGE=stirlingtools/stirling-pdf-base:${BASE_VERSION} ARG BASE_IMAGE=stirlingtools/stirling-pdf-base:${BASE_VERSION}
# Stage 1: Build the Java application and frontend # Stage 1: Build the Java application and frontend
FROM gradle:9.3.1-jdk25@sha256:85aec999629f4774a383cb792da4b598bdf5a7e69c4b9570bb70c0f919179183 AS app-build FROM gradle:9.5.1-jdk25@sha256:8de3543f1772bb66be3b275893e5977b6d8bd2b0d25551faa5846a821d1f0600 AS app-build
ARG TASK_VERSION=3.49.1 ARG TASK_VERSION=3.49.1
RUN apt-get update \ RUN apt-get update \
+1 -1
View File
@@ -6,7 +6,7 @@ ARG BASE_VERSION=1.0.2
ARG BASE_IMAGE=stirlingtools/stirling-pdf-base:${BASE_VERSION} ARG BASE_IMAGE=stirlingtools/stirling-pdf-base:${BASE_VERSION}
# Stage 1: Build the Java application and frontend # Stage 1: Build the Java application and frontend
FROM gradle:9.3.1-jdk25 AS app-build FROM gradle:9.5.1-jdk25@sha256:8de3543f1772bb66be3b275893e5977b6d8bd2b0d25551faa5846a821d1f0600 AS app-build
ARG TASK_VERSION=3.49.1 ARG TASK_VERSION=3.49.1
RUN apt-get update \ RUN apt-get update \
+1 -1
View File
@@ -2,7 +2,7 @@
# Single JAR contains both frontend and backend with minimal dependencies # Single JAR contains both frontend and backend with minimal dependencies
# Stage 1: Build application with embedded frontend # Stage 1: Build application with embedded frontend
FROM gradle:9.3.1-jdk25 AS build FROM gradle:9.5.1-jdk25@sha256:8de3543f1772bb66be3b275893e5977b6d8bd2b0d25551faa5846a821d1f0600 AS build
# Install Node.js and npm for frontend build # Install Node.js and npm for frontend build
ARG TASK_VERSION=3.49.1 ARG TASK_VERSION=3.49.1
@@ -48,11 +48,18 @@ X64_JRE="$WORK_DIR/jre-x86_64"
run_jlink() { run_jlink() {
local java_home="$1" local java_home="$1"
local out="$2" local out="$2"
local compress
if "$java_home/bin/jlink" --help 2>&1 | grep -q 'zip-\[0-9\]'; then
compress="zip-6"
else
compress="2"
fi
"$java_home/bin/jlink" \ "$java_home/bin/jlink" \
--module-path "$java_home/jmods" \ --module-path "$java_home/jmods" \
--add-modules "$JLINK_MODULES" \ --add-modules "$JLINK_MODULES" \
--strip-debug \ --strip-debug \
--compress=zip-6 \ --compress="$compress" \
--no-header-files \ --no-header-files \
--no-man-pages \ --no-man-pages \
--output "$out" --output "$out"
Binary file not shown.
+3 -1
View File
@@ -1,7 +1,9 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.1-bin.zip
networkTimeout=10000 networkTimeout=10000
retries=0
retryBackOffMs=500
validateDistributionUrl=true validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
Vendored
+1 -1
View File
@@ -57,7 +57,7 @@
# Darwin, MinGW, and NonStop. # Darwin, MinGW, and NonStop.
# #
# (3) This script is generated from the Groovy template # (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # https://github.com/gradle/gradle/blob/3d91ce3b8caaf77ad09f381f43615b715b53f72c/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project. # within the Gradle project.
# #
# You can find Gradle at https://github.com/gradle/gradle/. # You can find Gradle at https://github.com/gradle/gradle/.
Vendored
+10 -21
View File
@@ -23,8 +23,8 @@
@rem @rem
@rem ########################################################################## @rem ##########################################################################
@rem Set local scope for the variables with windows NT shell @rem Set local scope for the variables, and ensure extensions are enabled
if "%OS%"=="Windows_NT" setlocal setlocal EnableExtensions
set DIRNAME=%~dp0 set DIRNAME=%~dp0
if "%DIRNAME%"=="" set DIRNAME=. if "%DIRNAME%"=="" set DIRNAME=.
@@ -51,7 +51,7 @@ echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2 echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2 echo location of your Java installation. 1>&2
goto fail "%COMSPEC%" /c exit 1
:findJavaFromJavaHome :findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=% set JAVA_HOME=%JAVA_HOME:"=%
@@ -65,7 +65,7 @@ echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2 echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2 echo location of your Java installation. 1>&2
goto fail "%COMSPEC%" /c exit 1
:execute :execute
@rem Setup the command line @rem Setup the command line
@@ -73,21 +73,10 @@ goto fail
@rem Execute Gradle @rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* @rem endlocal doesn't take effect until after the line is parsed and variables are expanded
@rem which allows us to clear the local environment before executing the java command
endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel
:end :exitWithErrorLevel
@rem End local scope for the variables with windows NT shell @rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts
if %ERRORLEVEL% equ 0 goto mainEnd "%COMSPEC%" /c exit %ERRORLEVEL%
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
set EXIT_CODE=%ERRORLEVEL%
if %EXIT_CODE% equ 0 set EXIT_CODE=1
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
exit /b %EXIT_CODE%
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
+57 -2
View File
@@ -10,6 +10,8 @@
# Inputs: # Inputs:
# STIRLING_JAR - path to a pre-built Stirling-PDF .jar (defaults to the # STIRLING_JAR - path to a pre-built Stirling-PDF .jar (defaults to the
# :stirling-pdf:bootJar output) # :stirling-pdf:bootJar output)
# JAVA_BIN - override the Java executable used to launch the JAR
# (defaults to MIGRATION_TEST_JAVA, JAVA_HOME, then PATH)
# FIXTURE_DIR - override the fixture directory (rarely needed) # FIXTURE_DIR - override the fixture directory (rarely needed)
# #
# Exits non-zero on any fixture failure and writes a summary to stderr. # Exits non-zero on any fixture failure and writes a summary to stderr.
@@ -19,6 +21,7 @@ set -euo pipefail
REPO_ROOT="$(cd "$(dirname "$0")/../.." && pwd)" REPO_ROOT="$(cd "$(dirname "$0")/../.." && pwd)"
FIXTURE_DIR="${FIXTURE_DIR:-$REPO_ROOT/app/proprietary/src/test/resources/db-migration-fixtures}" FIXTURE_DIR="${FIXTURE_DIR:-$REPO_ROOT/app/proprietary/src/test/resources/db-migration-fixtures}"
STIRLING_JAR="${STIRLING_JAR:-}" STIRLING_JAR="${STIRLING_JAR:-}"
JAVA_BIN="${JAVA_BIN:-${MIGRATION_TEST_JAVA:-}}"
ADMIN_USERNAME="${ADMIN_USERNAME:-admin}" ADMIN_USERNAME="${ADMIN_USERNAME:-admin}"
ADMIN_PASSWORD="${ADMIN_PASSWORD:-stirling}" ADMIN_PASSWORD="${ADMIN_PASSWORD:-stirling}"
STARTUP_TIMEOUT_SEC="${STARTUP_TIMEOUT_SEC:-300}" STARTUP_TIMEOUT_SEC="${STARTUP_TIMEOUT_SEC:-300}"
@@ -26,6 +29,52 @@ STARTUP_TIMEOUT_SEC="${STARTUP_TIMEOUT_SEC:-300}"
log() { printf '[migration-test] %s\n' "$*" >&2; } log() { printf '[migration-test] %s\n' "$*" >&2; }
fail() { printf '[migration-test][FAIL] %s\n' "$*" >&2; exit 1; } fail() { printf '[migration-test][FAIL] %s\n' "$*" >&2; exit 1; }
java_major_version() {
local java_bin="$1"
"$java_bin" -XshowSettings:properties -version 2>&1 \
| awk -F'= ' '/java.specification.version =/ { print $2; exit }'
}
find_java() {
local candidate
if [[ -n "$JAVA_BIN" ]]; then
if [[ -x "$JAVA_BIN" ]]; then
candidate="$JAVA_BIN"
elif command -v "$JAVA_BIN" >/dev/null 2>&1; then
candidate=$(command -v "$JAVA_BIN")
else
fail "JAVA_BIN/MIGRATION_TEST_JAVA='$JAVA_BIN' is not executable or on PATH"
fi
elif [[ -n "${JAVA_HOME:-}" && -x "${JAVA_HOME}/bin/java" ]]; then
candidate="${JAVA_HOME}/bin/java"
else
local java_home_var
for java_home_var in JAVA_HOME_25_X64 JAVA_HOME_25_ARM64 JAVA_HOME_25_AARCH64; do
local java_home="${!java_home_var:-}"
if [[ -n "$java_home" && -x "$java_home/bin/java" ]]; then
candidate="$java_home/bin/java"
break
fi
done
if [[ -z "${candidate:-}" ]]; then
candidate=$(command -v java || true)
fi
fi
[[ -n "${candidate:-}" ]] || fail "No java executable found; install JDK 25 or set JAVA_BIN"
realpath "$candidate"
}
assert_supported_java() {
local java_bin="$1"
local major
major=$(java_major_version "$java_bin")
[[ -n "$major" ]] || fail "Could not determine Java version from '$java_bin'"
if (( major < 25 )); then
fail "Migration test requires JDK 25+ to run the built JAR, but '$java_bin' is Java $major. Set JAVA_HOME or JAVA_BIN to a JDK 25 installation."
fi
}
find_jar() { find_jar() {
local candidate local candidate
if [[ -n "$STIRLING_JAR" ]]; then if [[ -n "$STIRLING_JAR" ]]; then
@@ -63,7 +112,9 @@ test_fixture() {
label=$(basename "$fixture_path" .mv.db) label=$(basename "$fixture_path" .mv.db)
log "=== $label ===" log "=== $label ==="
local jar; jar=$(find_jar) local jar
jar=$(find_jar)
local java_bin="$MIGRATION_JAVA_BIN"
local workdir; workdir=$(mktemp -d) local workdir; workdir=$(mktemp -d)
local configsdir="$workdir/configs" local configsdir="$workdir/configs"
mkdir -p "$configsdir" mkdir -p "$configsdir"
@@ -74,6 +125,7 @@ test_fixture() {
local log_file="$workdir/app.log" local log_file="$workdir/app.log"
log " jar=$jar" log " jar=$jar"
log " java=$java_bin ($("$java_bin" -version 2>&1 | head -n 1))"
log " workdir=$workdir" log " workdir=$workdir"
log " port=$port" log " port=$port"
@@ -86,7 +138,7 @@ test_fixture() {
# to cwd, and we want to make sure we hit the fixture's configs/ and not # to cwd, and we want to make sure we hit the fixture's configs/ and not
# whatever happens to live at the runner's working directory. # whatever happens to live at the runner's working directory.
pushd "$workdir" >/dev/null pushd "$workdir" >/dev/null
java -Xmx1g -jar "$jar" \ "$java_bin" -Xmx1g -jar "$jar" \
"--server.port=$port" \ "--server.port=$port" \
"--spring.datasource.url=jdbc:h2:file:./configs/stirling-pdf-DB-2.3.232;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=TRUE;MODE=PostgreSQL" \ "--spring.datasource.url=jdbc:h2:file:./configs/stirling-pdf-DB-2.3.232;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=TRUE;MODE=PostgreSQL" \
"--spring.jpa.show-sql=false" \ "--spring.jpa.show-sql=false" \
@@ -169,6 +221,9 @@ test_fixture() {
main() { main() {
[[ -d "$FIXTURE_DIR" ]] || fail "Fixture dir not found: $FIXTURE_DIR" [[ -d "$FIXTURE_DIR" ]] || fail "Fixture dir not found: $FIXTURE_DIR"
MIGRATION_JAVA_BIN=$(find_java)
assert_supported_java "$MIGRATION_JAVA_BIN"
local fixtures local fixtures
mapfile -t fixtures < <(find "$FIXTURE_DIR" -maxdepth 1 -name '*.mv.db' | sort) mapfile -t fixtures < <(find "$FIXTURE_DIR" -maxdepth 1 -name '*.mv.db' | sort)
[[ ${#fixtures[@]} -gt 0 ]] || fail "No fixtures under $FIXTURE_DIR" [[ ${#fixtures[@]} -gt 0 ]] || fail "No fixtures under $FIXTURE_DIR"