diff --git a/build.gradle b/build.gradle index f8f76d68..db4d2912 100644 --- a/build.gradle +++ b/build.gradle @@ -310,8 +310,14 @@ dependencies { implementation 'org.jooq:jooq:3.10.8' implementation "org.apache.commons:commons-lang3:${versions.commonslang}" - implementation "org.bouncycastle:bc-fips:${versions.bouncycastle_jce}" - implementation "org.bouncycastle:bcpkix-fips:${versions.bouncycastle_pkix}" + // When building with -Pcrypto.standard=FIPS-140-3, bcFips jars are provided by OpenSearch + if (FipsBuildParams.isInFipsMode()) { + compileOnly "org.bouncycastle:bc-fips:${versions.bouncycastle_jce}" + compileOnly "org.bouncycastle:bcpkix-fips:${versions.bouncycastle_pkix}" + } else { + implementation "org.bouncycastle:bc-fips:${versions.bouncycastle_jce}" + implementation "org.bouncycastle:bcpkix-fips:${versions.bouncycastle_pkix}" + } implementation "org.opensearch:performance-analyzer-commons:${paCommonsVersion}" implementation "com.fasterxml.jackson.core:jackson-annotations:${jacksonVersion}" implementation "com.fasterxml.jackson.core:jackson-databind:${jacksonDataBindVersion}" @@ -457,6 +463,7 @@ gradle.startParameter.excludedTaskNames += [ "forbiddenApisMain", import java.util.concurrent.Callable import org.ajoberstar.grgit.Grgit +import org.opensearch.gradle.info.FipsBuildParams import org.opensearch.gradle.test.RestIntegTestTask import org.opensearch.gradle.testclusters.StandaloneRestIntegTestTask diff --git a/scripts/build.sh b/scripts/build.sh index 7f5ae6bd..39ba7524 100644 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -67,10 +67,10 @@ fi [[ "$SNAPSHOT" == "true" ]] && VERSION=$VERSION-SNAPSHOT [ -z "$OUTPUT" ] && OUTPUT=artifacts -./gradlew build -Dopensearch.version=$VERSION -Dbuild.snapshot=$SNAPSHOT -Dbuild.version_qualifier=$QUALIFIER -x test +./gradlew build -Dopensearch.version=$VERSION -Dbuild.snapshot=$SNAPSHOT -Dbuild.version_qualifier=$QUALIFIER -x test -Pcrypto.standard=FIPS-140-3 mkdir -p $OUTPUT/plugins cp ./build/distributions/*.zip $OUTPUT/plugins -./gradlew publishPluginZipPublicationToZipStagingRepository -Dopensearch.version=$VERSION -Dbuild.snapshot=$SNAPSHOT -Dbuild.version_qualifier=$QUALIFIER +./gradlew publishPluginZipPublicationToZipStagingRepository -Dopensearch.version=$VERSION -Dbuild.snapshot=$SNAPSHOT -Dbuild.version_qualifier=$QUALIFIER -Pcrypto.standard=FIPS-140-3 mkdir -p $OUTPUT/maven/org/opensearch cp -r ./build/local-staging-repo/org/opensearch/. $OUTPUT/maven/org/opensearch