Don't build bwc on assemble (#33372)

Gradle triggers the build of artifacts even if assemble is disabled.
Most users will not need bwc distributions after running `./gradlew
assemble` so instead of forcing them to add `-x buildBwcVersion`, we
detect this and skip the configuration of the artifacts.
This commit is contained in:
Alpar Torok 2018-09-05 08:24:44 +03:00 committed by GitHub
parent cfd3fa72ed
commit 9f96d2ce17
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 14 additions and 5 deletions

View File

@ -51,6 +51,7 @@ subprojects {
apply plugin: 'distribution'
// Not published so no need to assemble
assemble.enabled = false
assemble.dependsOn.remove('buildBwcVersion')
File checkoutDir = file("${buildDir}/bwc/checkout-${bwcBranch}")
@ -195,11 +196,19 @@ subprojects {
}
}
artifacts {
for (File artifactFile : artifactFiles) {
String artifactName = artifactFile.name.contains('oss') ? 'elasticsearch-oss' : 'elasticsearch'
String suffix = artifactFile.toString()[-3..-1]
'default' file: artifactFile, name: artifactName, type: suffix, builtBy: buildBwcVersion
if (gradle.startParameter.taskNames == ["assemble"]) {
// Gradle needs the `artifacts` declaration, including `builtBy` bellow to make projects dependencies on this
// project work, but it will also trigger the build of these for the `assemble` task.
// Since these are only used for testing, we don't want to assemble them if `assemble` is the single command being
// ran.
logger.info("Skipping BWC builds since `assemble` is the only task name provided on the command line")
} else {
artifacts {
for (File artifactFile : artifactFiles) {
String artifactName = artifactFile.name.contains('oss') ? 'elasticsearch-oss' : 'elasticsearch'
String suffix = artifactFile.toString()[-3..-1]
'default' file: artifactFile, name: artifactName, type: suffix, builtBy: buildBwcVersion
}
}
}
}