Remove assemble task when not used for publishing (#25228)
Removes the `assemble` task from projects that are not published. This should speed up `gradle assemble` by skipping projects that don't need to be built. Which is useful because `gradle assemble` is how we cut releases.
This commit is contained in:
parent
b5cea6980b
commit
7b358190d6
|
@ -34,6 +34,8 @@ apply plugin: 'com.github.johnrengelman.shadow'
|
||||||
// have the shadow plugin provide the runShadow task
|
// have the shadow plugin provide the runShadow task
|
||||||
apply plugin: 'application'
|
apply plugin: 'application'
|
||||||
|
|
||||||
|
tasks.remove(assemble) // Not published so no need to assemble
|
||||||
|
|
||||||
archivesBaseName = 'elasticsearch-benchmarks'
|
archivesBaseName = 'elasticsearch-benchmarks'
|
||||||
mainClassName = 'org.openjdk.jmh.Main'
|
mainClassName = 'org.openjdk.jmh.Main'
|
||||||
|
|
||||||
|
|
13
build.gradle
13
build.gradle
|
@ -420,3 +420,16 @@ task run(type: Run) {
|
||||||
group = 'Verification'
|
group = 'Verification'
|
||||||
impliesSubProjects = true
|
impliesSubProjects = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Remove assemble on all qa projects because we don't need to publish
|
||||||
|
* artifacts for them. */
|
||||||
|
gradle.projectsEvaluated {
|
||||||
|
subprojects {
|
||||||
|
if (project.path.startsWith(':qa')) {
|
||||||
|
Task assemble = project.tasks.findByName('assemble')
|
||||||
|
if (assemble) {
|
||||||
|
project.tasks.remove(assemble)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -394,8 +394,11 @@ class BuildPlugin implements Plugin<Project> {
|
||||||
project.tasks.withType(GenerateMavenPom.class) { GenerateMavenPom t ->
|
project.tasks.withType(GenerateMavenPom.class) { GenerateMavenPom t ->
|
||||||
// place the pom next to the jar it is for
|
// place the pom next to the jar it is for
|
||||||
t.destination = new File(project.buildDir, "distributions/${project.archivesBaseName}-${project.version}.pom")
|
t.destination = new File(project.buildDir, "distributions/${project.archivesBaseName}-${project.version}.pom")
|
||||||
// build poms with assemble
|
// build poms with assemble (if the assemble task exists)
|
||||||
project.assemble.dependsOn(t)
|
Task assemble = project.tasks.findByName('assemble')
|
||||||
|
if (assemble) {
|
||||||
|
assemble.dependsOn(t)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,6 +32,8 @@ public class DocsTestPlugin extends RestTestPlugin {
|
||||||
public void apply(Project project) {
|
public void apply(Project project) {
|
||||||
project.pluginManager.apply('elasticsearch.standalone-rest-test')
|
project.pluginManager.apply('elasticsearch.standalone-rest-test')
|
||||||
super.apply(project)
|
super.apply(project)
|
||||||
|
// Docs are published separately so no need to assemble
|
||||||
|
project.tasks.remove(project.assemble)
|
||||||
Map<String, String> defaultSubstitutions = [
|
Map<String, String> defaultSubstitutions = [
|
||||||
/* These match up with the asciidoc syntax for substitutions but
|
/* These match up with the asciidoc syntax for substitutions but
|
||||||
* the values may differ. In particular {version} needs to resolve
|
* the values may differ. In particular {version} needs to resolve
|
||||||
|
|
|
@ -37,6 +37,8 @@ apply plugin: 'application'
|
||||||
|
|
||||||
group = 'org.elasticsearch.client'
|
group = 'org.elasticsearch.client'
|
||||||
|
|
||||||
|
tasks.remove(assemble) // Not published so no need to assemble
|
||||||
|
|
||||||
archivesBaseName = 'client-benchmarks'
|
archivesBaseName = 'client-benchmarks'
|
||||||
mainClassName = 'org.elasticsearch.client.benchmark.BenchmarkMain'
|
mainClassName = 'org.elasticsearch.client.benchmark.BenchmarkMain'
|
||||||
|
|
||||||
|
|
|
@ -27,9 +27,10 @@ esplugin {
|
||||||
classname 'org.elasticsearch.plugin.noop.NoopPlugin'
|
classname 'org.elasticsearch.plugin.noop.NoopPlugin'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tasks.remove(assemble) // Not published so no need to assemble
|
||||||
|
|
||||||
compileJava.options.compilerArgs << "-Xlint:-cast,-deprecation,-rawtypes,-try,-unchecked"
|
compileJava.options.compilerArgs << "-Xlint:-cast,-deprecation,-rawtypes,-try,-unchecked"
|
||||||
|
|
||||||
// no unit tests
|
// no unit tests
|
||||||
test.enabled = false
|
test.enabled = false
|
||||||
integTest.enabled = false
|
integTest.enabled = false
|
||||||
|
|
||||||
|
|
|
@ -49,6 +49,7 @@ if (project.name == 'bwc-stable-snapshot') {
|
||||||
|
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
apply plugin: 'distribution'
|
apply plugin: 'distribution'
|
||||||
|
tasks.remove(assemble) // Not published so no need to assemble
|
||||||
|
|
||||||
def (String major, String minor, String bugfix) = bwcVersion.split('\\.')
|
def (String major, String minor, String bugfix) = bwcVersion.split('\\.')
|
||||||
def (String currentMajor, String currentMinor, String currentBugfix) = version.split('\\.')
|
def (String currentMajor, String currentMinor, String currentBugfix) = version.split('\\.')
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
// Subprojects aren't published so do not assemble
|
||||||
|
gradle.projectsEvaluated {
|
||||||
|
subprojects {
|
||||||
|
Task assemble = project.tasks.findByName('assemble')
|
||||||
|
if (assemble) {
|
||||||
|
project.tasks.remove(assemble)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -21,6 +21,7 @@ esplugin {
|
||||||
description 'Demonstrates all the pluggable Java entry points in Elasticsearch'
|
description 'Demonstrates all the pluggable Java entry points in Elasticsearch'
|
||||||
classname 'org.elasticsearch.plugin.example.JvmExamplePlugin'
|
classname 'org.elasticsearch.plugin.example.JvmExamplePlugin'
|
||||||
}
|
}
|
||||||
|
tasks.remove(assemble) // Not published so no need to assemble
|
||||||
|
|
||||||
// no unit tests
|
// no unit tests
|
||||||
test.enabled = false
|
test.enabled = false
|
||||||
|
@ -47,4 +48,3 @@ integTestCluster {
|
||||||
integTestRunner {
|
integTestRunner {
|
||||||
systemProperty 'external.address', "${ -> exampleFixture.addressAndPort }"
|
systemProperty 'external.address', "${ -> exampleFixture.addressAndPort }"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,3 +19,4 @@
|
||||||
|
|
||||||
apply plugin: 'elasticsearch.build'
|
apply plugin: 'elasticsearch.build'
|
||||||
test.enabled = false
|
test.enabled = false
|
||||||
|
tasks.remove(assemble) // Not published so no need to assemble
|
||||||
|
|
Loading…
Reference in New Issue