2017-08-25 01:47:10 -04:00
import org.elasticsearch.gradle.BuildPlugin
2016-04-25 19:21:05 -04:00
import org.elasticsearch.gradle.VersionProperties
2016-09-29 06:03:14 -04:00
import org.elasticsearch.gradle.precommit.LicenseHeadersTask
2016-04-25 19:21:05 -04:00
2017-02-10 14:02:42 -05:00
if ( project . projectDir . name ! = 'x-pack-elasticsearch' ) {
2017-02-14 17:16:18 -05:00
throw new GradleException ( 'You must checkout x-pack-elasticsearch in the following directory: <path to Elasticsearch checkout>/../elasticsearch-extra/x-pack-elasticsearch' )
2015-11-16 15:45:03 -05:00
}
2016-02-04 16:07:01 -05:00
subprojects {
2016-11-24 03:05:15 -05:00
plugins . withType ( MavenPublishPlugin ) . whenPluginAdded {
publishing {
publications {
// add license information to generated poms
all {
pom . withXml { XmlProvider xml - >
Node node = xml . asNode ( )
Node license = node . appendNode ( 'licenses' ) . appendNode ( 'license' )
license . appendNode ( 'name' , 'Elastic Commercial Software End User License Agreement' )
license . appendNode ( 'url' , 'https://www.elastic.co/eula/' )
license . appendNode ( 'distribution' , 'repo' )
Node developer = node . appendNode ( 'developers' ) . appendNode ( 'developer' )
developer . appendNode ( 'name' , 'Elastic' )
developer . appendNode ( 'url' , 'http://www.elastic.co' )
}
}
}
2016-02-04 16:21:18 -05:00
}
2016-02-04 16:07:01 -05:00
}
2017-08-25 01:47:10 -04:00
plugins . withType ( BuildPlugin ) . whenPluginAdded {
project . licenseFile = project ( ':x-pack-elasticsearch' ) . file ( 'LICENSE.txt' )
project . noticeFile = project ( ':x-pack-elasticsearch' ) . file ( 'NOTICE.txt' )
}
2016-02-04 16:07:01 -05:00
}
2016-09-29 06:03:14 -04:00
File checkstyleSuppressions = file ( 'dev-tools/checkstyle_suppressions.xml' )
subprojects {
tasks . withType ( Checkstyle ) {
inputs . file ( checkstyleSuppressions )
2017-02-10 14:02:42 -05:00
// Use x-pack-elasticsearch specific suppressions file rather than the open source one.
2016-09-29 06:03:14 -04:00
configProperties = [
suppressions: checkstyleSuppressions
]
}
tasks . withType ( LicenseHeadersTask . class ) {
approvedLicenses = [ 'Elasticsearch Confidential' ]
additionalLicense 'ESCON' , 'Elasticsearch Confidential' , 'ELASTICSEARCH CONFIDENTIAL'
}
2017-05-18 13:33:53 -04:00
ext . projectSubstitutions + = [ "org.elasticsearch.plugin:x-pack-api:${version}" : ':x-pack-elasticsearch:plugin' ]
2017-11-15 11:49:00 -05:00
ext . projectSubstitutions + = [ "org.elasticsearch:x-pack-client-api-objects:${version}" : ':x-pack-elasticsearch:client:client-api-objects' ]
2017-05-30 09:04:27 -04:00
2017-05-18 13:33:53 -04:00
if ( wireCompatVersions [ - 1 ] . snapshot ) {
2017-05-30 09:04:27 -04:00
/ * The last and second to last versions can be snapshots . Rather than use
* snapshots built by CI we connect these versions to projects that build
* those versions from the HEAD of the appropriate branch . * /
if ( indexCompatVersions [ - 1 ] . bugfix = = 0 ) {
ext . projectSubstitutions + = [
"org.elasticsearch.plugin:x-pack:${indexCompatVersions[-1]}" : ':x-pack-elasticsearch:plugin:bwc:stable-snapshot' ,
"org.elasticsearch.plugin:x-pack:${indexCompatVersions[-2]}" : ':x-pack-elasticsearch:plugin:bwc:release-snapshot' ]
} else {
ext . projectSubstitutions + = [
"org.elasticsearch.plugin:x-pack:${indexCompatVersions[-1]}" : ':x-pack-elasticsearch:plugin:bwc:release-snapshot' ]
}
2017-05-18 13:33:53 -04:00
}
2016-09-29 06:03:14 -04:00
}