69 lines
3.3 KiB
Groovy
69 lines
3.3 KiB
Groovy
import org.elasticsearch.gradle.BuildPlugin
|
|
import org.elasticsearch.gradle.plugin.PluginBuildPlugin
|
|
import org.elasticsearch.gradle.Version
|
|
import org.elasticsearch.gradle.precommit.LicenseHeadersTask
|
|
|
|
Project xpackRootProject = project
|
|
|
|
apply plugin: 'nebula.info-scm'
|
|
final String licenseCommit
|
|
if (version.endsWith('-SNAPSHOT')) {
|
|
licenseCommit = xpackRootProject.scminfo.change ?: "master" // leniency for non git builds
|
|
} else {
|
|
licenseCommit = "v${version}"
|
|
}
|
|
|
|
subprojects {
|
|
group = 'org.elasticsearch.plugin'
|
|
ext.xpackRootProject = xpackRootProject
|
|
ext.xpackProject = { String projectName -> xpackRootProject.project(projectName) }
|
|
// helper method to find the path to a module
|
|
ext.xpackModule = { String moduleName -> xpackProject("plugin:${moduleName}").path }
|
|
|
|
ext.licenseName = 'Elastic License'
|
|
ext.licenseUrl = "https://raw.githubusercontent.com/elastic/elasticsearch/${licenseCommit}/licenses/ELASTIC-LICENSE.txt"
|
|
|
|
project.ext.licenseFile = rootProject.file('licenses/ELASTIC-LICENSE.txt')
|
|
project.ext.noticeFile = xpackRootProject.file('NOTICE.txt')
|
|
|
|
plugins.withType(PluginBuildPlugin).whenPluginAdded {
|
|
project.esplugin.licenseFile = rootProject.file('licenses/ELASTIC-LICENSE.txt')
|
|
project.esplugin.noticeFile = xpackRootProject.file('NOTICE.txt')
|
|
}
|
|
}
|
|
|
|
File checkstyleSuppressions = file('dev-tools/checkstyle_suppressions.xml')
|
|
subprojects {
|
|
tasks.withType(Checkstyle) {
|
|
inputs.file(checkstyleSuppressions)
|
|
// Use x-pack-elasticsearch specific suppressions file rather than the open source one.
|
|
configProperties = [
|
|
suppressions: checkstyleSuppressions
|
|
]
|
|
}
|
|
|
|
tasks.withType(LicenseHeadersTask.class) {
|
|
approvedLicenses = ['Elastic License', 'Generated']
|
|
additionalLicense 'ELAST', 'Elastic License', 'Licensed under the Elastic License'
|
|
}
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-core:${version}": xpackModule('core')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-deprecation:${version}": xpackModule('deprecation')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-graph:${version}": xpackModule('graph')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-logstash:${version}": xpackModule('logstash')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-ml:${version}": xpackModule('ml')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-monitoring:${version}": xpackModule('monitoring')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-security:${version}": xpackModule('security')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-upgrade:${version}": xpackModule('upgrade')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-watcher:${version}": xpackModule('watcher')]
|
|
ext.projectSubstitutions += [ "org.elasticsearch.plugin:x-pack-ccr:${version}": xpackModule('ccr')]
|
|
|
|
bwcVersions.snapshotProjectNames.each { snapshotName ->
|
|
Version snapshot = bwcVersions.getSnapshotForProject(snapshotName)
|
|
if (snapshot != null && snapshot.onOrAfter("6.3.0")) {
|
|
String snapshotProject = ":x-pack:plugin:bwc:${snapshotName}"
|
|
project(snapshotProject).ext.bwcVersion = snapshot
|
|
ext.projectSubstitutions["org.elasticsearch.plugin:x-pack:${snapshot}"] = snapshotProject
|
|
}
|
|
}
|
|
}
|