/* * SPDX-License-Identifier: Apache-2.0 * * The OpenSearch Contributors require contributions made to * this file be licensed under the Apache-2.0 license or a * compatible open source license. * * Modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ /* * Licensed to Elasticsearch under one or more contributor * license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright * ownership. Elasticsearch 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 * * http://www.apache.org/licenses/LICENSE-2.0 * * 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. */ import org.opensearch.gradle.info.BuildParams; apply plugin: 'opensearch.build' apply plugin: 'opensearch.publish' dependencies { api project(":client:rest") api project(":client:sniffer") api project(':libs:opensearch-nio') api project(":server") api project(":libs:opensearch-cli") api "com.carrotsearch.randomizedtesting:randomizedtesting-runner:${versions.randomizedrunner}" api "junit:junit:${versions.junit}" api "org.hamcrest:hamcrest:${versions.hamcrest}" api "org.apache.lucene:lucene-test-framework:${versions.lucene}" api "org.apache.lucene:lucene-codecs:${versions.lucene}" api "commons-logging:commons-logging:${versions.commonslogging}" api "commons-codec:commons-codec:${versions.commonscodec}" api "org.elasticsearch:securemock:${versions.securemock}" api "org.elasticsearch:mocksocket:${versions.mocksocket}" } compileJava.options.compilerArgs << '-Xlint:-cast,-rawtypes,-unchecked' compileTestJava.options.compilerArgs << '-Xlint:-rawtypes' // the main files are actually test files, so use the appropriate forbidden api sigs tasks.named('forbiddenApisMain').configure { replaceSignatureFiles 'jdk-signatures', 'opensearch-all-signatures', 'opensearch-test-signatures' } // TODO: should we have licenses for our test deps? tasks.named("dependencyLicenses").configure { it.enabled = false } dependenciesInfo.enabled = false thirdPartyAudit.ignoreMissingClasses( // classes are missing 'javax.servlet.ServletContextEvent', 'javax.servlet.ServletContextListener', 'org.apache.avalon.framework.logger.Logger', 'org.apache.log.Hierarchy', 'org.apache.log.Logger', 'org.apache.log4j.Category', 'org.apache.log4j.Level', 'org.apache.log4j.Logger', 'org.apache.log4j.Priority', // TODO - OpenSearch remove this missing classes. Issue: https://github.com/opensearch-project/OpenSearch/issues/420 'org.apache.tools.ant.BuildException', 'org.apache.tools.ant.DirectoryScanner', 'org.apache.tools.ant.Task', 'org.apache.tools.ant.types.FileSet', ) // TODO - OpenSearch remove this violation. Issue: https://github.com/opensearch-project/OpenSearch/issues/420 thirdPartyAudit.ignoreViolations( 'org.objenesis.instantiator.sun.UnsafeFactoryInstantiator' ) test { systemProperty 'tests.gradle_index_compat_versions', BuildParams.bwcVersions.indexCompatible.join(',') systemProperty 'tests.gradle_wire_compat_versions', BuildParams.bwcVersions.wireCompatible.join(',') systemProperty 'tests.gradle_unreleased_versions', BuildParams.bwcVersions.unreleased.join(',') } tasks.register("integTest", Test) { include "**/*IT.class" } tasks.register("verifyVersions") { dependsOn test }