40 lines
1.4 KiB
Groovy
40 lines
1.4 KiB
Groovy
import de.thetaphi.forbiddenapis.gradle.CheckForbiddenApis
|
|
import org.elasticsearch.gradle.info.BuildParams
|
|
|
|
apply plugin: 'elasticsearch.build'
|
|
|
|
archivesBaseName = 'elasticsearch-security-cli'
|
|
|
|
dependencies {
|
|
compileOnly project(":server")
|
|
compileOnly project(path: xpackModule('core'), configuration: 'default')
|
|
compile "org.bouncycastle:bcpkix-jdk15on:${versions.bouncycastle}"
|
|
compile "org.bouncycastle:bcprov-jdk15on:${versions.bouncycastle}"
|
|
testImplementation 'com.google.jimfs:jimfs:1.1'
|
|
testCompile project(":test:framework")
|
|
testCompile project(path: xpackModule('core'), configuration: 'testArtifacts')
|
|
}
|
|
|
|
dependencyLicenses {
|
|
mapping from: /bc.*/, to: 'bouncycastle'
|
|
}
|
|
|
|
forbiddenPatterns {
|
|
exclude '**/*.p12'
|
|
exclude '**/*.jks'
|
|
}
|
|
|
|
if (BuildParams.inFipsJvm) {
|
|
test.enabled = false
|
|
testingConventions.enabled = false
|
|
// Forbiden APIs non-portable checks fail because bouncy castle classes being used from the FIPS JDK since those are
|
|
// not part of the Java specification - all of this is as designed, so we have to relax this check for FIPS.
|
|
tasks.withType(CheckForbiddenApis) {
|
|
bundledSignatures -= "jdk-non-portable"
|
|
}
|
|
// FIPS JVM includes many classes from bouncycastle which count as jar hell for the third party audit,
|
|
// rather than provide a long list of exclusions, disable the check on FIPS.
|
|
thirdPartyAudit.enabled = false
|
|
|
|
}
|