OpenSearch/x-pack/plugin/sql/jdbc/build.gradle

54 lines
1.7 KiB
Groovy

apply plugin: 'elasticsearch.build'
apply plugin: 'elasticsearch.publish'
apply plugin: 'com.github.johnrengelman.shadow'
description = 'JDBC driver for Elasticsearch'
archivesBaseName = "x-pack-sql-jdbc"
tasks.named('forbiddenApisMain').configure {
// does not depend on core, so only jdk and http signatures should be checked
replaceSignatureFiles 'jdk-signatures'
}
dependencies {
api(xpackProject('plugin:sql:sql-client')) {
transitive = false
}
api(xpackProject('plugin:sql:sql-proto')) {
transitive = false
}
api(project(':libs:elasticsearch-x-content')) {
transitive = false
}
api(project(':libs:elasticsearch-geo')) {
transitive = false
}
api project(':libs:elasticsearch-core')
api "com.fasterxml.jackson.dataformat:jackson-dataformat-cbor:${versions.jackson}"
runtimeOnly "com.fasterxml.jackson.core:jackson-core:${versions.jackson}"
testImplementation project(":test:framework")
testImplementation project(path: xpackModule('core'), configuration: 'testArtifacts')
}
tasks.named("dependencyLicenses").configure {
mapping from: /jackson-.*/, to: 'jackson'
}
shadowJar {
relocate 'com.fasterxml', 'shadow.fasterxml'
relocate('org.elasticsearch', 'shadow.org.elasticsearch') {
// Don't relocate the JDBC driver classes themselves as that's (mostly) public API
exclude 'org.elasticsearch.xpack.sql.jdbc.*'
}
}
thirdPartyAudit.ignoreMissingClasses(
'com.fasterxml.jackson.databind.ObjectMapper',
'com.fasterxml.jackson.databind.cfg.MapperBuilder'
)
tasks.named("test").configure {
// reset the unit test classpath as using the shadow jar won't work due to relocated packages
classpath = sourceSets.test.runtimeClasspath
}