You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by rh...@apache.org on 2019/04/09 17:22:31 UTC
[geode] branch develop updated: GEODE-6383: Be explicit in
evaluation dependencies. * A previous commit under this ticket was too
aggressive in project evaluation dependencies. Explicit > Implicit.
This is an automated email from the ASF dual-hosted git repository.
rhoughton pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/develop by this push:
new 09e289f GEODE-6383: Be explicit in evaluation dependencies. * A previous commit under this ticket was too aggressive in project evaluation dependencies. Explicit > Implicit.
09e289f is described below
commit 09e289f185ada1b5f7f4ae946cdf214c22462cb2
Author: Patrick Rhomberg <pr...@pivotal.io>
AuthorDate: Tue Apr 9 10:06:27 2019 -0700
GEODE-6383: Be explicit in evaluation dependencies.
* A previous commit under this ticket was too aggressive in project evaluation dependencies. Explicit > Implicit.
---
geode-assembly/build.gradle | 63 ++++++++++++++++++++++++++++-----------------
1 file changed, 39 insertions(+), 24 deletions(-)
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 532b0fd..c9445fd 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -23,16 +23,46 @@ import org.apache.geode.gradle.plugins.DependencyConstraints
import java.nio.file.Paths
// This project aggressively reaches into many other projects and must wait for those configurations
-// to be evaluated and resolved. As a safeguard against this and to avoid having to explicitly
-// re-list every geode-* here, we instead depend on every subproject of rootProject, excluding this
-// project itself. Additionally, this project also aggressively inspects its own subprojects.
-// Evaluation depends on them all.
+// to be evaluated and resolved. Evaluation depends on each of these subprojects.
+
+// This list is used in a loop to defined the /lib copySpec
+def dependentProjectNames = [
+ ':geode-common',
+ ':geode-connectors',
+ ':geode-core',
+ ':geode-cq',
+ ':geode-lucene',
+ ':geode-memcached',
+ ':geode-old-client-support',
+ ':geode-protobuf',
+ ':geode-protobuf-messages',
+ ':geode-rebalancer',
+ ':geode-redis',
+ ':geode-wan',
+]
+
+// These other dependencies are explicitly referenced throughout other copySpec
+def otherDependentProjectNames = [
+ ':extensions:geode-modules',
+ ':extensions:geode-modules-assembly',
+ ':extensions:geode-modules-session',
+ ':extensions:geode-modules-session',
+ ':extensions:geode-modules-tomcat7',
+ ':extensions:geode-modules-tomcat8',
+ ':extensions:geode-modules-tomcat9',
+ ':geode-experimental-driver',
+ ':geode-management',
+ ':geode-pulse',
+ ':geode-web',
+ ':geode-web-api',
+ ':geode-web-management',
+]
+
evaluationDependsOnChildren()
-rootProject.subprojects.each { neighborProject ->
- if (neighborProject != project) {
- project.evaluationDependsOn(neighborProject.path)
- }
+(dependentProjectNames + otherDependentProjectNames).each { neighborProjectName ->
+ project.evaluationDependsOn(neighborProjectName)
}
+
apply plugin: 'distribution'
apply from: "${rootDir}/${scriptDir}/publish.gradle"
@@ -116,7 +146,6 @@ sourceSets {
}
}
-
task downloadWebServers(type:Copy) {
from {configurations.findAll {it.name.startsWith("webServer")}}
into webServersDir
@@ -484,21 +513,7 @@ distributions {
with copySpec {
into('lib')
- from {
- [
- 'geode-common',
- 'geode-connectors',
- 'geode-core',
- 'geode-cq',
- 'geode-lucene',
- 'geode-memcached',
- 'geode-old-client-support',
- 'geode-protobuf',
- 'geode-protobuf-messages',
- 'geode-rebalancer',
- 'geode-redis',
- 'geode-wan',
- ].collect {
+ from { dependentProjectNames.collect {
[
project(':'.concat(it)).configurations.runtimeClasspath,
project(':'.concat(it)).configurations.archives.allArtifacts.files