Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EPMRPP-93641 migrate to JDK 21 #1044

Open
wants to merge 14 commits into
base: develop
Choose a base branch
from
Open
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2

- name: Set up JDK 11
- name: Set up JDK 21
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '11'
java-version: '21'

- name: Grant execute permission for gradlew
run: chmod +x gradlew
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/manually-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2

- name: Set up JDK 11
- name: Set up JDK 21
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '11'
java-version: '21'

- name: Grant execute permission for gradlew
run: chmod +x gradlew
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2

- name: Set up JDK 11
- name: Set up JDK 21
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '11'
java-version: '21'

- name: Grant execute permission for gradlew
run: chmod +x gradlew
Expand Down
79 changes: 42 additions & 37 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,21 +1,22 @@
import org.owasp.dependencycheck.reporting.ReportGenerator

plugins {
id 'io.spring.dependency-management' version '1.0.9.RELEASE'
id 'io.spring.dependency-management' version '1.1.6'
id 'java'
id 'java-library'
id 'nu.studer.jooq' version '3.0.3'
id 'org.owasp.dependencycheck' version '5.3.1'
id 'org.owasp.dependencycheck' version '11.1.0'
id "org.jooq.jooq-codegen-gradle" version "${jooqVersion}"
}

apply from: 'project-properties.gradle'
apply from: "$scriptsUrl/release-commons.gradle"
apply from: "$scriptsUrl/signing.gradle"
apply from: "$scriptsUrl/copy-database-scripts.gradle"
apply from: "$scriptsUrl/build-quality.gradle"
apply from: "$scriptsUrl/jacoco.gradle"
//apply from: "$scriptsUrl/build-quality.gradle"
//apply from: "$scriptsUrl/jacoco.gradle" // TODO: fix scripts
apply from: 'jooq.gradle'


repositories {
mavenCentral { url "https://repo1.maven.org/maven2" }

Expand All @@ -24,6 +25,13 @@ repositories {
}
}

java {
sourceCompatibility = JavaVersion.VERSION_21
targetCompatibility = JavaVersion.VERSION_21
}

ext['spring-boot.version'] = "${springBootVersion}"

