|
|
|
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
|
|
|
|
}
|