130 lines
3.9 KiB
Groovy
130 lines
3.9 KiB
Groovy
description = 'Integration tests for SQL'
|
|
apply plugin: 'elasticsearch.build'
|
|
archivesBaseName = 'qa-sql'
|
|
group = "org.elasticsearch.x-pack.qa.sql"
|
|
|
|
dependencies {
|
|
compile project(":test:framework")
|
|
|
|
// JDBC testing dependencies
|
|
compile project(path: xpackModule('sql:jdbc'))
|
|
|
|
compile project(path: xpackModule('sql:sql-action'))
|
|
compile "net.sourceforge.csvjdbc:csvjdbc:${csvjdbcVersion}"
|
|
|
|
// CLI testing dependencies
|
|
compile project(path: xpackModule('sql:sql-cli'))
|
|
|
|
// H2GIS testing dependencies
|
|
compile("org.orbisgis:h2gis:${h2gisVersion}") {
|
|
exclude group: "org.locationtech.jts"
|
|
}
|
|
|
|
// select just the parts of JLine that are needed
|
|
compile("org.jline:jline-terminal-jna:${jlineVersion}") {
|
|
exclude group: "net.java.dev.jna"
|
|
}
|
|
compile "org.jline:jline-terminal:${jlineVersion}"
|
|
compile "org.jline:jline-reader:${jlineVersion}"
|
|
compile "org.jline:jline-style:${jlineVersion}"
|
|
|
|
testRuntime "org.elasticsearch:jna:${versions.jna}"
|
|
}
|
|
|
|
/* disable unit tests because these are all integration tests used
|
|
* other qa projects. */
|
|
test.enabled = false
|
|
|
|
dependencyLicenses.enabled = false
|
|
dependenciesInfo.enabled = false
|
|
|
|
// the main files are actually test files, so use the appropriate forbidden api sigs
|
|
tasks.named('forbiddenApisMain').configure {
|
|
replaceSignatureFiles 'es-all-signatures', 'es-test-signatures'
|
|
}
|
|
|
|
// just a test fixture: we aren't using this jars in releases and H2GIS requires disabling a lot of checks
|
|
thirdPartyAudit.enabled = false
|
|
|
|
subprojects {
|
|
if (subprojects.isEmpty()) {
|
|
// leaf project
|
|
apply plugin: 'elasticsearch.standalone-rest-test'
|
|
} else {
|
|
apply plugin: 'elasticsearch.build'
|
|
}
|
|
|
|
configurations.testRuntimeClasspath {
|
|
resolutionStrategy.force "org.slf4j:slf4j-api:1.7.25"
|
|
}
|
|
configurations.testRuntime {
|
|
// This is also required to make resolveAllDependencies work
|
|
resolutionStrategy.force "org.slf4j:slf4j-api:1.7.25"
|
|
}
|
|
dependencies {
|
|
|
|
/* Since we're a standalone rest test we actually get transitive
|
|
* dependencies but we don't really want them because they cause
|
|
* all kinds of trouble with the jar hell checks. So we suppress
|
|
* them explicitly for non-es projects. */
|
|
testCompile(xpackProject('plugin:sql:qa')) {
|
|
transitive = false
|
|
}
|
|
testCompile project(":test:framework")
|
|
|
|
// JDBC testing dependencies
|
|
testRuntime "net.sourceforge.csvjdbc:csvjdbc:${csvjdbcVersion}"
|
|
testRuntime "com.h2database:h2:${h2Version}"
|
|
|
|
// H2GIS testing dependencies
|
|
testRuntime("org.orbisgis:h2gis:${h2gisVersion}") {
|
|
exclude group: "org.locationtech.jts"
|
|
exclude group: "com.fasterxml.jackson.core"
|
|
}
|
|
|
|
testRuntime project(path: xpackModule('sql:jdbc'))
|
|
testRuntime xpackProject('plugin:sql:sql-client')
|
|
|
|
// TODO check if needed
|
|
testRuntime("org.antlr:antlr4-runtime:${antlrVersion}") {
|
|
transitive = false
|
|
}
|
|
|
|
// CLI testing dependencies
|
|
testRuntime project(path: xpackModule('sql:sql-cli'))
|
|
testRuntime(xpackProject('plugin:sql:sql-action')) {
|
|
transitive = false
|
|
}
|
|
|
|
testRuntime("org.jline:jline-terminal-jna:${jlineVersion}") {
|
|
exclude group: "net.java.dev.jna"
|
|
}
|
|
testRuntime "org.jline:jline-terminal:${jlineVersion}"
|
|
testRuntime "org.jline:jline-reader:${jlineVersion}"
|
|
testRuntime "org.jline:jline-style:${jlineVersion}"
|
|
|
|
testRuntime "org.elasticsearch:jna:${versions.jna}"
|
|
|
|
// spatial dependency
|
|
testRuntime project(path: xpackModule('spatial'))
|
|
}
|
|
|
|
if (project.name != 'security') {
|
|
// The security project just configures its subprojects
|
|
apply plugin: 'elasticsearch.testclusters'
|
|
apply plugin: 'elasticsearch.rest-test'
|
|
|
|
testClusters.integTest {
|
|
testDistribution = 'DEFAULT'
|
|
setting 'xpack.ml.enabled', 'false'
|
|
setting 'xpack.watcher.enabled', 'false'
|
|
}
|
|
|
|
task runqa {
|
|
doFirst {
|
|
println "Run with `-Dtestclusters.inspect.failure=true integTest` to leave the cluster running after failure"
|
|
}
|
|
}
|
|
}
|
|
}
|