145 lines
3.9 KiB
Groovy
145 lines
3.9 KiB
Groovy
dependsOn(':elasticsearch')
|
|
|
|
apply plugin: 'groovy'
|
|
apply plugin: 'maven'
|
|
|
|
archivesBaseName = "elasticsearch-client-groovy"
|
|
|
|
explodedDistDir = new File(distsDir, 'exploded')
|
|
|
|
configurations.compile.transitive = true
|
|
configurations.testCompile.transitive = true
|
|
|
|
// no need to use the resource dir
|
|
sourceSets.main.resources.srcDirs 'src/main/groovy'
|
|
sourceSets.test.resources.srcDirs 'src/test/groovy'
|
|
|
|
// add the source files to the dist jar
|
|
//jar {
|
|
// from sourceSets.main.allSource
|
|
//}
|
|
|
|
configurations {
|
|
dists
|
|
distLib {
|
|
visible = false
|
|
transitive = false
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
compile project(':elasticsearch')
|
|
|
|
groovy group: 'org.codehaus.groovy', name: 'groovy-all', version: '1.7.2'
|
|
|
|
testCompile project(':test-testng')
|
|
testCompile('org.testng:testng:5.10:jdk15') { transitive = false }
|
|
testCompile 'org.hamcrest:hamcrest-all:1.1'
|
|
testCompile('junit:junit:4.8.1') {transitive = false}
|
|
}
|
|
|
|
test {
|
|
useTestNG()
|
|
jmvArgs = ["-ea", "-Xmx1024m"]
|
|
suiteName = project.name
|
|
listeners = ["org.elasticsearch.util.testng.Listeners"]
|
|
systemProperties["es.test.log.conf"] = System.getProperty("es.test.log.conf", "log4j-gradle.properties")
|
|
}
|
|
|
|
task explodedDist(dependsOn: [jar], description: 'Builds the plugin zip file') << {
|
|
[explodedDistDir]*.mkdirs()
|
|
|
|
copy {
|
|
from configurations.distLib
|
|
into explodedDistDir
|
|
}
|
|
|
|
// remove elasticsearch files (compile above adds the elasticsearch one)
|
|
ant.delete { fileset(dir: explodedDistDir, includes: "elasticsearch-*.jar") }
|
|
|
|
copy {
|
|
from libsDir
|
|
into explodedDistDir
|
|
}
|
|
|
|
ant.delete { fileset(dir: explodedDistDir, includes: "elasticsearch-*-javadoc.jar") }
|
|
ant.delete { fileset(dir: explodedDistDir, includes: "elasticsearch-*-sources.jar") }
|
|
}
|
|
|
|
task zip(type: Zip, dependsOn: ['explodedDist']) {
|
|
from(explodedDistDir) {
|
|
}
|
|
}
|
|
|
|
task release(dependsOn: [zip]) << {
|
|
ant.delete(dir: explodedDistDir)
|
|
copy {
|
|
from distsDir
|
|
into(new File(rootProject.distsDir, "plugins"))
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
deployerJars
|
|
}
|
|
|
|
dependencies {
|
|
deployerJars "org.apache.maven.wagon:wagon-http:1.0-beta-2"
|
|
}
|
|
|
|
task sourcesJar(type: Jar, dependsOn: classes) {
|
|
classifier = 'sources'
|
|
from sourceSets.main.allSource
|
|
}
|
|
|
|
task javadocJar(type: Jar, dependsOn: javadoc) {
|
|
classifier = 'javadoc'
|
|
from javadoc.destinationDir
|
|
}
|
|
|
|
jar {
|
|
// from sourceSets.main.allJava
|
|
manifest {
|
|
attributes("Implementation-Title": "ElasticSearch", "Implementation-Version": rootProject.version, "Implementation-Date": buildTimeStr)
|
|
}
|
|
}
|
|
|
|
|
|
artifacts {
|
|
archives sourcesJar
|
|
archives javadocJar
|
|
}
|
|
|
|
uploadArchives {
|
|
repositories.mavenDeployer {
|
|
configuration = configurations.deployerJars
|
|
repository(url: rootProject.mavenRepoUrl) {
|
|
authentication(userName: rootProject.mavenRepoUser, password: rootProject.mavenRepoPass)
|
|
}
|
|
snapshotRepository(url: rootProject.mavenSnapshotRepoUrl) {
|
|
authentication(userName: rootProject.mavenRepoUser, password: rootProject.mavenRepoPass)
|
|
}
|
|
|
|
pom.project {
|
|
inceptionYear '2009'
|
|
name 'elasticsearch-plugins-client--groovy'
|
|
description 'Groovy Plugin for ElasticSearch'
|
|
licenses {
|
|
license {
|
|
name 'The Apache Software License, Version 2.0'
|
|
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
|
|
distribution 'repo'
|
|
}
|
|
}
|
|
scm {
|
|
connection 'git://github.com/elasticsearch/elasticsearch.git'
|
|
developerConnection 'git@github.com:elasticsearch/elasticsearch.git'
|
|
url 'http://github.com/elasticsearch/elasticsearch'
|
|
}
|
|
}
|
|
|
|
pom.whenConfigured {pom ->
|
|
pom.dependencies = pom.dependencies.findAll {dep -> dep.scope != 'test' } // removes the test scoped ones
|
|
}
|
|
}
|
|
} |