133 lines
3.5 KiB
Groovy
133 lines
3.5 KiB
Groovy
|
dependsOn(':elasticsearch')
|
||
|
|
||
|
apply plugin: 'java'
|
||
|
apply plugin: 'maven'
|
||
|
|
||
|
archivesBaseName = "elasticsearch-lang-javascript"
|
||
|
|
||
|
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/java'
|
||
|
sourceSets.test.resources.srcDirs 'src/test/java'
|
||
|
|
||
|
// add the source files to the dist jar
|
||
|
//jar {
|
||
|
// from sourceSets.main.allSource
|
||
|
//}
|
||
|
|
||
|
configurations {
|
||
|
dists
|
||
|
distLib {
|
||
|
visible = false
|
||
|
transitive = false
|
||
|
}
|
||
|
}
|
||
|
|
||
|
dependencies {
|
||
|
compile project(':elasticsearch')
|
||
|
|
||
|
compile('rhino:js:1.7R2')
|
||
|
distLib('rhino:js:1.7R2') { transitive = false }
|
||
|
}
|
||
|
|
||
|
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-lang-javascript'
|
||
|
description 'JavaScript 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
|
||
|
}
|
||
|
}
|
||
|
}
|