diff --git a/Dockerfile b/Dockerfile index dc627f711..1074b7fd1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # renovate: datasource=github-releases depName=microsoft/ApplicationInsights-Java -ARG APP_INSIGHTS_AGENT_VERSION=3.4.13 +ARG APP_INSIGHTS_AGENT_VERSION=3.5.4 # Application image FROM hmctspublic.azurecr.io/base/java:17-distroless diff --git a/build.gradle b/build.gradle index 46ac20382..134cb1599 100644 --- a/build.gradle +++ b/build.gradle @@ -1,27 +1,27 @@ buildscript { dependencies { - classpath("org.yaml:snakeyaml:2.0") + classpath("org.yaml:snakeyaml:2.3") classpath("net.serenity-bdd:serenity-gradle-plugin:3.6.22") classpath("au.com.dius.pact:au.com.dius.pact.gradle.plugin:4.4.0-beta.1") } } plugins { - id 'au.com.dius.pact' version '4.2.14' + id 'au.com.dius.pact' version '4.6.14' id 'application' id 'checkstyle' - id 'com.github.ben-manes.versions' version '0.42.0' - id "info.solidsoft.pitest" version '1.9.0' + id 'com.github.ben-manes.versions' version '0.51.0' + id "info.solidsoft.pitest" version '1.15.0' id "io.freefair.lombok" version '6.6.3' - id 'io.spring.dependency-management' version '1.1.0' + id 'io.spring.dependency-management' version '1.1.6' id 'jacoco' id 'org.flywaydb.flyway' version '5.2.4' - id 'org.owasp.dependencycheck' version '10.0.3' - id 'org.sonarqube' version '4.3.0.3225' + id 'org.owasp.dependencycheck' version '10.0.4' + id 'org.sonarqube' version '4.4.1.3373' id 'org.springframework.boot' version '2.7.18' id 'pmd' - id 'uk.gov.hmcts.java' version '0.12.43' - id 'org.gradle.test-retry' version '1.0.0' + id 'uk.gov.hmcts.java' version '0.12.63' + id 'org.gradle.test-retry' version '1.6.0' } apply plugin: 'java' @@ -30,19 +30,19 @@ apply plugin: 'project-report' apply plugin: 'idea' def versions = [ - jupiter : '5.7.2', - junitPlatform : '1.7.2', - pitest : '1.9.0', - gradlePitest : '1.9.0', - reformLogging : '6.0.1', + jupiter : '5.11.0', + junitPlatform : '1.11.0', + pitest : '1.16.3', + gradlePitest : '1.15.0', + reformLogging : '6.1.6', reformHealthStarter: '0.0.5', - restAssured : '5.3.1', - serenity : '3.6.22', - springDoc : '1.6.8', + restAssured : '5.5.0', + serenity : '3.9.8', + springDoc : '1.8.0', sonarPitest : '0.5', springHystrix : '2.2.10.RELEASE', - pact_version : '4.1.7', - snakeyaml : '2.0' + pact_version : '4.1.43', + snakeyaml : '2.3' ] ext.libraries = [ @@ -133,7 +133,7 @@ checkstyle.configFile = new File(rootDir, 'config/checkstyle/checkstyle.xml') checkstyle.maxWarnings(5) pmd { - toolVersion = '6.41.0' + toolVersion = '6.55.0' ignoreFailures = true sourceSets = [sourceSets.main, sourceSets.test, sourceSets.integrationTest, sourceSets.functionalTest, sourceSets.smokeTest] reportsDir = file("$project.buildDir/reports/pmd") @@ -187,7 +187,7 @@ project.ext { } jacoco { - toolVersion = "0.8.10" + toolVersion = "0.8.12" } jacocoTestReport { @@ -249,26 +249,26 @@ dependencyManagement { entry 'commons-fileupload' } - dependencySet(group: 'com.fasterxml.jackson.core', version: '2.16.0') { + dependencySet(group: 'com.fasterxml.jackson.core', version: '2.17.2') { entry 'jackson-databind' entry 'jackson-core' entry 'jackson-annotations' } - dependencySet(group: 'com.fasterxml.jackson.dataformat', version: '2.16.0') { + dependencySet(group: 'com.fasterxml.jackson.dataformat', version: '2.17.2') { entry 'jackson-dataformat-yaml' } - dependencySet(group: 'com.fasterxml.jackson.datatype', version: '2.16.0') { + dependencySet(group: 'com.fasterxml.jackson.datatype', version: '2.17.2') { entry 'jackson-datatype-jsr310' entry 'jackson-datatype-jdk8' } - dependencySet(group: 'com.fasterxml.jackson.module', version: '2.16.0') { + dependencySet(group: 'com.fasterxml.jackson.module', version: '2.17.2') { entry 'jackson-module-parameter-names' } - dependencySet(group: 'org.springframework.security', version: '5.7.11') { + dependencySet(group: 'org.springframework.security', version: '5.8.14') { entry 'spring-security-oauth2-client' entry 'spring-security-oauth2-core' entry 'spring-security-oauth2-jose' @@ -301,46 +301,46 @@ dependencies { implementation group: 'org.springframework.boot', name: 'spring-boot-starter-oauth2-client' implementation group: 'org.springframework.boot', name: 'spring-boot-starter-oauth2-resource-server' - implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.13' - implementation group: 'ch.qos.logback', name: 'logback-core', version: '1.2.13' + implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.5.8' + implementation group: 'ch.qos.logback', name: 'logback-core', version: '1.5.8' - implementation group: 'com.nimbusds', name: 'nimbus-jose-jwt', version: '9.14' + implementation group: 'com.nimbusds', name: 'nimbus-jose-jwt', version: '9.41' implementation group: 'com.github.hmcts.java-logging', name: 'logging-appinsights', version: versions.reformLogging implementation group: 'org.springdoc', name: 'springdoc-openapi-ui', version: versions.springDoc - implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.11' + implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.17.0' - implementation(group: 'com.github.hmcts', name: 'service-auth-provider-java-client', version: '4.0.2') { + implementation(group: 'com.github.hmcts', name: 'service-auth-provider-java-client', version: '4.1.2') { exclude group: "org.bouncycastle", module: "bcprov-jdk15on" } - implementation(group: 'org.springframework.cloud', name: 'spring-cloud-starter-openfeign', version: '3.1.8') { + implementation(group: 'org.springframework.cloud', name: 'spring-cloud-starter-openfeign', version: '3.1.9') { exclude group: "org.bouncycastle", module: "bcprov-jdk15on" } - implementation(group: 'org.springframework.cloud', name: 'spring-cloud-starter-bootstrap' , version: '3.1.7') { + implementation(group: 'org.springframework.cloud', name: 'spring-cloud-starter-bootstrap' , version: '3.1.8') { exclude group: "org.bouncycastle", module: "bcprov-jdk15on" } - implementation group: 'org.bouncycastle', name: 'bcprov-jdk18on', version: '1.74' + implementation group: 'org.bouncycastle', name: 'bcprov-jdk18on', version: '1.78.1' - implementation group: 'com.google.guava', name: 'guava', version: '32.1.2-jre' - implementation group: 'commons-io', name: 'commons-io', version: '2.8.0' - implementation group: 'com.launchdarkly', name: 'launchdarkly-java-server-sdk', version: '6.2.1' + implementation group: 'com.google.guava', name: 'guava', version: '32.1.3-jre' + implementation group: 'commons-io', name: 'commons-io', version: '2.16.1' + implementation group: 'com.launchdarkly', name: 'launchdarkly-java-server-sdk', version: '6.3.0' - implementation group: 'com.sun.xml.bind', name: 'jaxb-osgi', version: '2.3.3' + implementation group: 'com.sun.xml.bind', name: 'jaxb-osgi', version: '2.3.9' implementation group: 'org.springframework.boot', name: 'spring-boot-starter-cache' implementation group: 'com.github.ben-manes.caffeine', name: 'caffeine' - implementation group: 'org.apache.tomcat.embed', name: 'tomcat-embed-core', version: '9.0.83' - implementation group: 'org.apache.tomcat.embed', name: 'tomcat-embed-websocket', version: '9.0.83' + implementation group: 'org.apache.tomcat.embed', name: 'tomcat-embed-core', version: '9.0.94' + implementation group: 'org.apache.tomcat.embed', name: 'tomcat-embed-websocket', version: '9.0.94' implementation group: 'com.fasterxml.jackson.core', name: 'jackson-core' implementation group: 'com.fasterxml.jackson.core', name: 'jackson-annotations' implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind' - implementation group: 'com.nimbusds', name: 'nimbus-jose-jwt', version: '9.37.3' + implementation group: 'com.nimbusds', name: 'nimbus-jose-jwt', version: '9.41' - implementation group: 'net.minidev', name: 'json-smart', version: '2.5.0' + implementation group: 'net.minidev', name: 'json-smart', version: '2.5.1' testImplementation group: 'com.github.hmcts', name: 'document-management-client', version: '7.0.1' @@ -350,7 +350,7 @@ dependencies { testImplementation group: 'net.serenity-bdd', name: 'serenity-junit', version: versions.serenity testImplementation group: 'net.serenity-bdd', name: 'serenity-rest-assured', version: versions.serenity testImplementation group: 'net.serenity-bdd', name: 'serenity-spring', version: versions.serenity - testImplementation group: 'org.mockito', name: 'mockito-core', version: '3.5.0' + testImplementation group: 'org.mockito', name: 'mockito-core', version: '3.12.4' testImplementation group: 'org.springframework.security', name: 'spring-security-test' @@ -359,9 +359,9 @@ dependencies { testImplementation "info.solidsoft.gradle.pitest:gradle-pitest-plugin:${versions.gradlePitest}" testImplementation "org.codehaus.sonar-plugins:sonar-pitest-plugin:${versions.sonarPitest}" - testImplementation group: 'com.github.hmcts', name: 'ccd-case-document-am-client', version: '1.7.3' + testImplementation group: 'com.github.hmcts', name: 'ccd-case-document-am-client', version: '1.59' - testImplementation(group: 'org.springframework.cloud', name: 'spring-cloud-contract-wiremock', version: '3.1.6') { + testImplementation(group: 'org.springframework.cloud', name: 'spring-cloud-contract-wiremock', version: '3.1.10') { exclude group: "com.github.tomakehurst", module: "wiremock-standalone" } @@ -370,7 +370,7 @@ dependencies { exclude group: 'org.junit.vintage', module: 'junit-vintage-engine' } - testImplementation group: 'nl.jqno.equalsverifier', name: 'equalsverifier', version: '3.10.1' + testImplementation group: 'nl.jqno.equalsverifier', name: 'equalsverifier', version: '3.16.2' //pact contract testing @@ -384,9 +384,9 @@ dependencies { contractTestCompile group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: versions.jupiter contractTestRuntime group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version : versions.jupiter - testImplementation group: 'org.mockito', name: 'mockito-junit-jupiter', version: '3.6.28' + testImplementation group: 'org.mockito', name: 'mockito-junit-jupiter', version: '3.12.4' - testImplementation group: 'com.github.hmcts', name: 'fortify-client', version: '1.3.0', classifier: 'all', { + testImplementation group: 'com.github.hmcts', name: 'fortify-client', version: '1.4.4', classifier: 'all', { exclude group: 'commons-io', module: 'commons-io' exclude group: 'org.apache.commons', module: 'commons-lang3' } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index d64cd4917..a4b76b953 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index dedd5d1e6..1ed247ec1 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/gradlew b/gradlew index 1aa94a426..f5feea6d6 100755 --- a/gradlew +++ b/gradlew @@ -15,6 +15,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # +# SPDX-License-Identifier: Apache-2.0 +# ############################################################################## # @@ -55,7 +57,7 @@ # Darwin, MinGW, and NonStop. # # (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. @@ -84,7 +86,8 @@ done # shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s +' "$PWD" ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum diff --git a/gradlew.bat b/gradlew.bat index 7101f8e46..9b42019c7 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -13,6 +13,8 @@ @rem See the License for the specific language governing permissions and @rem limitations under the License. @rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem @if "%DEBUG%"=="" @echo off @rem ########################################################################## diff --git a/infrastructure/.terraform-version b/infrastructure/.terraform-version index 3336003dc..158c74729 100644 --- a/infrastructure/.terraform-version +++ b/infrastructure/.terraform-version @@ -1 +1 @@ -1.3.7 +1.9.5 diff --git a/infrastructure/state.tf b/infrastructure/state.tf index 72dc5afc9..ef294e72c 100644 --- a/infrastructure/state.tf +++ b/infrastructure/state.tf @@ -4,7 +4,7 @@ terraform { required_providers { azurerm = { source = "hashicorp/azurerm" - version = "~> 3.47.0" + version = "~> 3.116.0" } azuread = { source = "hashicorp/azuread"