dependencyManagement {
imports {
mavenBom(releaseMode ? 'com.epam.reportportal:commons-bom:5.11.7' : 'com.epam.reportportal:commons-bom:5.11.7')
Expand All @@ -33,61 +41,57 @@ dependencyManagement {

dependencies {
if (releaseMode) {
compile 'com.epam.reportportal:commons'
implementation 'com.epam.reportportal:commons'
} else {
implementation 'com.github.reportportal:commons:d4be022'
implementation 'com.github.reportportal:commons:e55b9e6'
}
// jooq dependencies
api "org.jooq:jooq:${jooqVersion}"
implementation "org.postgresql:postgresql:${jdbcDriverVersion}"
jooqCodegen "org.postgresql:postgresql:${jdbcDriverVersion}"

implementation 'jakarta.xml.bind:jakarta.xml.bind-api:4.0.2'
implementation 'javax.xml.bind:jaxb-api:2.4.0-b180830.0359'

implementation 'org.springframework.security:spring-security-core'
implementation 'org.springframework:spring-webmvc'
implementation 'org.apache.tika:tika-core'

//https://nvd.nist.gov/vuln/detail/CVE-2020-10683 (dom4j 2.1.3 version dependency) AND https://nvd.nist.gov/vuln/detail/CVE-2019-14900
compile('org.springframework.boot:spring-boot-starter-data-jpa') {
api('org.springframework.boot:spring-boot-starter-data-jpa') {
exclude group: 'org.hibernate', module: 'hibernate-core'
}
implementation 'org.springframework:spring-jdbc:5.3.33'
implementation 'org.hibernate:hibernate-core:5.6.15.Final'
//

//https://nvd.nist.gov/vuln/detail/CVE-2020-13692
compile 'org.postgresql:postgresql:42.7.3'
compile 'org.jooq:jooq'
jooqRuntime 'org.postgresql:postgresql:42.7.3'
implementation 'org.springframework.boot:spring-boot-starter-cache'
implementation 'com.github.ben-manes.caffeine:caffeine'

compile 'io.minio:minio:6.0.13'
implementation 'io.minio:minio:8.5.12'

implementation group: 'org.json', name: 'json', version: '20231013'
compile 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310'
compile 'org.hibernate.validator:hibernate-validator'
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310'
implementation "org.hibernate.validator:hibernate-validator:${hibernateValidatorVersion}"

compile 'org.apache.commons:commons-collections4:4.4'
compile 'commons-fileupload:commons-fileupload:1.4'
compile('commons-validator:commons-validator:1.6') {
implementation 'org.apache.commons:commons-collections4:4.4'
api ('commons-validator:commons-validator:1.9.0') { // for EmailValidator only
exclude group: 'commons-beanutils', module: 'commons-beanutils'
}

compile 'org.jasypt:jasypt:1.9.3'
api 'org.jasypt:jasypt:1.9.3'

compile 'io.zonky.test:embedded-postgres:2.0.6'
//Fix CVE-2024-25710, CVE-2024-26308
compile 'org.apache.commons:commons-compress:1.26.0'
compile 'org.flywaydb:flyway-core:6.3.1'
api 'io.zonky.test:embedded-postgres:2.0.7'
api 'org.apache.commons:commons-compress:1.27.1'
implementation 'org.flywaydb:flyway-core:10.15.2'
implementation 'org.flywaydb:flyway-database-postgresql:10.20.0'

compile 'org.apache.jclouds.api:s3:2.5.0'
compile 'org.apache.jclouds.provider:aws-s3:2.5.0'
implementation 'org.apache.jclouds.api:filesystem:2.5.0'
implementation "org.apache.jclouds.api:s3:${jcloudsVersion}"
implementation "org.apache.jclouds.provider:aws-s3:${jcloudsVersion}"
implementation "org.apache.jclouds.api:filesystem:${jcloudsVersion}"
api 'com.google.guava:guava:33.2.1-jre'

// add lombok support
compileOnly "org.projectlombok:lombok:${lombokVersion}"
annotationProcessor "org.projectlombok:lombok:${lombokVersion}"
testCompileOnly "org.projectlombok:lombok:${lombokVersion}"
testAnnotationProcessor "org.projectlombok:lombok:${lombokVersion}"
implementation 'org.springframework.boot:spring-boot-starter-cache'
implementation 'com.github.ben-manes.caffeine:caffeine'

testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.flywaydb.flyway-test-extensions:flyway-spring-test:6.1.0'
testImplementation 'org.flywaydb.flyway-test-extensions:flyway-spring6-test:10.0.0'

}

Expand All @@ -110,6 +114,7 @@ tasks.withType(JavaCompile) {
options.debugOptions.debugLevel = "source,lines,vars"
}


checkCommitNeeded.dependsOn removeScripts
test.dependsOn copyTestDatabaseScripts
build.dependsOn jacocoTestReport
//build.dependsOn jacocoTestReport
7 changes: 6 additions & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
version=5.11.7
lombokVersion=1.18.30
springBootVersion=3.3.5
lombokVersion=1.18.34
jooqVersion=3.19.13
jdbcDriverVersion=42.7.4
jcloudsVersion=2.6.0
hibernateValidatorVersion=8.0.1.Final
5 changes: 2 additions & 3 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#Fri Mar 13 21:13:13 MSK 2020
distributionUrl=https\://services.gradle.org/distributions/gradle-6.0-all.zip
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
2 changes: 1 addition & 1 deletion jitpack.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
jdk:
- openjdk11
- openjdk21
14 changes: 2 additions & 12 deletions jooq.gradle
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
jooq {
version = '3.12.4'
edition = 'OSS'
sample(sourceSets.main) {
configuration {
jdbc {
driver = 'org.postgresql.Driver'
url = 'jdbc:postgresql://localhost:5432/reportportal'
Expand All @@ -11,22 +9,18 @@ jooq {
generator {
strategy {
name = 'org.jooq.codegen.example.JPrefixGeneratorStrategy'
// ...
}
database {
name = 'org.jooq.meta.postgres.PostgresDatabase'
inputSchema = (hasDBSchema ? getProperty('DB_SCHEMA_POSTGRES') : 'public')
// ...

excludes = 'batch_.*|schema_migrations'
forcedTypes {
forcedType {

// Specify the Java type of your custom type. This corresponds to the Converter's <U> type.
userType = "java.time.Instant"

// Associate that custom type with your converter.
converter = "com.epam.ta.reportportal.dao.converters.JooqInstantConverter"

// A Java regex matching fully-qualified columns, attributes, parameters. Use the pipe to separate several expressions.
types = "TIMESTAMP"
}
Expand All @@ -46,7 +40,3 @@ jooq {
}
}
}

generateSampleJooqSchemaSource {
enabled = false
}
7 changes: 0 additions & 7 deletions project-properties.gradle
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11

def commonScriptsUrl = 'https://raw.githubusercontent.com/reportportal/gradle-scripts/'
def migrationsScriptsUrl = 'https://raw.githubusercontent.com/reportportal/migrations/'

Expand Down Expand Up @@ -111,7 +108,3 @@ project.ext {
'class' : 87
]
}

wrapper {
gradleVersion = '6.0'
}
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
Expand Down Expand Up @@ -128,9 +127,9 @@ public Optional<BinaryDataMetaInfo> saveAttachment(AttachmentMetaInfo metaInfo,
} catch (IOException e) {
LOGGER.error("Unable to save binary data", e);
} finally {
if (file instanceof CommonsMultipartFile) {
/* if (file instanceof CommonsMultipartFile) {
((CommonsMultipartFile) file).getFileItem().delete();
}
}*/
}
return result;
}
Expand Down

This file was deleted.

Loading
Loading