|
|
|
plugins {
|
|
|
|
id 'java-library'
|
|
|
|
id 'org.springframework.boot.conventions'
|
|
|
|
id 'org.springframework.boot.deployed'
|
|
|
|
id 'org.springframework.boot.internal-dependency-management'
|
|
|
|
}
|
|
|
|
|
|
|
|
description = 'Spring Boot Antlib'
|
|
|
|
|
|
|
|
ext {
|
|
|
|
antVersion = '1.9.3'
|
|
|
|
}
|
|
|
|
|
|
|
|
configurations {
|
|
|
|
antUnit
|
|
|
|
antIvy
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
antUnit 'org.apache.ant:ant-antunit:1.3'
|
|
|
|
antIvy 'org.apache.ivy:ivy:2.4.0'
|
|
|
|
|
|
|
|
api platform(project(':spring-boot-project:spring-boot-dependencies'))
|
|
|
|
|
|
|
|
compileOnly project(':spring-boot-project:spring-boot-tools:spring-boot-loader')
|
|
|
|
compileOnly "org.apache.ant:ant:${antVersion}"
|
|
|
|
|
|
|
|
implementation project(":spring-boot-project:spring-boot-tools:spring-boot-loader-tools")
|
|
|
|
implementation "org.springframework:spring-core"
|
|
|
|
}
|
|
|
|
|
|
|
|
task copyIntegrationTestSources(type: Copy) {
|
|
|
|
from file("src/it")
|
|
|
|
into "${buildDir}/it"
|
|
|
|
}
|
|
|
|
|
|
|
|
processResources {
|
|
|
|
eachFile {
|
|
|
|
filter { it.replace('${spring-boot.version}', project.version) }
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
task integrationTest {
|
|
|
|
dependsOn copyIntegrationTestSources, jar
|
|
|
|
def resultsDir = file("${buildDir}/test-results/integrationTest")
|
|
|
|
inputs.dir file("src/it")
|
|
|
|
inputs.files sourceSets.main.runtimeClasspath
|
|
|
|
outputs.dirs resultsDir
|
|
|
|
doLast {
|
|
|
|
ant.with {
|
|
|
|
taskdef(resource: "org/apache/ant/antunit/antlib.xml",
|
|
|
|
classpath: configurations.antUnit.asPath)
|
|
|
|
taskdef(resource: "org/apache/ivy/ant/antlib.xml",
|
|
|
|
classpath: configurations.antIvy.asPath)
|
|
|
|
taskdef(resource: "org/springframework/boot/ant/antlib.xml",
|
|
|
|
classpath: sourceSets.main.runtimeClasspath.asPath,
|
|
|
|
uri: "antlib:org.springframework.boot.ant")
|
|
|
|
ant.property(name: "ivy.class.path", value: configurations.antIvy.asPath)
|
|
|
|
ant.property(name: "antunit.class.path", value: configurations.antUnit.asPath)
|
|
|
|
antunit {
|
|
|
|
propertyset {
|
|
|
|
ant.propertyref(name: "build.compiler")
|
|
|
|
ant.propertyref(name: "antunit.class.path")
|
|
|
|
ant.propertyref(name: "ivy.class.path")
|
|
|
|
}
|
|
|
|
plainlistener()
|
|
|
|
file("${buildDir}/test-results/integrationTest").mkdirs()
|
|
|
|
xmllistener(toDir: resultsDir)
|
|
|
|
fileset(dir: "${buildDir}/it", includes: "**/build.xml")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
check {
|
|
|
|
dependsOn integrationTest
|
|
|
|
}
|