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

Konstantin Boudnik commented on BIGTOP-1222:
--------------------------------------------

Guys, I think we need to make a distinction here between what we right now call 
'smoke' tests and what you're envisioning as a proxy for a customer's - a data 
scientist in your example - use case. Let's call them *functional tests* for 
now (not really true, but still). The existing smoke tests are really of an 
integration kind or *integration smoke tests*. The reason all the dependencies 
have to be resolved to create a test artifact of the latter kind is that some 
of the tests - not all though - are using low level APIs. HBase tests are the 
most illustrative in this sense.

Most of the Hadoop *integration tests*, on the other hand, are implemented by 
using CLI calls into Hadoop cluster hence they might looks like *functional 
tests*. For *functional tests* we don't need as much of the dependencies being 
resolved at the compile time: all one needs is to be able to locate certain 
installed jar files ({{jobclient}}, etc.) and driver scripts like {{hadoop}} or 
{{hdfs}}. And that is where the confusion is coming from, I believe. For 
example look at how pig smoke are picking up additional jars via from 
executor's pom.xml. In other words - these tests are of the second type: a true 
smokes. And they can be simplified for sure.

I think if the second type of tests - *functional tests* - can be rewritten 
into Groovy scripts which will provide two folds benefit:
 - they can be compiled and run in the same fashion as now with all Maven 
install/verify life cycle
 - they could be quickly fired up from Gradle environment without most of the 
tribal dancing required by Maven

Does it reconcile all our points or not?

> 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