OpenSearch/build.gradle

183 lines
6.2 KiB
Groovy
Raw Normal View History

2010-02-08 08:30:06 -05:00
import java.text.SimpleDateFormat
defaultTasks "clean", "release"
2010-02-08 08:30:06 -05:00
2010-04-02 08:47:27 -04:00
apply plugin: 'base'
2010-02-08 08:30:06 -05:00
archivesBaseName = 'elasticsearch'
buildTime = new Date()
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
buildTimeStr = sdf.format(buildTime)
2011-04-23 16:56:12 -04:00
versionNumber = '0.17.0-SNAPSHOT'
2010-02-08 08:30:06 -05:00
explodedDistDir = new File(distsDir, 'exploded')
explodedDistLibDir = new File(explodedDistDir, 'lib')
explodedDistBinDir = new File(explodedDistDir, 'bin')
explodedDistConfigDir = new File(explodedDistDir, 'config')
mavenRepoUrl = System.getenv("REPO_URL");
if (mavenRepoUrl == null) {
// mavenRepoUrl = "file://localhost/" + projectDir.absolutePath + "/build/maven/repository"
mavenRepoUrl = "http://oss.sonatype.org/service/local/staging/deploy/maven2/"
}
mavenSnapshotRepoUrl = System.getenv("SNAPSHOT_REPO_URL");
if (mavenSnapshotRepoUrl == null) {
// mavenSnapshotRepoUrl = "file://localhost/" + projectDir.absolutePath + "/build/maven/snapshotRepository"
mavenSnapshotRepoUrl = "http://oss.sonatype.org/content/repositories/snapshots"
}
mavenRepoUser = System.getenv("REPO_USER")
2010-04-14 01:34:47 -04:00
mavenRepoPass = System.getenv("REPO_PASS")
2010-02-08 08:30:06 -05:00
jarjarArchivePath = project(":jarjar").file("build/libs/jarjar-$versionNumber" + ".jar").absolutePath
2010-02-08 08:30:06 -05:00
allprojects {
group = 'org.elasticsearch'
version = versionNumber
plugins.withType(JavaPlugin).whenPluginAdded {
sourceCompatibility = 1.6
targetCompatibility = 1.6
compileJava {
sourceCompatibility = 1.6
targetCompatibility = 1.6
options.encoding = "UTF8"
}
javadoc {
maxMemory = "1g"
options.encoding = "UTF8"
}
test {
useTestNG()
String testSuiteName = project.name
suiteName = project.name
workingDir = rootProject.projectDir
options {
suiteNamte = testSuiteName
listeners << 'org.elasticsearch.util.testng.Listeners'
}
maxHeapSize = '1g'
systemProperties["es.logger.prefix"] = ""
systemProperties["es.test.log.conf"] = System.getProperty("es.test.log.conf", "log4j-gradle.properties")
systemProperties["es.test.log.conf"] = System.getProperty("es.test.log.conf", "log4j-gradle.properties")
}
dependencies {
if (project.name != "test-testng") {
testCompile project(':test-testng')
}
2011-07-06 16:15:03 -04:00
testCompile('org.testng:testng:6.1.1') { transitive = false }
2011-07-07 17:56:52 -04:00
testCompile('com.beust:jcommander:1.5') { transitive = false }
2011-07-07 17:00:00 -04:00
testCompile('org.beanshell:bsh:2.0b4') { transitive = false }
testCompile('org.hamcrest:hamcrest-core:1.3.RC2') { transitive = false }
testCompile('org.hamcrest:hamcrest-library:1.3.RC2') { transitive = false }
}
2010-02-08 08:30:06 -05:00
}
repositories {
mavenCentral()
2010-05-14 11:23:10 -04:00
mavenRepo urls: 'https://repository.jboss.org/nexus/content/groups/public'
mavenRepo urls: 'http://repository.codehaus.org/'
mavenRepo urls: 'http://elasticsearch.googlecode.com/svn/maven'
2010-06-23 14:51:29 -04:00
mavenRepo urls: 'http://oss.sonatype.org/content/repositories/releases'
2010-07-22 16:33:38 -04:00
mavenRepo urls: 'http://oss.sonatype.org/content/repositories/snapshots'
mavenRepo urls: 'http://download.java.net/maven/2/'
2010-02-08 08:30:06 -05:00
}
}
configurations {
dists
distLib {
visible = false
}
}
//task run(dependsOn: [configurations.distLib], description: 'Runs') << {
// ant.java(classname: "org.elasticsearch.bootstrap.Bootstrap", fork: "true", classpath: configurations.distLib.asPath,
// jvmargs: "-Des-foreground=yes")
//}
2010-02-08 08:30:06 -05:00
dependencies {
distLib project(':elasticsearch')
}
task explodedDist(dependsOn: [configurations.distLib], description: 'Builds a minimal distribution image') << {
ant.delete(dir: explodedDistDir) // clean the exploded dir
2010-02-08 08:30:06 -05:00
[explodedDistDir, explodedDistLibDir, explodedDistBinDir, explodedDistConfigDir]*.mkdirs()
// remove old elasticsearch files
ant.delete { fileset(dir: explodedDistLibDir, includes: "$archivesBaseName-*.jar") }
copy {
from configurations.distLib
into explodedDistLibDir
}
copy { from('bin'); into explodedDistBinDir }
copy { from('config'); into explodedDistConfigDir }
copy { from('lib'); into explodedDistLibDir }
2010-02-08 08:30:06 -05:00
copy {
from('.')
into explodedDistDir
include 'LICENSE.txt'
include 'NOTICE.txt'
include 'README.textile'
}
ant.replace(dir: explodedDistBinDir, token: "@ES_VERSION@", value: versionNumber)
ant.delete { fileset(dir: explodedDistLibDir, includes: "$archivesBaseName-*-javadoc.jar") }
ant.delete { fileset(dir: explodedDistLibDir, includes: "$archivesBaseName-*-sources.jar") }
ant.delete { fileset(dir: explodedDistLibDir, includes: "slf4j-*.jar") } // no need for slf4j
ant.delete { fileset(dir: explodedDistLibDir, includes: "jarjar-*.jar") } // no need jackson, we jarjar it
ant.delete { fileset(dir: explodedDistLibDir, includes: "sigar-*.jar") } // no need sigar directly under lib...
2010-02-08 08:30:06 -05:00
ant.chmod(dir: "$explodedDistDir/bin", perm: "ugo+rx", includes: "**/*")
}
2010-04-02 08:47:27 -04:00
task zip(type: Zip, dependsOn: ['explodedDist']) {
rootFolder = "$archivesBaseName-${-> version}"
2010-04-02 08:47:27 -04:00
from(explodedDistDir) {
into rootFolder
2010-04-02 13:39:27 -04:00
exclude 'bin/elasticsearch'
exclude 'bin/plugin'
2010-04-02 08:47:27 -04:00
}
from(explodedDistDir) {
into rootFolder
2010-04-02 13:39:27 -04:00
include 'bin/elasticsearch'
include 'bin/plugin'
2010-04-02 13:39:27 -04:00
fileMode = 0755
2010-02-08 08:30:06 -05:00
}
}
task tar(type: Tar, dependsOn: ['explodedDist']) {
compression = Compression.GZIP
extension = "tar.gz"
rootFolder = "$archivesBaseName-${-> version}"
from(explodedDistDir) {
into rootFolder
exclude 'bin/*.bat'
exclude 'bin/elasticsearch'
exclude 'bin/plugin'
exclude 'lib/sigar/*win*'
}
from(explodedDistDir) {
into rootFolder
include 'bin/elasticsearch'
include 'bin/plugin'
fileMode = 0755
}
}
task release(dependsOn: [zip, tar]) << {
2010-03-29 06:53:09 -04:00
ant.delete(dir: explodedDistDir)
2010-02-08 08:30:06 -05:00
}
task wrapper(type: Wrapper) {
2011-06-13 07:38:00 -04:00
gradleVersion = '1.0-milestone-3'
2010-02-08 08:30:06 -05:00
}