From affa33ca41af3d55cd455d1d7f3b36de110b303e Mon Sep 17 00:00:00 2001 From: Vincent Guilpain Date: Mon, 13 May 2024 09:54:31 +0900 Subject: [PATCH 1/7] Run integration test with a given JDK --- .github/workflows/ci.yaml | 263 +++++++++++++++--- build.gradle | 10 +- buildSrc/build.gradle | 26 ++ .../com/scalar/db/JdkConfigurationPlugin.java | 142 ++++++++++ core/build.gradle | 16 +- docs/getting-started/build.gradle | 2 +- gradle/wrapper/gradle-wrapper.jar | Bin 58702 -> 59203 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 2 + gradlew.bat | 25 +- integration-test/build.gradle | 5 +- rpc/build.gradle | 5 +- schema-loader/build.gradle | 27 +- server/build.gradle | 37 ++- 14 files changed, 465 insertions(+), 97 deletions(-) create mode 100644 buildSrc/build.gradle create mode 100644 buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 66a3beeb9a..bd175cdb5e 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,11 +1,36 @@ name: CI +run-name: "${{ github.event_name == 'workflow_dispatch' && format('Dispatch : Run integration test with JDK {0} ({1})', inputs.int_test_java_version, inputs.int_test_java_vendor) || '' }}" on: pull_request: workflow_dispatch: + inputs: + int_test_java_version: + description: JDK version used to run the integration test + type: choice + required: false + default: '8' + options: + - '8' + - '11' + - '17' + - '21' + int_test_java_vendor: + description: Vendor of the JDK used to run the integration test + type: choice + required: false + default: 'temurin' + options: + - 'corretto' + - 'microsoft' + - 'oracle' + - 'temurin' env: TERM: dumb + INT_TEST_JAVA_VERSION: "${{ github.event_name != 'workflow_dispatch' && '8' || inputs.int_test_java_version }}" + INT_TEST_JAVA_VENDOR: "${{ github.event_name != 'workflow_dispatch' && 'temurin' || inputs.int_test_java_vendor }}" + jobs: check: name: Gradle check @@ -13,7 +38,7 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' @@ -22,7 +47,7 @@ jobs: - name: Setup and execute Gradle 'check' task uses: gradle/gradle-build-action@v3 with: - arguments: check + arguments: check buildSrc:check - name: Save Gradle test reports if: always() @@ -67,7 +92,7 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' @@ -100,16 +125,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra + arguments: integrationTestCassandra -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -134,16 +166,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra + arguments: integrationTestCassandra -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -159,12 +198,19 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Generate unique prefix using the epoch run: | echo "db_prefix=$(date +%s%3N)" >> $GITHUB_ENV @@ -172,7 +218,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCosmos' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCosmos -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ + arguments: integrationTestCosmos -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ - name : Delete gradle daemon log files if: always() @@ -200,16 +246,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestDynamo' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestDynamo + arguments: integrationTestDynamo -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -229,16 +282,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -258,16 +318,24 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -287,16 +355,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -321,16 +396,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -355,16 +437,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -389,16 +478,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -423,16 +519,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -463,16 +566,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -503,16 +613,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -557,16 +674,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Stop Oracle 23 container if: always() @@ -597,12 +721,19 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Create no superuser run: ./ci/no-superuser/create-no-superuser-sqlserver.sh sqlserver17 SqlServer17 10 3 timeout-minutes: 1 @@ -610,7 +741,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -637,12 +768,19 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Create no superuser run: ./ci/no-superuser/create-no-superuser-sqlserver.sh sqlserver19 SqlServer19 10 3 timeout-minutes: 1 @@ -650,7 +788,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -677,12 +815,19 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Create no superuser run: ./ci/no-superuser/create-no-superuser-sqlserver.sh sqlserver22 SqlServer22 10 3 timeout-minutes: 1 @@ -690,7 +835,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -706,19 +851,26 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Set up SQLite3 run: sudo apt-get install -y sqlite3 - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 - name: Upload Gradle test reports if: always() @@ -738,16 +890,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc + arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -776,16 +935,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestMultiStorage' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestMultiStorage + arguments: integrationTestMultiStorage -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 @@ -805,16 +971,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK 8 (temurin) uses: actions/setup-java@v4 with: java-version: '8' distribution: 'temurin' + - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + with: + java-version: ${{ env.INT_TEST_JAVA_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + - name: Setup and execute Gradle 'integrationTestScalarDbServer' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestScalarDbServer + arguments: integrationTestScalarDbServer -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 diff --git a/build.gradle b/build.gradle index de07d52951..13337a209e 100644 --- a/build.gradle +++ b/build.gradle @@ -16,6 +16,7 @@ subprojects { // apply plugin: 'jacoco' apply plugin: 'java-library-distribution' apply plugin: 'com.diffplug.spotless' + apply plugin: 'com.scalar.db.jdk-configuration' project.version = '4.0.0-SNAPSHOT' @@ -53,10 +54,9 @@ subprojects { log4jVersion = '2.23.1' stefanbirknerSystemLambdaVersion = '1.2.1' spotbugsPluginVersion = '5.2.5' - errorpronePluginVersion = '2.0.2' + errorpronePluginVersion = '3.1.0' protobufPluginVersion = '0.8.19' shadowPluginVersion = '7.1.2' - dockerPluginVersion = '0.34.0' // Make JDK11+ use the same version as JDK8 uses googleJavaFormatVersion = '1.7' } @@ -70,12 +70,11 @@ subprojects { testLogging.showStandardStreams = true } - sourceCompatibility = 1.8 - targetCompatibility = 1.8 - group = "com.scalar-labs" java { + sourceCompatibility = JavaLanguageVersion.of(8) + targetCompatibility = JavaLanguageVersion.of(8) withJavadocJar() withSourcesJar() } @@ -98,3 +97,4 @@ subprojects { duplicatesStrategy DuplicatesStrategy.EXCLUDE } } + diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle new file mode 100644 index 0000000000..ef152e7919 --- /dev/null +++ b/buildSrc/build.gradle @@ -0,0 +1,26 @@ +plugins { + id 'java-gradle-plugin' + id "com.diffplug.spotless" version "6.13.0" +} + +repositories { + mavenCentral() +} + +gradlePlugin { + plugins { + jdkConfiguration { + id = 'com.scalar.db.jdk-configuration' + implementationClass = 'com.scalar.db.JdkConfigurationPlugin' + } + } +} + +spotless { + java { + target 'src/*/java/**/*.java' + importOrder() + removeUnusedImports() + googleJavaFormat("1.7") + } +} diff --git a/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java new file mode 100644 index 0000000000..666278e6d0 --- /dev/null +++ b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java @@ -0,0 +1,142 @@ +package com.scalar.db; + +import java.util.Objects; +import java.util.function.Consumer; +import javax.annotation.Nullable; +import org.gradle.api.Plugin; +import org.gradle.api.Project; +import org.gradle.api.tasks.compile.JavaCompile; +import org.gradle.api.tasks.testing.Test; +import org.gradle.jvm.toolchain.JavaLanguageVersion; +import org.gradle.jvm.toolchain.JavaToolchainService; +import org.gradle.jvm.toolchain.JvmVendorSpec; +import org.jetbrains.annotations.NotNull; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Plugin configuring compilation and integration test tasks to use a given SDK defined by the + * following Gradle properties: + * + * + * + * Usage example using the CLI : + * + *

