[ 
https://issues.apache.org/jira/browse/BIGTOP-1222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13944802#comment-13944802
 ] 

Martin Bukatovic commented on BIGTOP-1222:
------------------------------------------

I agree with [~jayunit100] that we should use hadoop instance already installed 
on the system (which is quite a requirement for a this kind of test anyway) 
instead of having maven to fetch "some" hadoop libraries. I know that some of 
hadoop dependencies are specified in the smoke execution pom files, which is 
something I don't like but forgot to mention here - so thanks Jay for pointing 
this out.

{quote}
I still dont understand fully why, for smoke tests, we care about maven 
dependencies at all? To me, they are just a means to an end (we need ITest on 
the classpath to run hadoop commands and leverage the awesome bigtop smoke 
tests , so we go ahead and find a way to add it - but we dont care much about 
having the exact right version of it)....
{quote}

What I mean by dependencies are all the libraries needed to run groovy and the 
testing framework, eg. following list are maven generated runtime dependencies 
for groovy runtime on one of my machines:

~~~
/opt/m2-local-repo/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar
/opt/m2-local-repo/org/apache/ant/ant-launcher/1.8.2/ant-launcher-1.8.2.jar
/opt/m2-local-repo/junit/junit/4.10/junit-4.10.jar
/opt/m2-local-repo/org/apache/ant/ant-antlr/1.8.2/ant-antlr-1.8.2.jar
/opt/m2-local-repo/org/codehaus/jsr166-mirror/jsr166y/1.7.0/jsr166y-1.7.0.jar
/opt/m2-local-repo/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar
/opt/m2-local-repo/com/thoughtworks/xstream/xstream/1.4.1/xstream-1.4.1.jar
/opt/m2-local-repo/org/codehaus/gpars/gpars/0.12/gpars-0.12.jar
/opt/m2-local-repo/org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar
/opt/m2-local-repo/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar
/opt/m2-local-repo/org/codehaus/jsr166-mirror/extra166y/1.7.0/extra166y-1.7.0.jar
/opt/m2-local-repo/bsf/bsf/2.4.0/bsf-2.4.0.jar
/opt/m2-local-repo/org/apache/ant/ant/1.8.2/ant-1.8.2.jar
/opt/m2-local-repo/org/fusesource/jansi/jansi/1.7/jansi-1.7.jar
/opt/m2-local-repo/org/apache/ant/ant-junit/1.8.2/ant-junit-1.8.2.jar
/opt/m2-local-repo/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar
/opt/m2-local-repo/jline/jline/0.9.94/jline-0.9.94.jar
/opt/m2-local-repo/javax/servlet/jsp-api/2.0/jsp-api-2.0.jar
/opt/m2-local-repo/org/codehaus/groovy/groovy-all/1.8.6/groovy-all-1.8.6.jar
/opt/m2-local-repo/commons-cli/commons-cli/1.2/commons-cli-1.2.jar
~~~


And the testing framework requires this:

~~~
/opt/m2-local-repo/commons-logging/commons-logging/1.1/commons-logging-1.1.jar
/opt/m2-local-repo/org/codehaus/groovy/groovy-all/1.8.6/groovy-all-1.8.6.jar
/opt/m2-local-repo/junit/junit/4.11/junit-4.11.jar
/opt/m2-local-repo/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
/opt/m2-local-repo/org/apache/ant/ant-launcher/1.8.2/ant-launcher-1.8.2.jar
/opt/m2-local-repo/org/apache/ant/ant/1.8.2/ant-1.8.2.jar
/opt/m2-local-repo/log4j/log4j/1.2.14/log4j-1.2.14.jar
/opt/m2-local-repo/javax/servlet/servlet-api/2.3/servlet-api-2.3.jar
/opt/m2-local-repo/logkit/logkit/1.0.1/logkit-1.0.1.jar
/opt/m2-local-repo/org/apache/ant/ant-junit/1.8.2/ant-junit-1.8.2.jar
/opt/m2-local-repo/avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar
/opt/m2-local-repo/org/apache/bigtop/itest/itest-common/0.8.0-SNAPSHOT/itest-common-0.8.0-SNAPSHOT.jar
~~~

Looking at those lists, I don't find it a good idea to construct them by hand, 
so I'm ok with manen (or some other tool) generating them for me. Actually I 
find the manual way kind of scary, considering the number of dependencies and 
how java handles multiple versions of the same library. (Also it seems I 
misused the potato/carrot analogy for this, sorry for this :-)

> Completely gradleize the bigtop smokes
> --------------------------------------
>
>                 Key: BIGTOP-1222
>                 URL: https://issues.apache.org/jira/browse/BIGTOP-1222
>             Project: Bigtop
>          Issue Type: Improvement
>          Components: Build
>    Affects Versions: 0.7.0
>            Reporter: jay vyas
>
> Currently, there is a JIRA underway to make running the maven based smoke 
> tests easier:  BIGTOP-1195.  
> Eventually, however, maybe we could run these smokes from gradle.    I think 
> that will obviate BIGTOP-1195 (Although i still assert a bash driver is a big 
> win/gain for bigtop's goals : which are to unify the hadoop packaging and 
> deployment paradigm).
> - run the smokes using a simple gradle goal
> - smokes should be easily runnable as scripts, with no need for jar file 
> intermediates.
> - The bash driver for BIGTOP-1195 (if accepted, still under debate) should be 
> upgraded to use the new gradle smokes
> - Delete old maven smokes. 
> This might be a little ambitious, if so others chime in.  I'm not a 
> gradle/groovy expert but getting more well versed.  



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to