From 132f2297118e29a9bc0830d24063f425dc75892b Mon Sep 17 00:00:00 2001 From: Ryan Williams <ryan.blake.williams@gmail.com> Date: Wed, 21 Dec 2016 16:37:20 -0800 Subject: [PATCH] [SPARK-17807][CORE] split test-tags into test-JAR Remove spark-tag's compile-scope dependency (and, indirectly, spark-core's compile-scope transitive-dependency) on scalatest by splitting test-oriented tags into spark-tags' test JAR. Alternative to #16303. Author: Ryan Williams <ryan.blake.williams@gmail.com> Closes #16311 from ryan-williams/tt. (cherry picked from commit afd9bc1d8a85adf88c412d8bc75e46e7ecb4bcdd) Signed-off-by: Marcelo Vanzin <vanzin@cloudera.com> --- common/network-common/pom.xml | 12 ++++++++++++ common/network-shuffle/pom.xml | 12 ++++++++++++ common/network-yarn/pom.xml | 11 +++++++++++ common/sketch/pom.xml | 12 ++++++++++++ common/tags/pom.xml | 8 -------- .../java/org/apache/spark/tags/DockerTest.java | 0 .../java/org/apache/spark/tags/ExtendedHiveTest.java | 0 .../java/org/apache/spark/tags/ExtendedYarnTest.java | 0 common/unsafe/pom.xml | 12 ++++++++++++ core/pom.xml | 12 ++++++++++++ external/docker-integration-tests/pom.xml | 2 +- external/flume-sink/pom.xml | 12 ++++++++++++ external/flume/pom.xml | 12 ++++++++++++ external/java8-tests/pom.xml | 12 ++++++++++++ external/kafka-0-10-sql/pom.xml | 12 ++++++++++++ external/kafka-0-10/pom.xml | 12 ++++++++++++ external/kafka-0-8/pom.xml | 12 ++++++++++++ external/kinesis-asl/pom.xml | 12 ++++++++++++ graphx/pom.xml | 12 ++++++++++++ launcher/pom.xml | 11 +++++++++++ mllib-local/pom.xml | 12 ++++++++++++ mllib/pom.xml | 12 ++++++++++++ pom.xml | 6 ++++++ repl/pom.xml | 12 ++++++++++++ sql/catalyst/pom.xml | 12 ++++++++++++ sql/core/pom.xml | 12 ++++++++++++ sql/hive-thriftserver/pom.xml | 12 ++++++++++++ sql/hive/pom.xml | 2 ++ streaming/pom.xml | 11 +++++++++++ yarn/pom.xml | 2 ++ 30 files changed, 272 insertions(+), 9 deletions(-) rename common/tags/src/{main => test}/java/org/apache/spark/tags/DockerTest.java (100%) rename common/tags/src/{main => test}/java/org/apache/spark/tags/ExtendedHiveTest.java (100%) rename common/tags/src/{main => test}/java/org/apache/spark/tags/ExtendedYarnTest.java (100%) diff --git a/common/network-common/pom.xml b/common/network-common/pom.xml index 85644c4a37..793f6c7cbf 100644 --- a/common/network-common/pom.xml +++ b/common/network-common/pom.xml @@ -87,6 +87,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> diff --git a/common/network-shuffle/pom.xml b/common/network-shuffle/pom.xml index e15ede974c..d8ab265289 100644 --- a/common/network-shuffle/pom.xml +++ b/common/network-shuffle/pom.xml @@ -70,6 +70,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> diff --git a/common/network-yarn/pom.xml b/common/network-yarn/pom.xml index c93a355b84..ec23a3339f 100644 --- a/common/network-yarn/pom.xml +++ b/common/network-yarn/pom.xml @@ -50,6 +50,17 @@ <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <!-- Provided dependencies --> <dependency> <groupId>org.apache.hadoop</groupId> diff --git a/common/sketch/pom.xml b/common/sketch/pom.xml index 7c9870a8cb..1cefe88d02 100644 --- a/common/sketch/pom.xml +++ b/common/sketch/pom.xml @@ -39,6 +39,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> diff --git a/common/tags/pom.xml b/common/tags/pom.xml index 8f949b94fd..0778ee3860 100644 --- a/common/tags/pom.xml +++ b/common/tags/pom.xml @@ -34,14 +34,6 @@ <sbt.project.name>tags</sbt.project.name> </properties> - <dependencies> - <dependency> - <groupId>org.scalatest</groupId> - <artifactId>scalatest_${scala.binary.version}</artifactId> - <scope>compile</scope> - </dependency> - </dependencies> - <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> <testOutputDirectory>target/scala-${scala.binary.version}/test-classes</testOutputDirectory> diff --git a/common/tags/src/main/java/org/apache/spark/tags/DockerTest.java b/common/tags/src/test/java/org/apache/spark/tags/DockerTest.java similarity index 100% rename from common/tags/src/main/java/org/apache/spark/tags/DockerTest.java rename to common/tags/src/test/java/org/apache/spark/tags/DockerTest.java diff --git a/common/tags/src/main/java/org/apache/spark/tags/ExtendedHiveTest.java b/common/tags/src/test/java/org/apache/spark/tags/ExtendedHiveTest.java similarity index 100% rename from common/tags/src/main/java/org/apache/spark/tags/ExtendedHiveTest.java rename to common/tags/src/test/java/org/apache/spark/tags/ExtendedHiveTest.java diff --git a/common/tags/src/main/java/org/apache/spark/tags/ExtendedYarnTest.java b/common/tags/src/test/java/org/apache/spark/tags/ExtendedYarnTest.java similarity index 100% rename from common/tags/src/main/java/org/apache/spark/tags/ExtendedYarnTest.java rename to common/tags/src/test/java/org/apache/spark/tags/ExtendedYarnTest.java diff --git a/common/unsafe/pom.xml b/common/unsafe/pom.xml index a9b858e271..b94f0991d4 100644 --- a/common/unsafe/pom.xml +++ b/common/unsafe/pom.xml @@ -39,6 +39,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>com.twitter</groupId> <artifactId>chill_${scala.binary.version}</artifactId> diff --git a/core/pom.xml b/core/pom.xml index d24ef118a5..6e06b62715 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -337,6 +337,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-crypto</artifactId> diff --git a/external/docker-integration-tests/pom.xml b/external/docker-integration-tests/pom.xml index 3849c02ffb..86bc5f5520 100644 --- a/external/docker-integration-tests/pom.xml +++ b/external/docker-integration-tests/pom.xml @@ -96,7 +96,7 @@ <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> - <version>${project.version}</version> + <type>test-jar</type> <scope>test</scope> </dependency> <dependency> diff --git a/external/flume-sink/pom.xml b/external/flume-sink/pom.xml index eec7a889ca..fa722ee2aa 100644 --- a/external/flume-sink/pom.xml +++ b/external/flume-sink/pom.xml @@ -93,6 +93,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> diff --git a/external/flume/pom.xml b/external/flume/pom.xml index a7622d0815..f2c7d3ec6b 100644 --- a/external/flume/pom.xml +++ b/external/flume/pom.xml @@ -69,6 +69,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> diff --git a/external/java8-tests/pom.xml b/external/java8-tests/pom.xml index e862126e48..1d7cf371a2 100644 --- a/external/java8-tests/pom.xml +++ b/external/java8-tests/pom.xml @@ -73,6 +73,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> diff --git a/external/kafka-0-10-sql/pom.xml b/external/kafka-0-10-sql/pom.xml index fdfd2ccd43..03ebe6a2f6 100644 --- a/external/kafka-0-10-sql/pom.xml +++ b/external/kafka-0-10-sql/pom.xml @@ -88,6 +88,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> diff --git a/external/kafka-0-10/pom.xml b/external/kafka-0-10/pom.xml index e5bf070124..a88a180db7 100644 --- a/external/kafka-0-10/pom.xml +++ b/external/kafka-0-10/pom.xml @@ -89,6 +89,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> diff --git a/external/kafka-0-8/pom.xml b/external/kafka-0-8/pom.xml index a02e23c691..29d898b91b 100644 --- a/external/kafka-0-8/pom.xml +++ b/external/kafka-0-8/pom.xml @@ -89,6 +89,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> diff --git a/external/kinesis-asl/pom.xml b/external/kinesis-asl/pom.xml index c53b72eefe..e78218db37 100644 --- a/external/kinesis-asl/pom.xml +++ b/external/kinesis-asl/pom.xml @@ -78,6 +78,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> diff --git a/graphx/pom.xml b/graphx/pom.xml index 96e34cacff..3ffffbaacb 100644 --- a/graphx/pom.xml +++ b/graphx/pom.xml @@ -78,6 +78,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <build> <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory> diff --git a/launcher/pom.xml b/launcher/pom.xml index c0b70dfdc3..c6e5d5c422 100644 --- a/launcher/pom.xml +++ b/launcher/pom.xml @@ -67,6 +67,17 @@ <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <!-- Not needed by the test code, but referenced by SparkSubmit which is used by the tests. --> <dependency> <groupId>org.apache.hadoop</groupId> diff --git a/mllib-local/pom.xml b/mllib-local/pom.xml index 6c3a35eeb9..dd77f5269b 100644 --- a/mllib-local/pom.xml +++ b/mllib-local/pom.xml @@ -56,6 +56,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <profiles> <profile> diff --git a/mllib/pom.xml b/mllib/pom.xml index 757906d137..dc701b8eff 100644 --- a/mllib/pom.xml +++ b/mllib/pom.xml @@ -113,6 +113,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + </dependencies> <profiles> <profile> diff --git a/pom.xml b/pom.xml index 555324524e..8a0efece0c 100644 --- a/pom.xml +++ b/pom.xml @@ -293,6 +293,12 @@ <artifactId>spark-tags_${scala.binary.version}</artifactId> <version>${project.version}</version> </dependency> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <version>${project.version}</version> + <type>test-jar</type> + </dependency> <dependency> <groupId>com.twitter</groupId> <artifactId>chill_${scala.binary.version}</artifactId> diff --git a/repl/pom.xml b/repl/pom.xml index 705316a944..b1980eba4c 100644 --- a/repl/pom.xml +++ b/repl/pom.xml @@ -92,6 +92,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.apache.xbean</groupId> <artifactId>xbean-asm5-shaded</artifactId> diff --git a/sql/catalyst/pom.xml b/sql/catalyst/pom.xml index 72be7e1005..298102f17a 100644 --- a/sql/catalyst/pom.xml +++ b/sql/catalyst/pom.xml @@ -56,6 +56,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-unsafe_${scala.binary.version}</artifactId> diff --git a/sql/core/pom.xml b/sql/core/pom.xml index d7989c2413..bac37f8355 100644 --- a/sql/core/pom.xml +++ b/sql/core/pom.xml @@ -74,6 +74,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.apache.parquet</groupId> <artifactId>parquet-column</artifactId> diff --git a/sql/hive-thriftserver/pom.xml b/sql/hive-thriftserver/pom.xml index 34e0ae5bbc..908a2eba50 100644 --- a/sql/hive-thriftserver/pom.xml +++ b/sql/hive-thriftserver/pom.xml @@ -85,6 +85,18 @@ <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> <groupId>net.sf.jpam</groupId> <artifactId>jpam</artifactId> diff --git a/sql/hive/pom.xml b/sql/hive/pom.xml index c543a3e049..438f9ea7db 100644 --- a/sql/hive/pom.xml +++ b/sql/hive/pom.xml @@ -60,6 +60,8 @@ <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> </dependency> <!-- <dependency> diff --git a/streaming/pom.xml b/streaming/pom.xml index fba6a5d773..6ee084fcbc 100644 --- a/streaming/pom.xml +++ b/streaming/pom.xml @@ -51,6 +51,17 @@ <artifactId>spark-tags_${scala.binary.version}</artifactId> </dependency> + <!-- + This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude + them will yield errors. + --> + <dependency> + <groupId>org.apache.spark</groupId> + <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <!-- Explicit listing of transitive deps that are shaded. Otherwise, odd compiler crashes. --> <dependency> <groupId>com.google.guava</groupId> diff --git a/yarn/pom.xml b/yarn/pom.xml index 85ec270bf9..797b169184 100644 --- a/yarn/pom.xml +++ b/yarn/pom.xml @@ -54,6 +54,8 @@ <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-tags_${scala.binary.version}</artifactId> + <type>test-jar</type> + <scope>test</scope> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> -- GitLab