|
@@ -1,217 +0,0 @@
|
|
|
-import java.text.SimpleDateFormat
|
|
|
-
|
|
|
-defaultTasks "clean", "release"
|
|
|
-
|
|
|
-apply plugin: 'base'
|
|
|
-
|
|
|
-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)
|
|
|
-
|
|
|
-versionNumber = '0.19.0-SNAPSHOT'
|
|
|
-
|
|
|
-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")
|
|
|
-mavenRepoPass = System.getenv("REPO_PASS")
|
|
|
-
|
|
|
-jarjarArchivePath = project(":jarjar").file("build/libs/jarjar-$versionNumber" + ".jar").absolutePath
|
|
|
-
|
|
|
-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')
|
|
|
- }
|
|
|
- testCompile('org.testng:testng:6.1.1') { transitive = false }
|
|
|
- testCompile('com.beust:jcommander:1.5') { transitive = false }
|
|
|
- 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 }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- repositories {
|
|
|
- mavenCentral()
|
|
|
- mavenRepo urls: 'https://repository.jboss.org/nexus/content/groups/public'
|
|
|
- mavenRepo urls: 'http://repository.codehaus.org/'
|
|
|
- mavenRepo urls: 'http://elasticsearch.googlecode.com/svn/maven'
|
|
|
- mavenRepo urls: 'http://oss.sonatype.org/content/repositories/releases'
|
|
|
- mavenRepo urls: 'http://oss.sonatype.org/content/repositories/snapshots'
|
|
|
- mavenRepo urls: 'http://download.java.net/maven/2/'
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-configurations {
|
|
|
- dists
|
|
|
- distLib {
|
|
|
- visible = false
|
|
|
- }
|
|
|
- jdeb
|
|
|
-}
|
|
|
-
|
|
|
-dependencies {
|
|
|
- jdeb group: 'org.vafer', name: 'jdeb', version: '0.8'
|
|
|
-}
|
|
|
-
|
|
|
-//task run(dependsOn: [configurations.distLib], description: 'Runs') << {
|
|
|
-// ant.java(classname: "org.elasticsearch.bootstrap.Bootstrap", fork: "true", classpath: configurations.distLib.asPath,
|
|
|
-// jvmargs: "-Des-foreground=yes")
|
|
|
-//}
|
|
|
-
|
|
|
-dependencies {
|
|
|
- distLib project(':elasticsearch')
|
|
|
-}
|
|
|
-
|
|
|
-task explodedDist(dependsOn: [configurations.distLib], description: 'Builds a minimal distribution image') << {
|
|
|
- ant.delete(dir: explodedDistDir) // clean the exploded dir
|
|
|
- [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 }
|
|
|
-
|
|
|
- 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...
|
|
|
-
|
|
|
- // move relevant jars to ext
|
|
|
- // ant.move(todir: "$explodedDistLibDir/ext") {
|
|
|
- // fileset(dir: explodedDistLibDir) {
|
|
|
- // include(name: '*jline*')
|
|
|
- // include(name: '*log4j*')
|
|
|
- // include(name: '*jna*')
|
|
|
- // }
|
|
|
- // }
|
|
|
-
|
|
|
- ant.chmod(dir: "$explodedDistDir/bin", perm: "ugo+rx", includes: "**/*")
|
|
|
-}
|
|
|
-
|
|
|
-task zip(type: Zip, dependsOn: ['explodedDist']) {
|
|
|
- rootFolder = "$archivesBaseName-${-> version}"
|
|
|
- from(explodedDistDir) {
|
|
|
- into rootFolder
|
|
|
- exclude 'bin/elasticsearch'
|
|
|
- exclude 'bin/plugin'
|
|
|
- }
|
|
|
- from(explodedDistDir) {
|
|
|
- into rootFolder
|
|
|
- include 'bin/elasticsearch'
|
|
|
- include 'bin/plugin'
|
|
|
- fileMode = 0755
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-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 deb(dependsOn: ['explodedDist']) << {
|
|
|
- ant.taskdef(name: "deb", classname: "org.vafer.jdeb.ant.DebAntTask", classpath: configurations.jdeb.asPath)
|
|
|
- ant.copy(todir: "${distsDir}/debian") {
|
|
|
- fileset(dir: "pkg/debian/control")
|
|
|
- filterset(begintoken: "[[", endtoken: "]]") {
|
|
|
- filter(token: "version", value: "${version}")
|
|
|
- }
|
|
|
- }
|
|
|
- ant.deb(destfile: "${distsDir}/${archivesBaseName}-${version}-1_all.deb", control: "${distsDir}/debian", verbose: "true") {
|
|
|
- tarfileset(dir: explodedDistDir, prefix: "/usr/share/elasticsearch", includes: "*.txt, *.textile", username: "root", group: "root")
|
|
|
- tarfileset(dir: explodedDistBinDir, prefix: "/usr/share/elasticsearch/bin", excludes: "*.bat", filemode: "755", username: "root", group: "root")
|
|
|
- tarfileset(dir: explodedDistLibDir, prefix: "/usr/share/elasticsearch/lib", includes: "*.jar, sigar/*", username: "root", group: "root")
|
|
|
- tarfileset(dir: explodedDistConfigDir, prefix: "/etc/elasticsearch", username: "root", group: "root")
|
|
|
- tarfileset(dir: "pkg/debian/init.d", includes: "elasticsearch", prefix: "/etc/init.d", filemode: "755", username: "root", group: "root")
|
|
|
- tarfileset(dir: "pkg/debian/default", includes: "elasticsearch", prefix: "/etc/default", username: "root", group: "root")
|
|
|
- }
|
|
|
- ant.delete(dir: "${distsDir}/debian")
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-task release(dependsOn: [zip, tar, deb]) << {
|
|
|
- ant.delete(dir: explodedDistDir)
|
|
|
-}
|
|
|
-
|
|
|
-task wrapper(type: Wrapper) {
|
|
|
- gradleVersion = '1.0-milestone-3'
|
|
|
-}
|