* Use version catalog to drive Java platform This commit incorporates the use of the Gradle version catalog as well as the related plugins to automatically update the libs.version.toml versions file with updated dependencies. The UpdateProjectVersionPlugin is also updated to modify the spring boot version property in the `libs.versions.toml` versions file rather than gradle.properties. Resolves #523
64 lines
2.0 KiB
Groovy
64 lines
2.0 KiB
Groovy
plugins {
|
|
id 'org.springframework.pulsar.spring-unpublished-module'
|
|
id 'spring-pulsar.integration-test-conventions'
|
|
alias(libs.plugins.download)
|
|
}
|
|
|
|
description = 'Spring Pulsar Integration Tests'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
maven { url 'https://repo.spring.io/milestone' }
|
|
maven { url 'https://repo.spring.io/snapshot' }
|
|
}
|
|
|
|
dependencies {
|
|
intTestImplementation project(':spring-pulsar')
|
|
intTestImplementation project(':spring-pulsar-reactive')
|
|
intTestImplementation project(':spring-pulsar-test')
|
|
intTestImplementation 'org.awaitility:awaitility'
|
|
intTestImplementation 'org.testcontainers:junit-jupiter'
|
|
intTestImplementation 'org.testcontainers:pulsar'
|
|
intTestImplementation 'org.testcontainers:rabbitmq'
|
|
intTestImplementation libs.spring.boot.starter.test
|
|
intTestImplementation libs.spring.boot.starter.amqp
|
|
intTestImplementation libs.spring.boot.starter.pulsar
|
|
intTestImplementation libs.spring.boot.starter.pulsar.reactive
|
|
intTestImplementation libs.spring.boot.testcontainers
|
|
intTestRuntimeOnly 'org.junit.platform:junit-platform-launcher'
|
|
intTestRuntimeOnly libs.logback.classic
|
|
}
|
|
|
|
test {
|
|
testLogging.showStandardStreams = true
|
|
}
|
|
|
|
integrationTest {
|
|
maxHeapSize '2048m'
|
|
}
|
|
|
|
def versionCatalog = extensions.getByType(VersionCatalogsExtension).named("libs")
|
|
def pulsarVersion = versionCatalog.findVersion("pulsar").orElseThrow().displayName
|
|
|
|
task downloadRabbitConnector {
|
|
onlyIf {
|
|
System.getProperty("downloadRabbitConnector") == "true"
|
|
}
|
|
doLast {
|
|
try {
|
|
download.run {
|
|
println "Downloading Rabbit connector to 'src/intTest/resources/connectors/' (one time only if not already downloaded)..."
|
|
src "https://archive.apache.org/dist/pulsar/pulsar-${pulsarVersion}/connectors/pulsar-io-rabbitmq-${pulsarVersion}.nar"
|
|
dest "$buildDir/../src/intTest/resources/connectors/pulsar-io-rabbitmq-${pulsarVersion}.nar"
|
|
overwrite false
|
|
}
|
|
} catch (Exception ex) {
|
|
println "Failed to download rabbit connector: $ex"
|
|
}
|
|
}
|
|
}
|
|
|
|
project.afterEvaluate {
|
|
integrationTest.dependsOn downloadRabbitConnector
|
|
}
|