+ *   gradle integrationTestJdbc -PcompilationJavaVendor=amazon -PintegrationTestJavaVersion=11 -PintegrationJavaVendor=temurin
+ * 
+ */ +public class JdkConfigurationPlugin implements Plugin { + private static final Logger logger = LoggerFactory.getLogger(JdkConfigurationPlugin.class); + + private static final JavaLanguageVersion COMPILATION_JAVA_VERSION = JavaLanguageVersion.of(8); + @Nullable private JvmVendorSpec compilationJavaVendor; + @Nullable private JavaLanguageVersion integrationTestJavaVersion; + @Nullable private JvmVendorSpec integrationTestJavaVendor; + + @Override + public void apply(@NotNull Project project) { + parseInputParameters(project); + configureJdkForCompilationTasks(project); + configureJdkForIntegrationTestTasks(project); + } + + private void configureJdkForCompilationTasks(Project project) { + project + .getTasks() + .withType(JavaCompile.class) + .configureEach( + javaCompileTask -> { + javaCompileTask + .getJavaCompiler() + .set( + getJavaToolchainService(project) + .compilerFor( + config -> { + config.getLanguageVersion().set(COMPILATION_JAVA_VERSION); + logVersion(javaCompileTask.getName(), COMPILATION_JAVA_VERSION); + if (compilationJavaVendor != null) { + config.getVendor().set(compilationJavaVendor); + logVendor(javaCompileTask.getName(), compilationJavaVendor); + } + })); + }); + } + + private void configureJdkForIntegrationTestTasks(Project project) { + project + .getTasks() + .withType(Test.class) + .matching(testTask -> testTask.getName().startsWith("integrationTest")) + .configureEach( + integrationTestTask -> + integrationTestTask + .getJavaLauncher() + .set( + getJavaToolchainService(project) + .launcherFor( + config -> { + if (integrationTestJavaVersion == null) { + return; + } + config.getLanguageVersion().set(integrationTestJavaVersion); + logVersion( + integrationTestTask.getName(), integrationTestJavaVersion); + if (integrationTestJavaVendor != null) { + config.getVendor().set(integrationTestJavaVendor); + logVendor( + integrationTestTask.getName(), integrationTestJavaVendor); + } + }))); + } + + private static @NotNull JavaToolchainService getJavaToolchainService(Project project) { + return project.getExtensions().getByType(JavaToolchainService.class); + } + + private void parseInputParameters(Project project) { + parseVendor(project, "compilationJavaVendor", (vendor) -> compilationJavaVendor = vendor); + parseVendor( + project, "integrationTestJavaVendor", (vendor) -> integrationTestJavaVendor = vendor); + if (project.hasProperty("integrationTestJavaVersion")) { + integrationTestJavaVersion = + JavaLanguageVersion.of(Objects.toString(project.property("integrationTestJavaVersion"))); + } + if (integrationTestJavaVersion == null && integrationTestJavaVendor != null) { + throw new IllegalArgumentException( + "When configuring the JDK vendor to run integration test, you also need to set the JDK version using the \"integrationTestJavaVersion\" project property."); + } + } + + private void parseVendor( + Project project, String parameterName, Consumer attributeSetter) { + if (!project.getRootProject().hasProperty(parameterName)) { + return; + } + String propertyValue = Objects.toString(project.property(parameterName)); + switch (propertyValue) { + case "corretto": + attributeSetter.accept(JvmVendorSpec.AMAZON); + break; + case "temurin": + attributeSetter.accept(JvmVendorSpec.ADOPTIUM); + break; + default: + attributeSetter.accept(JvmVendorSpec.matching(propertyValue)); + } + } + + private void logVersion(String taskName, Object version) { + logger.debug("Configure task '{}' to use JDK version {}", taskName, version); + } + + private void logVendor(String taskName, JvmVendorSpec vendor) { + logger.debug("Configure task '{}' to use {} JDK vendor", taskName, vendor); + } +} diff --git a/core/build.gradle b/core/build.gradle index ee93781b7d..685de7b4a6 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -3,6 +3,7 @@ plugins { id 'net.ltgt.errorprone' version "${errorpronePluginVersion}" id 'maven-publish' id 'signing' + id 'base' } sourceSets { @@ -126,7 +127,6 @@ javadoc { title = "ScalarDB" } - task integrationTestCassandra(type: Test) { description = 'Runs the integration tests for Cassandra.' group = 'verification' @@ -134,7 +134,7 @@ task integrationTestCassandra(type: Test) { classpath = sourceSets.integrationTestCassandra.runtimeClasspath outputs.upToDateWhen { false } // ensures integration tests are run every time when called options { - systemProperties(System.getProperties()) + systemProperties(System.getProperties().findAll{it.key.toString().startsWith("scalardb")}) } } @@ -145,7 +145,7 @@ task integrationTestCosmos(type: Test) { classpath = sourceSets.integrationTestCosmos.runtimeClasspath outputs.upToDateWhen { false } // ensures integration tests are run every time when called options { - systemProperties(System.getProperties()) + systemProperties(System.getProperties().findAll{it.key.toString().startsWith("scalardb")}) } maxParallelForks = 3 jvmArgs '-XX:MaxDirectMemorySize=4g', '-Xmx4g' @@ -158,7 +158,7 @@ task integrationTestDynamo(type: Test) { classpath = sourceSets.integrationTestDynamo.runtimeClasspath outputs.upToDateWhen { false } // ensures integration tests are run every time when called options { - systemProperties(System.getProperties()) + systemProperties(System.getProperties().findAll{it.key.toString().startsWith("scalardb")}) } maxParallelForks = 10 } @@ -170,7 +170,7 @@ task integrationTestJdbc(type: Test) { classpath = sourceSets.integrationTestJdbc.runtimeClasspath outputs.upToDateWhen { false } // ensures integration tests are run every time when called options { - systemProperties(System.getProperties()) + systemProperties(System.getProperties().findAll{it.key.toString().startsWith("scalardb")}) } } @@ -181,7 +181,7 @@ task integrationTestMultiStorage(type: Test) { classpath = sourceSets.integrationTestMultiStorage.runtimeClasspath outputs.upToDateWhen { false } // ensures integration tests are run every time when called options { - systemProperties(System.getProperties()) + systemProperties(System.getProperties().findAll{it.key.toString().startsWith("scalardb")}) } } @@ -227,7 +227,9 @@ check.dependsOn += spotbugsMain check.dependsOn += spotbugsTest check.dependsOn += spotbugsIntegrationTest -archivesBaseName = "scalardb" +base { + archivesName = "scalardb" +} // for archiving and uploading to maven central publishing { diff --git a/docs/getting-started/build.gradle b/docs/getting-started/build.gradle index b001324eb4..8e775aa17a 100644 --- a/docs/getting-started/build.gradle +++ b/docs/getting-started/build.gradle @@ -6,7 +6,7 @@ repositories { mavenCentral() } -mainClassName = "sample.ElectronicMoneyMain" +mainClass = "sample.ElectronicMoneyMain" dependencies { implementation 'com.scalar-labs:scalardb:3.12.2' diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index cc4fdc293d0e50b0ad9b65c16e7ddd1db2f6025b..e708b1c023ec8b20f512888fe07c5bd3ff77bb8f 100644 GIT binary patch delta 18978 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 delta 18570 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 2>&1 -if "%ERRORLEVEL%" == "0" goto init +if "%ERRORLEVEL%" == "0" goto execute echo. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. @@ -51,7 +54,7 @@ goto fail set JAVA_HOME=%JAVA_HOME:"=% set JAVA_EXE=%JAVA_HOME%/bin/java.exe -if exist "%JAVA_EXE%" goto init +if exist "%JAVA_EXE%" goto execute echo. echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% @@ -61,28 +64,14 @@ echo location of your Java installation. goto fail -:init -@rem Get command-line arguments, handling Windows variants - -if not "%OS%" == "Windows_NT" goto win9xME_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* - :execute @rem Setup the command line set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* :end @rem End local scope for the variables with windows NT shell diff --git a/integration-test/build.gradle b/integration-test/build.gradle index 6290ac6b57..3567f531c4 100644 --- a/integration-test/build.gradle +++ b/integration-test/build.gradle @@ -3,6 +3,7 @@ plugins { id 'net.ltgt.errorprone' version "${errorpronePluginVersion}" id 'maven-publish' id 'signing' + id 'base' } dependencies { @@ -52,7 +53,9 @@ spotbugsTest.reports { } spotbugsTest.excludeFilter = file("${project.rootDir}/gradle/spotbugs-exclude.xml") -archivesBaseName = "scalardb-integration-test" +base { + archivesName = "scalardb-integration-test" +} // for archiving and uploading to maven central publishing { diff --git a/rpc/build.gradle b/rpc/build.gradle index f80193e89f..b1fba2e1e7 100644 --- a/rpc/build.gradle +++ b/rpc/build.gradle @@ -2,6 +2,7 @@ plugins { id 'com.google.protobuf' version "${protobufPluginVersion}" id 'maven-publish' id 'signing' + id 'base' } dependencies { @@ -27,7 +28,9 @@ protobuf { generatedFilesBaseDir = "$projectDir/src" } -archivesBaseName = "scalardb-rpc" +base { + archivesName = "scalardb-rpc" +} // plugin com.google.protobuf generates tasks in runtime so that we have do declare dependencies dynamically tasks.whenTaskAdded { t -> diff --git a/schema-loader/build.gradle b/schema-loader/build.gradle index a673b15da5..4ab9eabbbc 100644 --- a/schema-loader/build.gradle +++ b/schema-loader/build.gradle @@ -1,13 +1,16 @@ plugins { - id 'com.palantir.docker' version "${dockerPluginVersion}" id 'net.ltgt.errorprone' version "${errorpronePluginVersion}" id 'com.github.johnrengelman.shadow' version "${shadowPluginVersion}" id 'com.github.spotbugs' version "${spotbugsPluginVersion}" id 'maven-publish' id 'signing' + id 'base' +} + +base { + archivesName = "scalardb-schema-loader" } -archivesBaseName = "scalardb-schema-loader" dependencies { implementation project(':core') @@ -33,16 +36,24 @@ dependencies { javadoc { title = "ScalarDB Schema Loader" } +task dockerfileLint(type: Exec) { + description 'Lint the Dockerfile' + commandLine "${project.rootDir}/ci/dockerfile_lint.sh" +} -docker { +task copyFilesToDockerBuildContextDir(type: Copy) { + description 'Copy files to a temporary folder to build the Docker image' dependsOn shadowJar - name "ghcr.io/scalar-labs/scalardb-schema-loader:${project.version}" - files tasks.shadowJar.outputs + from("Dockerfile") + from(tasks.shadowJar.archiveFile) + into('build/docker') } -task dockerfileLint(type: Exec) { - description 'Lint the Dockerfile' - commandLine "${project.rootDir}/ci/dockerfile_lint.sh" +task docker(type: Exec) { + description 'Build ScalarDB Schema Loader Docker image' + dependsOn copyFilesToDockerBuildContextDir + workingDir 'build/docker' + commandLine 'docker', 'build', "--tag=ghcr.io/scalar-labs/scalardb-schema-loader:${project.version}", "." } // Build a fat jar diff --git a/server/build.gradle b/server/build.gradle index 1fbf0a815b..6929b17765 100644 --- a/server/build.gradle +++ b/server/build.gradle @@ -1,10 +1,10 @@ plugins { id 'application' - id 'com.palantir.docker' version "${dockerPluginVersion}" id 'com.github.spotbugs' version "${spotbugsPluginVersion}" id 'net.ltgt.errorprone' version "${errorpronePluginVersion}" id 'maven-publish' id 'signing' + id 'base' } sourceSets { @@ -65,20 +65,35 @@ javadoc { } application { - mainClassName = 'com.scalar.db.server.ScalarDbServer' + mainClass = 'com.scalar.db.server.ScalarDbServer' startScripts.applicationName = 'scalardb-server' } -docker { - name "ghcr.io/scalar-labs/scalardb-server:${project.version}" - files tasks.distTar.outputs, 'conf/log4j2.properties', 'conf/database.properties', 'docker-entrypoint.sh' -} - task dockerfileLint(type: Exec) { description 'Lint the Dockerfile' commandLine "${project.rootDir}/ci/dockerfile_lint.sh" } +task copyFilesToDockerBuildContextDir(type: Copy) { + description 'Copy files to a temporary folder to build the Docker image' + dependsOn distTar + from('Dockerfile') + from('conf') { + include 'log4j2.properties' + include 'database.properties' + } + from('docker-entrypoint.sh') + from(tasks.distTar.archiveFile) + into('build/docker') +} + +task docker(type: Exec) { + description 'Build ScalarDB Server Docker image' + dependsOn copyFilesToDockerBuildContextDir + workingDir 'build/docker' + commandLine 'docker', 'build', "--tag=ghcr.io/scalar-labs/scalardb-server:${project.version}", "." +} + task integrationTestScalarDbServer(type: Test) { useJUnitPlatform() description = 'Runs the integration tests for the ScalarDB Server.' @@ -87,7 +102,7 @@ task integrationTestScalarDbServer(type: Test) { classpath = sourceSets.integrationTestScalarDbServer.runtimeClasspath outputs.upToDateWhen { false } // ensures integration tests are run every time when called options { - systemProperties(System.getProperties()) + systemProperties(System.getProperties().findAll{it.key.toString().startsWith("scalardb")}) } } @@ -115,11 +130,13 @@ spotbugsIntegrationTestScalarDbServer.reports { } spotbugsIntegrationTestScalarDbServer.excludeFilter = file("${project.rootDir}/gradle/spotbugs-exclude.xml") -archivesBaseName = "scalardb-server" +base { + archivesName = "scalardb-server" +} // for release distZip { - archiveFileName = "${archivesBaseName}-${project.version}.zip" + archiveFileName = "${base.archivesName.get()}-${project.version}.zip" } // for docker From 6869be5cc5673c960281f044475812ca45db1a88 Mon Sep 17 00:00:00 2001 From: Vincent Guilpain Date: Thu, 23 May 2024 14:31:42 +0900 Subject: [PATCH 2/7] Fix according to comments --- .github/workflows/ci.yaml | 42 +++---- buildSrc/build.gradle | 2 +- .../com/scalar/db/JdkConfigurationPlugin.java | 106 +++++++++--------- schema-loader/build.gradle | 1 + 4 files changed, 76 insertions(+), 75 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index bd175cdb5e..9b5064db90 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -141,7 +141,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestCassandra -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -182,7 +182,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestCassandra -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -218,7 +218,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCosmos' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCosmos -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ + arguments: integrationTestCosmos -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ - name : Delete gradle daemon log files if: always() @@ -262,7 +262,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestDynamo' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestDynamo -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestDynamo -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -298,7 +298,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -335,7 +335,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -371,7 +371,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -412,7 +412,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -453,7 +453,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -494,7 +494,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -535,7 +535,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -582,7 +582,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -629,7 +629,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -690,7 +690,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Stop Oracle 23 container if: always() @@ -741,7 +741,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -788,7 +788,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -835,7 +835,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -870,7 +870,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 - name: Upload Gradle test reports if: always() @@ -906,7 +906,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports if: always() @@ -951,7 +951,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestMultiStorage' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestMultiStorage -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestMultiStorage -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 @@ -987,7 +987,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestScalarDbServer' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestScalarDbServer -PcompilationJavaVendor=temurin -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestScalarDbServer -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle index ef152e7919..756d4b74ee 100644 --- a/buildSrc/build.gradle +++ b/buildSrc/build.gradle @@ -1,6 +1,6 @@ plugins { id 'java-gradle-plugin' - id "com.diffplug.spotless" version "6.13.0" + id 'com.diffplug.spotless' version '6.13.0' } repositories { diff --git a/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java index 666278e6d0..046f7f4861 100644 --- a/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java +++ b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java @@ -1,7 +1,6 @@ package com.scalar.db; import java.util.Objects; -import java.util.function.Consumer; import javax.annotation.Nullable; import org.gradle.api.Plugin; import org.gradle.api.Project; @@ -15,11 +14,10 @@ import org.slf4j.LoggerFactory; /** - * Plugin configuring compilation and integration test tasks to use a given SDK defined by the - * following Gradle properties: + * Plugin configuring compilation tasks to use JDK 8 (temurin) and integration test tasks to use a + * given SDK defined by the following Gradle properties: * *
    - *
  • `compilationJavaVendor` : configure the SDK vendor used by compilation tasks *
  • `integrationTestJavaVersion` : configure all tasks name starting with "integrationTest" to * run with the given SDK version *
  • `integrationTestJavaVendor` : configure all tasks name starting with "integrationTest" to @@ -29,20 +27,22 @@ * Usage example using the CLI : * *
    
    - *   gradle integrationTestJdbc -PcompilationJavaVendor=amazon -PintegrationTestJavaVersion=11 -PintegrationJavaVendor=temurin
    + *   gradle integrationTestJdbc -PintegrationTestJavaVersion=11 -PintegrationTestJavaVendor=amazon
      * 
    */ public class JdkConfigurationPlugin implements Plugin { private static final Logger logger = LoggerFactory.getLogger(JdkConfigurationPlugin.class); private static final JavaLanguageVersion COMPILATION_JAVA_VERSION = JavaLanguageVersion.of(8); - @Nullable private JvmVendorSpec compilationJavaVendor; + private static final JvmVendorSpec COMPILATION_JAVA_VENDOR = JvmVendorSpec.ADOPTIUM; + private static final String INTEGRATION_TEST_JAVA_VERSION_PROP = "integrationTestJavaVersion"; + private static final String INTEGRATION_TEST_JAVA_VENDOR_PROP = "integrationTestJavaVendor"; @Nullable private JavaLanguageVersion integrationTestJavaVersion; @Nullable private JvmVendorSpec integrationTestJavaVendor; @Override public void apply(@NotNull Project project) { - parseInputParameters(project); + parseIntegrationTestInputProperties(project); configureJdkForCompilationTasks(project); configureJdkForIntegrationTestTasks(project); } @@ -52,24 +52,27 @@ private void configureJdkForCompilationTasks(Project project) { .getTasks() .withType(JavaCompile.class) .configureEach( - javaCompileTask -> { - javaCompileTask - .getJavaCompiler() - .set( - getJavaToolchainService(project) - .compilerFor( - config -> { - config.getLanguageVersion().set(COMPILATION_JAVA_VERSION); - logVersion(javaCompileTask.getName(), COMPILATION_JAVA_VERSION); - if (compilationJavaVendor != null) { - config.getVendor().set(compilationJavaVendor); - logVendor(javaCompileTask.getName(), compilationJavaVendor); - } - })); - }); + javaCompileTask -> + javaCompileTask + .getJavaCompiler() + .set( + getJavaToolchainService(project) + .compilerFor( + config -> { + config.getLanguageVersion().set(COMPILATION_JAVA_VERSION); + config.getVendor().set(COMPILATION_JAVA_VENDOR); + logger.debug( + "Configure task '{}' to use JDK {} ({})", + javaCompileTask.getName(), + COMPILATION_JAVA_VERSION, + COMPILATION_JAVA_VENDOR); + }))); } private void configureJdkForIntegrationTestTasks(Project project) { + if (integrationTestJavaVersion == null) { + return; + } project .getTasks() .withType(Test.class) @@ -82,16 +85,17 @@ private void configureJdkForIntegrationTestTasks(Project project) { getJavaToolchainService(project) .launcherFor( config -> { - if (integrationTestJavaVersion == null) { - return; - } config.getLanguageVersion().set(integrationTestJavaVersion); - logVersion( - integrationTestTask.getName(), integrationTestJavaVersion); + logger.debug( + "Configure task '{}' to use JDK version {}", + integrationTestTask.getName(), + integrationTestJavaVersion); if (integrationTestJavaVendor != null) { config.getVendor().set(integrationTestJavaVendor); - logVendor( - integrationTestTask.getName(), integrationTestJavaVendor); + logger.debug( + "Configure task '{}' to use {} JDK vendor", + integrationTestTask.getName(), + integrationTestJavaVendor); } }))); } @@ -100,43 +104,39 @@ private void configureJdkForIntegrationTestTasks(Project project) { return project.getExtensions().getByType(JavaToolchainService.class); } - private void parseInputParameters(Project project) { - parseVendor(project, "compilationJavaVendor", (vendor) -> compilationJavaVendor = vendor); - parseVendor( - project, "integrationTestJavaVendor", (vendor) -> integrationTestJavaVendor = vendor); - if (project.hasProperty("integrationTestJavaVersion")) { - integrationTestJavaVersion = - JavaLanguageVersion.of(Objects.toString(project.property("integrationTestJavaVersion"))); - } + private void parseIntegrationTestInputProperties(Project project) { + parseIntegrationTestVersionInputProperty(project); + parseIntegrationTestVendorInputProperty(project); if (integrationTestJavaVersion == null && integrationTestJavaVendor != null) { throw new IllegalArgumentException( - "When configuring the JDK vendor to run integration test, you also need to set the JDK version using the \"integrationTestJavaVersion\" project property."); + "When configuring the JDK vendor to run integration test, you also need to set the JDK version using the \"" + + INTEGRATION_TEST_JAVA_VERSION_PROP + + "\" project property."); } } - private void parseVendor( - Project project, String parameterName, Consumer attributeSetter) { - if (!project.getRootProject().hasProperty(parameterName)) { + private void parseIntegrationTestVersionInputProperty(Project project) { + if (project.hasProperty(INTEGRATION_TEST_JAVA_VERSION_PROP)) { + integrationTestJavaVersion = + JavaLanguageVersion.of( + Objects.toString(project.property(INTEGRATION_TEST_JAVA_VERSION_PROP))); + } + } + + private void parseIntegrationTestVendorInputProperty(Project project) { + if (!project.getRootProject().hasProperty(INTEGRATION_TEST_JAVA_VENDOR_PROP)) { return; } - String propertyValue = Objects.toString(project.property(parameterName)); + String propertyValue = Objects.toString(project.property(INTEGRATION_TEST_JAVA_VENDOR_PROP)); switch (propertyValue) { case "corretto": - attributeSetter.accept(JvmVendorSpec.AMAZON); + integrationTestJavaVendor = JvmVendorSpec.AMAZON; break; case "temurin": - attributeSetter.accept(JvmVendorSpec.ADOPTIUM); + integrationTestJavaVendor = JvmVendorSpec.ADOPTIUM; break; default: - attributeSetter.accept(JvmVendorSpec.matching(propertyValue)); + integrationTestJavaVendor = JvmVendorSpec.matching(propertyValue); } } - - private void logVersion(String taskName, Object version) { - logger.debug("Configure task '{}' to use JDK version {}", taskName, version); - } - - private void logVendor(String taskName, JvmVendorSpec vendor) { - logger.debug("Configure task '{}' to use {} JDK vendor", taskName, vendor); - } } diff --git a/schema-loader/build.gradle b/schema-loader/build.gradle index 4ab9eabbbc..97523de479 100644 --- a/schema-loader/build.gradle +++ b/schema-loader/build.gradle @@ -36,6 +36,7 @@ dependencies { javadoc { title = "ScalarDB Schema Loader" } + task dockerfileLint(type: Exec) { description 'Lint the Dockerfile' commandLine "${project.rootDir}/ci/dockerfile_lint.sh" From 1da16c7cff9ce55c7f2340b8047f60468f8ca80a Mon Sep 17 00:00:00 2001 From: Vincent Guilpain Date: Wed, 29 May 2024 15:39:39 +0900 Subject: [PATCH 3/7] Make Java version and vendor configurable --- .github/workflows/ci.yaml | 364 +++++++++--------- build.gradle | 2 - .../com/scalar/db/JdkConfigurationPlugin.java | 124 +++--- 3 files changed, 250 insertions(+), 240 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 41e51c2262..d03552220a 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,11 +1,11 @@ name: CI -run-name: "${{ github.event_name == 'workflow_dispatch' && format('Dispatch : Run integration test with JDK {0} ({1})', inputs.int_test_java_version, inputs.int_test_java_vendor) || '' }}" +run-name: "${{ github.event_name == 'workflow_dispatch' && format('Dispatch : Run integration test with JDK {0} ({1})', inputs.INT_TEST_JAVA_RUNTIME_VERSION, inputs.INT_TEST_JAVA_RUNTIME_VENDOR) || '' }}" on: pull_request: workflow_dispatch: inputs: - int_test_java_version: + INT_TEST_JAVA_RUNTIME_VERSION: description: JDK version used to run the integration test type: choice required: false @@ -15,7 +15,7 @@ on: - '11' - '17' - '21' - int_test_java_vendor: + INT_TEST_JAVA_RUNTIME_VENDOR: description: Vendor of the JDK used to run the integration test type: choice required: false @@ -28,8 +28,10 @@ on: env: TERM: dumb - INT_TEST_JAVA_VERSION: "${{ github.event_name != 'workflow_dispatch' && '8' || inputs.int_test_java_version }}" - INT_TEST_JAVA_VENDOR: "${{ github.event_name != 'workflow_dispatch' && 'temurin' || inputs.int_test_java_vendor }}" + JAVA_COMPILER_VERSION: '8' + JAVA_COMPILER_VENDOR: 'temurin' + INT_TEST_JAVA_RUNTIME_VERSION: "${{ github.event_name != 'workflow_dispatch' && env.JAVA_COMPILER_VERSION || inputs.INT_TEST_JAVA_RUNTIME_VERSION }}" + INT_TEST_JAVA_RUNTIME_VENDOR: "${{ github.event_name != 'workflow_dispatch' && env.JAVA_COMPILER_VENDOR || inputs.INT_TEST_JAVA_RUNTIME_VENDOR }}" jobs: check: @@ -38,11 +40,11 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - name: Setup and execute Gradle 'check' task uses: gradle/gradle-build-action@v3 @@ -92,11 +94,11 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - name: Dockerfile Lint for ScalarDB Server uses: gradle/gradle-build-action@v3 @@ -125,23 +127,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -166,23 +168,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -198,18 +200,18 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Generate unique prefix using the epoch run: | @@ -218,7 +220,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCosmos' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCosmos -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ + arguments: integrationTestCosmos -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ - name : Delete gradle daemon log files if: always() @@ -246,23 +248,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestDynamo' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestDynamo -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestDynamo -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -282,23 +284,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -318,24 +320,24 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -355,23 +357,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -396,23 +398,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -437,23 +439,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -478,23 +480,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -519,23 +521,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -566,23 +568,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -613,23 +615,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -674,23 +676,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Stop Oracle 23 container if: always() @@ -721,18 +723,18 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Create no superuser run: ./ci/no-superuser/create-no-superuser-sqlserver.sh sqlserver17 SqlServer17 10 3 @@ -741,7 +743,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -768,18 +770,18 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Create no superuser run: ./ci/no-superuser/create-no-superuser-sqlserver.sh sqlserver19 SqlServer19 10 3 @@ -788,7 +790,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -815,18 +817,18 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Create no superuser run: ./ci/no-superuser/create-no-superuser-sqlserver.sh sqlserver22 SqlServer22 10 3 @@ -835,7 +837,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -851,18 +853,18 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Set up SQLite3 run: sudo apt-get install -y sqlite3 @@ -870,7 +872,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 - name: Upload Gradle test reports if: always() @@ -890,23 +892,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -929,8 +931,8 @@ jobs: - name: Set up JDK 8 uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 @@ -964,23 +966,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestMultiStorage' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestMultiStorage -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestMultiStorage -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 @@ -1000,23 +1002,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 (temurin) + - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_COMPILER_VERSION }} + distribution: ${{ env.JAVA_COMPILER_VENDOR }} - - name: ${{ format('Set up JDK {0} ({1}) to run integration test', env.INT_TEST_JAVA_VERSION, env.INT_TEST_JAVA_VENDOR) }} + - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_VERSION == '8' && env.INT_TEST_JAVA_VENDOR == 'temurin') }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} with: - java-version: ${{ env.INT_TEST_JAVA_VERSION }} - distribution: ${{ env.INT_TEST_JAVA_VENDOR }} + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestScalarDbServer' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestScalarDbServer -PintegrationTestJavaVersion=${{ env.INT_TEST_JAVA_VERSION }} -PintegrationTestJavaVendor=${{ env.INT_TEST_JAVA_VENDOR }} + arguments: integrationTestScalarDbServer -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 diff --git a/build.gradle b/build.gradle index 02d63074c0..156b653ec0 100644 --- a/build.gradle +++ b/build.gradle @@ -74,8 +74,6 @@ subprojects { group = "com.scalar-labs" java { - sourceCompatibility = JavaLanguageVersion.of(8) - targetCompatibility = JavaLanguageVersion.of(8) withJavadocJar() withSourcesJar() } diff --git a/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java index 046f7f4861..f823b71f4a 100644 --- a/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java +++ b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java @@ -1,10 +1,11 @@ package com.scalar.db; import java.util.Objects; +import java.util.function.Consumer; import javax.annotation.Nullable; import org.gradle.api.Plugin; import org.gradle.api.Project; -import org.gradle.api.tasks.compile.JavaCompile; +import org.gradle.api.plugins.JavaPluginExtension; import org.gradle.api.tasks.testing.Test; import org.gradle.jvm.toolchain.JavaLanguageVersion; import org.gradle.jvm.toolchain.JavaToolchainService; @@ -14,59 +15,66 @@ import org.slf4j.LoggerFactory; /** - * Plugin configuring compilation tasks to use JDK 8 (temurin) and integration test tasks to use a - * given SDK defined by the following Gradle properties: + * Plugin configuring all tasks and integration test tasks to use a given JDK defined by the + * following Gradle properties: * *
      - *
    • `integrationTestJavaVersion` : configure all tasks name starting with "integrationTest" to - * run with the given SDK version - *
    • `integrationTestJavaVendor` : configure all tasks name starting with "integrationTest" to - * run with the given SDK vendor + *
    • `javaVersion` : configure all Java related tasks to use the given JDK version. The default + * java version 8. + *
    • `javaVendor` : configure all Java related tasks to use the given JDK vendor. The default + * java vendor is Adoptium (also known as Temurin) + *
    • `integrationTestJavaRuntimeVersion` : configure all test tasks name starting with + * "integrationTest" to run with the given JDK version. The default Java runtime version is 8. + *
    • `integrationTestJavaRuntimeVendor` : configure all test tasks name starting with + * "integrationTest" to run with the given JDK vendor. The default Java runtime vendor is + * Adoptium (also known as Temurin) *
    * - * Usage example using the CLI : + *

    Usage example using the CLI: + * + *

    1. To use JDK 11 (amazon) for all Java tasks including integration tests + * + *

    
    + *   gradle integrationTestJdbc -PjavaVersion=11 -PjavaVendor=amazon
    + * 
    + * + * 2. To use JDK 11 (amazon) for all Java tasks while having integration test use JDK 17 (microsoft) * *
    
    - *   gradle integrationTestJdbc -PintegrationTestJavaVersion=11 -PintegrationTestJavaVendor=amazon
    + *   gradle integrationTestJdbc -PjavaVersion=11 -PjavaVendor=amazon -PintegrationTestJavaRuntimeVersion=17 -PintegrationTestJavaRuntimeVendor=microsoft
      * 
    */ public class JdkConfigurationPlugin implements Plugin { + private static final Logger logger = LoggerFactory.getLogger(JdkConfigurationPlugin.class); + // JDK 8 (temurin) is used as the default compiler + private static final JavaLanguageVersion DEFAULT_JAVA_VERSION = JavaLanguageVersion.of(8); + private static final JvmVendorSpec DEFAULT_JAVA_VENDOR = JvmVendorSpec.ADOPTIUM; - private static final JavaLanguageVersion COMPILATION_JAVA_VERSION = JavaLanguageVersion.of(8); - private static final JvmVendorSpec COMPILATION_JAVA_VENDOR = JvmVendorSpec.ADOPTIUM; - private static final String INTEGRATION_TEST_JAVA_VERSION_PROP = "integrationTestJavaVersion"; - private static final String INTEGRATION_TEST_JAVA_VENDOR_PROP = "integrationTestJavaVendor"; + private static final String JAVA_VERSION_PROP = "javaVersion"; + private static final String JAVA_VENDOR_PROP = "javaVendor"; + private static final String INTEGRATION_TEST_JAVA_RUNTIME_VERSION_PROP = + "integrationTestJavaRuntimeVersion"; + private static final String INTEGRATION_TEST_JAVA_RUNTIME_VENDOR_PROP = + "integrationTestJavaRuntimeVendor"; + + private JavaLanguageVersion javaVersion = DEFAULT_JAVA_VERSION; + private JvmVendorSpec javaVendor = DEFAULT_JAVA_VENDOR; @Nullable private JavaLanguageVersion integrationTestJavaVersion; @Nullable private JvmVendorSpec integrationTestJavaVendor; @Override public void apply(@NotNull Project project) { parseIntegrationTestInputProperties(project); - configureJdkForCompilationTasks(project); + configureJdkForAllJavaTasks(project); configureJdkForIntegrationTestTasks(project); } - private void configureJdkForCompilationTasks(Project project) { - project - .getTasks() - .withType(JavaCompile.class) - .configureEach( - javaCompileTask -> - javaCompileTask - .getJavaCompiler() - .set( - getJavaToolchainService(project) - .compilerFor( - config -> { - config.getLanguageVersion().set(COMPILATION_JAVA_VERSION); - config.getVendor().set(COMPILATION_JAVA_VENDOR); - logger.debug( - "Configure task '{}' to use JDK {} ({})", - javaCompileTask.getName(), - COMPILATION_JAVA_VERSION, - COMPILATION_JAVA_VENDOR); - }))); + private void configureJdkForAllJavaTasks(Project project) { + JavaPluginExtension javaPlugin = project.getExtensions().getByType(JavaPluginExtension.class); + javaPlugin.getToolchain().getLanguageVersion().set(javaVersion); + javaPlugin.getToolchain().getVendor().set(javaVendor); + logger.debug("Configure JDK {} ({}) for Java tasks", javaVersion, javaVendor); } private void configureJdkForIntegrationTestTasks(Project project) { @@ -100,43 +108,45 @@ private void configureJdkForIntegrationTestTasks(Project project) { }))); } - private static @NotNull JavaToolchainService getJavaToolchainService(Project project) { - return project.getExtensions().getByType(JavaToolchainService.class); - } - private void parseIntegrationTestInputProperties(Project project) { - parseIntegrationTestVersionInputProperty(project); - parseIntegrationTestVendorInputProperty(project); - if (integrationTestJavaVersion == null && integrationTestJavaVendor != null) { - throw new IllegalArgumentException( - "When configuring the JDK vendor to run integration test, you also need to set the JDK version using the \"" - + INTEGRATION_TEST_JAVA_VERSION_PROP - + "\" project property."); - } + parseVersionInputProperty(project, JAVA_VERSION_PROP, (version) -> javaVersion = version); + parseVendorInputProperty(project, JAVA_VENDOR_PROP, (vendor) -> javaVendor = vendor); + parseVersionInputProperty( + project, + INTEGRATION_TEST_JAVA_RUNTIME_VERSION_PROP, + (version) -> integrationTestJavaVersion = version); + parseVendorInputProperty( + project, + INTEGRATION_TEST_JAVA_RUNTIME_VENDOR_PROP, + (vendor) -> integrationTestJavaVendor = vendor); } - private void parseIntegrationTestVersionInputProperty(Project project) { - if (project.hasProperty(INTEGRATION_TEST_JAVA_VERSION_PROP)) { - integrationTestJavaVersion = - JavaLanguageVersion.of( - Objects.toString(project.property(INTEGRATION_TEST_JAVA_VERSION_PROP))); + private void parseVersionInputProperty( + Project project, String property, Consumer attributeSetter) { + if (project.hasProperty(property)) { + attributeSetter.accept(JavaLanguageVersion.of(Objects.toString(project.property(property)))); } } - private void parseIntegrationTestVendorInputProperty(Project project) { - if (!project.getRootProject().hasProperty(INTEGRATION_TEST_JAVA_VENDOR_PROP)) { + private void parseVendorInputProperty( + Project project, String property, Consumer attributeSetter) { + if (!project.getRootProject().hasProperty(property)) { return; } - String propertyValue = Objects.toString(project.property(INTEGRATION_TEST_JAVA_VENDOR_PROP)); + String propertyValue = Objects.toString(project.property(property)); switch (propertyValue) { case "corretto": - integrationTestJavaVendor = JvmVendorSpec.AMAZON; + attributeSetter.accept(JvmVendorSpec.AMAZON); break; case "temurin": - integrationTestJavaVendor = JvmVendorSpec.ADOPTIUM; + attributeSetter.accept(JvmVendorSpec.ADOPTIUM); break; default: - integrationTestJavaVendor = JvmVendorSpec.matching(propertyValue); + attributeSetter.accept(JvmVendorSpec.matching(propertyValue)); } } + + private @NotNull JavaToolchainService getJavaToolchainService(Project project) { + return project.getExtensions().getByType(JavaToolchainService.class); + } } From a41f5b07801f226db144b9e7a616dca95b02410a Mon Sep 17 00:00:00 2001 From: Vincent Guilpain Date: Wed, 29 May 2024 15:44:37 +0900 Subject: [PATCH 4/7] Fix CI --- .github/workflows/ci.yaml | 302 ++++++++++++++++++++------------------ 1 file changed, 158 insertions(+), 144 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 4c0b8ad339..46e8fc9293 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -28,10 +28,10 @@ on: env: TERM: dumb - JAVA_COMPILER_VERSION: '8' - JAVA_COMPILER_VENDOR: 'temurin' - INT_TEST_JAVA_RUNTIME_VERSION: "${{ github.event_name != 'workflow_dispatch' && env.JAVA_COMPILER_VERSION || inputs.INT_TEST_JAVA_RUNTIME_VERSION }}" - INT_TEST_JAVA_RUNTIME_VENDOR: "${{ github.event_name != 'workflow_dispatch' && env.JAVA_COMPILER_VENDOR || inputs.INT_TEST_JAVA_RUNTIME_VENDOR }}" + JAVA_VERSION: '8' + JAVA_VENDOR: 'temurin' + INT_TEST_JAVA_RUNTIME_VERSION: "${{ github.event_name != 'workflow_dispatch' && '8' || inputs.INT_TEST_JAVA_RUNTIME_VERSION }}" + INT_TEST_JAVA_RUNTIME_VENDOR: "${{ github.event_name != 'workflow_dispatch' && 'temurin' || inputs.INT_TEST_JAVA_RUNTIME_VENDOR }}" jobs: check: @@ -40,11 +40,11 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - name: Setup and execute Gradle 'check' task uses: gradle/gradle-build-action@v3 @@ -94,11 +94,11 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - name: Dockerfile Lint for ScalarDB Server uses: gradle/gradle-build-action@v3 @@ -127,15 +127,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -143,7 +143,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -168,15 +168,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -184,7 +184,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -200,15 +200,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -220,7 +220,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCosmos' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCosmos -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ + arguments: integrationTestCosmos -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ - name : Delete gradle daemon log files if: always() @@ -248,15 +248,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -264,7 +264,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestDynamo' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestDynamo -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestDynamo -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -284,15 +284,15 @@ jobs: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -300,7 +300,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -320,15 +320,15 @@ jobs: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -337,7 +337,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -357,15 +357,15 @@ jobs: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -373,7 +373,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -398,15 +398,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -414,7 +414,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -439,15 +439,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -455,7 +455,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -480,15 +480,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -496,7 +496,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -521,15 +521,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -537,7 +537,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -568,15 +568,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -584,7 +584,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -615,15 +615,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -631,7 +631,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -676,15 +676,15 @@ jobs: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -692,7 +692,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Stop Oracle 23 container if: always() @@ -723,15 +723,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -743,7 +743,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -770,15 +770,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -790,7 +790,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -817,15 +817,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -837,7 +837,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -853,15 +853,15 @@ jobs: steps: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -872,7 +872,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 - name: Upload Gradle test reports if: always() @@ -892,15 +892,15 @@ jobs: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -908,7 +908,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -928,16 +928,23 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} + + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} + with: + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:yugabytedb://localhost:5433/ -Dscalardb.jdbc.username=yugabyte -Dscalardb.jdbc.password=yugabyte -Dscalar.db.jdbc.connection_pool.max_total=12 -Dscalar.db.jdbc.table_metadata.connection_pool.max_total=4 -Dscalar.db.jdbc.admin.connection_pool.max_total=4 + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:yugabytedb://localhost:5433/ -Dscalardb.jdbc.username=yugabyte -Dscalardb.jdbc.password=yugabyte -Dscalar.db.jdbc.connection_pool.max_total=12 -Dscalar.db.jdbc.table_metadata.connection_pool.max_total=4 -Dscalar.db.jdbc.admin.connection_pool.max_total=4 - name: Upload Gradle test reports if: always() @@ -966,15 +973,15 @@ jobs: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -982,7 +989,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestMultiStorage' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestMultiStorage -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestMultiStorage -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 @@ -1002,15 +1009,15 @@ jobs: - uses: actions/checkout@v4 - - name: ${{ Set up JDK {env.JAVA_COMPILER_VERSION} ({env.JAVA_COMPILER_VENDOR}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: ${{ env.JAVA_COMPILER_VERSION }} - distribution: ${{ env.JAVA_COMPILER_VENDOR }} + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} - - name: ${{ Set up JDK env.INT_TEST_JAVA_RUNTIME_VERSION (env.INT_TEST_JAVA_RUNTIME_VENDOR) to run integration test }} + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test uses: actions/setup-java@v4 - if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_COMPILER_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_COMPILER_VENDOR) }} + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} @@ -1018,7 +1025,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestScalarDbServer' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestScalarDbServer -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestScalarDbServer -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 @@ -1043,16 +1050,23 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 8 + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} uses: actions/setup-java@v4 with: - java-version: '8' - distribution: 'temurin' + java-version: ${{ env.JAVA_VERSION }} + distribution: ${{ env.JAVA_VENDOR }} + + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + uses: actions/setup-java@v4 + if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} + with: + java-version: ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} + distribution: ${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres -Dscalar.db.consensus_commit.coordinator.group_commit.enabled=true -Dscalar.db.consensus_commit.coordinator.group_commit.old_group_abort_timeout_millis=15000 --tests "**ConsensusCommit**" + arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres -Dscalar.db.consensus_commit.coordinator.group_commit.enabled=true -Dscalar.db.consensus_commit.coordinator.group_commit.old_group_abort_timeout_millis=15000 --tests "**ConsensusCommit**" - name: Upload Gradle test reports if: always() From 05aba7599f8d77624ec62777340efefd14aa410e Mon Sep 17 00:00:00 2001 From: Vincent Guilpain Date: Wed, 29 May 2024 16:06:45 +0900 Subject: [PATCH 5/7] Fix typos (skip ci) --- .github/workflows/ci.yaml | 96 +++++++++++++++++++-------------------- 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 46e8fc9293..f1ccaba178 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -40,7 +40,7 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} @@ -94,7 +94,7 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} @@ -127,13 +127,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -168,13 +168,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -200,13 +200,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -248,13 +248,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -284,13 +284,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -320,13 +320,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -357,13 +357,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -398,13 +398,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -439,13 +439,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -480,13 +480,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -521,13 +521,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -568,13 +568,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -615,13 +615,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -676,13 +676,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -723,13 +723,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -770,13 +770,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -817,13 +817,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -853,13 +853,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -892,13 +892,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -928,13 +928,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -973,13 +973,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -1009,13 +1009,13 @@ jobs: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: @@ -1050,13 +1050,13 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) }} + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} distribution: ${{ env.JAVA_VENDOR }} - - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR}}) to run integration test + - name: Set up JDK ${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} (${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }}) to run integration test uses: actions/setup-java@v4 if: ${{ !(env.INT_TEST_JAVA_RUNTIME_VERSION == env.JAVA_VERSION && env.INT_TEST_JAVA_RUNTIME_VENDOR == env.JAVA_VENDOR) }} with: From a9b341b2f792e1a236fc1d80dbe347902e89c79c Mon Sep 17 00:00:00 2001 From: Vincent Guilpain Date: Wed, 29 May 2024 17:10:22 +0900 Subject: [PATCH 6/7] Fix typos [skip ci] --- .github/workflows/ci.yaml | 2 +- .../src/main/java/com/scalar/db/JdkConfigurationPlugin.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index f1ccaba178..d46b75355e 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -40,7 +40,7 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) + - name: Set up JDK ${{ env.JAVA_VERSION }} (${{ env.JAVA_VENDOR }}) uses: actions/setup-java@v4 with: java-version: ${{ env.JAVA_VERSION }} diff --git a/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java index f823b71f4a..3d46261c6a 100644 --- a/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java +++ b/buildSrc/src/main/java/com/scalar/db/JdkConfigurationPlugin.java @@ -22,12 +22,12 @@ *
  • `javaVersion` : configure all Java related tasks to use the given JDK version. The default * java version 8. *
  • `javaVendor` : configure all Java related tasks to use the given JDK vendor. The default - * java vendor is Adoptium (also known as Temurin) + * java vendor is Adoptium (also known as Temurin). *
  • `integrationTestJavaRuntimeVersion` : configure all test tasks name starting with * "integrationTest" to run with the given JDK version. The default Java runtime version is 8. *
  • `integrationTestJavaRuntimeVendor` : configure all test tasks name starting with * "integrationTest" to run with the given JDK vendor. The default Java runtime vendor is - * Adoptium (also known as Temurin) + * Adoptium (also known as Temurin). *
* *

Usage example using the CLI: @@ -47,7 +47,7 @@ public class JdkConfigurationPlugin implements Plugin { private static final Logger logger = LoggerFactory.getLogger(JdkConfigurationPlugin.class); - // JDK 8 (temurin) is used as the default compiler + // JDK 8 (temurin) is used as default for all tasks (compilation, tests, etc.) private static final JavaLanguageVersion DEFAULT_JAVA_VERSION = JavaLanguageVersion.of(8); private static final JvmVendorSpec DEFAULT_JAVA_VENDOR = JvmVendorSpec.ADOPTIUM; From 1ed1997919a3493d731e8c65b8ed41017252aad7 Mon Sep 17 00:00:00 2001 From: Vincent Guilpain Date: Fri, 31 May 2024 09:22:36 +0900 Subject: [PATCH 7/7] Fix according to comments --- .github/workflows/ci.yaml | 48 +++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index d46b75355e..260a8050ae 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -49,7 +49,7 @@ jobs: - name: Setup and execute Gradle 'check' task uses: gradle/gradle-build-action@v3 with: - arguments: check buildSrc:check + arguments: check buildSrc:check -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} - name: Save Gradle test reports if: always() @@ -143,7 +143,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestCassandra -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -184,7 +184,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCassandra' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCassandra -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestCassandra -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -220,7 +220,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestCosmos' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestCosmos -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ + arguments: integrationTestCosmos -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.cosmos.uri=${{ secrets.COSMOS_URI }} -Dscalardb.cosmos.password=${{ secrets.COSMOS_PASSWORD }} -Dscalardb.cosmos.database_prefix=${{ env.db_prefix }}_ - name : Delete gradle daemon log files if: always() @@ -264,7 +264,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestDynamo' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestDynamo -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestDynamo -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -300,7 +300,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -337,7 +337,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -373,7 +373,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -414,7 +414,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -455,7 +455,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -496,7 +496,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -537,7 +537,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres - name: Upload Gradle test reports if: always() @@ -584,7 +584,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -631,7 +631,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/XEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Upload Gradle test reports if: always() @@ -692,7 +692,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:oracle:thin:@//localhost:1521/FREEPDB1 -Dscalardb.jdbc.username=SYSTEM -Dscalardb.jdbc.password=Oracle - name: Stop Oracle 23 container if: always() @@ -743,7 +743,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -790,7 +790,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -837,7 +837,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlserver://localhost:1433;databaseName=test_db;encrypt=true;trustServerCertificate=true -Dscalardb.jdbc.username=no_superuser -Dscalardb.jdbc.password=no_superuser_password - name: Upload Gradle test reports if: always() @@ -872,7 +872,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:sqlite:integration.sqlite3?busy_timeout=50000 - name: Upload Gradle test reports if: always() @@ -908,7 +908,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports if: always() @@ -944,7 +944,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:yugabytedb://localhost:5433/ -Dscalardb.jdbc.username=yugabyte -Dscalardb.jdbc.password=yugabyte -Dscalar.db.jdbc.connection_pool.max_total=12 -Dscalar.db.jdbc.table_metadata.connection_pool.max_total=4 -Dscalar.db.jdbc.admin.connection_pool.max_total=4 + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:yugabytedb://localhost:5433/ -Dscalardb.jdbc.username=yugabyte -Dscalardb.jdbc.password=yugabyte -Dscalar.db.jdbc.connection_pool.max_total=12 -Dscalar.db.jdbc.table_metadata.connection_pool.max_total=4 -Dscalar.db.jdbc.admin.connection_pool.max_total=4 - name: Upload Gradle test reports if: always() @@ -989,7 +989,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestMultiStorage' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestMultiStorage -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestMultiStorage -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 @@ -1025,7 +1025,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestScalarDbServer' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestScalarDbServer -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} + arguments: integrationTestScalarDbServer -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} - name: Upload Gradle test reports uses: actions/upload-artifact@v4 @@ -1066,7 +1066,7 @@ jobs: - name: Setup and execute Gradle 'integrationTestJdbc' task uses: gradle/gradle-build-action@v3 with: - arguments: integrationTestJdbc -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres -Dscalar.db.consensus_commit.coordinator.group_commit.enabled=true -Dscalar.db.consensus_commit.coordinator.group_commit.old_group_abort_timeout_millis=15000 --tests "**ConsensusCommit**" + arguments: integrationTestJdbc -PjavaVersion=${{ env.JAVA_VERSION }} -PjavaVendor=${{ env.JAVA_VENDOR }} -PintegrationTestJavaRuntimeVersion=${{ env.INT_TEST_JAVA_RUNTIME_VERSION }} -PintegrationTestJavaRuntimeVendor=${{ env.INT_TEST_JAVA_RUNTIME_VENDOR }} -Dscalardb.jdbc.url=jdbc:postgresql://localhost:5432/ -Dscalardb.jdbc.username=postgres -Dscalardb.jdbc.password=postgres -Dscalar.db.consensus_commit.coordinator.group_commit.enabled=true -Dscalar.db.consensus_commit.coordinator.group_commit.old_group_abort_timeout_millis=15000 --tests "**ConsensusCommit**" - name: Upload Gradle test reports if: always()