blob: 7a353260170b0511a65cdcb48d7318e6a2fcd365 [file] [log] [blame]
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
* <p/>
* http://www.apache.org/licenses/LICENSE-2.0
* <p/>
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
subprojects {
/**
* Utility function for tests to use to confirm EVN Variables.
*/
ext.checkEnv = { env_vars ->
env_vars.each() {
def value = System.getenv("${it}")
if (value == null || value == "null")
throw new GradleException("undeclared env variable: ${it}")
}
}
ext.groovyVersion = '2.4.10'
ext.hadoopVersion = '2.7.4'
ext.hbaseVersion = '1.1.9'
ext.solrVersion = '4.6.0'
ext.slf4jVersion = '1.6.6'
// itest needs be greater than or equal to = 1.0.0
ext.itestVersion = '1.0.0' // Might need to be able to read an input for alternate version?
ext.BIGTOP_HOME = rootDir
dependencies {
compile group: 'org.apache.bigtop.itest', name: 'itest-common', version: itestVersion, transitive: 'true'
//needed to avoid groovy not on classpath error.
testCompile group: 'org.codehaus.groovy', name: 'groovy', version: groovyVersion
testCompile group: 'org.apache.hadoop', name: 'hadoop-common', version: hadoopVersion, transitive: 'true'
testCompile group: 'org.apache.hadoop', name: 'hadoop-hdfs', version: hadoopVersion, transitive: 'true'
testRuntime project(':bigtop-tests:smoke-tests:logger-test-config')
}
//Note you need a snapshot itest to run this.
ext.doExclude = { String filename ->
//print("Exclude? ${filename} ... ")
def keep_this_test = true;
if (filename.contains(".groovy") ||
filename.contains(".java")) {
keep_this_test =
tests_to_include().find({
filename ==~ it
}) != null;
}
//println("Keep = ${keep_this_test} "+filename);
return !keep_this_test;
}
test.doFirst {
// java_home should be declared in all cases.
checkEnv(["JAVA_HOME"])
// TestHadoopExamples and other tests rely on BIGTOP_HOME environment
// variable to find some resources. Let's set it up, using ext.BIGTOP_HOME
environment ("BIGTOP_HOME", BIGTOP_HOME)
}
test.doLast {
println("Now testing...");
//todo, add back in 'basic' after BIGTOP-1392 .
testLogging {
events "passed", "skipped", "failed"
}
}
// Let's make sure all system Properties are passed into the forked test JVM
tasks.withType(Test) {
systemProperties = System.getProperties()
}
test.dependsOn compileGroovy
compileGroovy.dependsOn clean
}