elasticsearch/x-pack/qa/multi-project/core-rest-tests-with-multiple-projects/build.gradle
2025-01-13 06:20:35 +00:00

100 lines
4.4 KiB
Groovy

apply plugin: 'elasticsearch.internal-yaml-rest-test'
import org.elasticsearch.gradle.util.GradleUtils
dependencies {
testImplementation project(':x-pack:qa')
testImplementation project(':x-pack:qa:multi-project:yaml-test-framework')
clusterModules project(':modules:mapper-extras')
clusterModules project(':modules:rank-eval')
clusterModules project(':modules:ingest-common')
clusterModules project(':modules:reindex')
clusterModules project(':modules:analysis-common')
clusterModules project(':modules:health-shards-availability')
clusterModules project(':modules:data-streams')
clusterModules project(':modules:multi-project')
clusterModules project(':modules:lang-mustache')
clusterModules project(xpackModule('stack'))
clusterModules project(xpackModule('ilm'))
clusterModules project(xpackModule('mapper-constant-keyword'))
clusterModules project(xpackModule('wildcard'))
restTestConfig project(path: ':modules:data-streams', configuration: "basicRestSpecs")
restTestConfig project(path: ':modules:ingest-common', configuration: "basicRestSpecs")
}
// let the yamlRestTests see the classpath of test
GradleUtils.extendSourceSet(project, "test", "yamlRestTest", tasks.named("yamlRestTest"))
restResources {
restTests {
includeCore '*'
}
}
tasks.named("yamlRestTest").configure {
ArrayList<String> blacklist = [
/* These tests don't work on multi-project yet - we need to go through each of them and make them work */
'^cat.component_templates/10_basic/*',
'^cat.component_templates/10_basic/*/*',
'^cat.recovery/*/*',
'^cat.snapshots/*/*',
'^cluster.desired_balance/10_basic/*',
'^cluster.state/30_expand_wildcards/*',
'^data_stream/lifecycle/*/*',
'^data_stream/10_basic/Create data stream with failure store',
'^data_stream/10_basic/Delete data stream with failure store',
'^data_stream/10_basic/Get data stream and check DSL and ILM information',
'^data_stream/20_unsupported_apis/*',
'^data_stream/40_supported_apis/*',
'^data_stream/80_resolve_index_data_streams/*',
'^data_stream/90_reindex/*',
'^data_stream/100_delete_by_query/*',
'^data_stream/110_update_by_query/*',
'^data_stream/130_migrate_to_data_stream/*',
'^data_stream/140_data_stream_aliases/*',
'^data_stream/150_tsdb/*',
'^data_stream/170_modify_data_stream/*',
'^data_stream/180_simulate_existing_data_stream/*',
'^health/10_basic/*',
'^health/40_diagnosis/*',
'^indices.clone/*/*',
'^indices.get_alias/10_basic/Get alias against closed indices', // Does NOT work with security enabled, see also core-rest-tests-with-security
'^indices.recovery/*/*',
'^indices.resolve_cluster/*/*',
'^indices.resolve_cluster/*/*/*',
'^indices.shard_stores/*/*',
'^indices.shrink/*/*',
'^indices.simulate_index_template/*/*',
'^indices.simulate_template/*/*',
'^indices.split/*/*',
'^test/ingest/15_info_ingest/*', // uses cluster info API
'^test/ingest/70_bulk/Test bulk request with default pipeline', // uses stats API
'^test/ingest/70_bulk/Test bulk request without default pipeline', // uses stats API
'^test/ingest/230_change_target_index/*', // uses cat indices API
'^migration/*/*',
// The following vector search tests do not work due to usage of cluster stats API
'^search.vectors/60_dense_vector_dynamic_mapping/Fields mapped as dense_vector have correct cluster stats min max values',
'^search.vectors/60_dense_vector_dynamic_mapping/Fields mapped as dense_vector without dims or docs have correct cluster stats values',
'^search.vectors/70_dense_vector_telemetry/Field mapping stats',
'^search.vectors/70_dense_vector_telemetry/Field mapping stats with field details',
'^simulate.ingest/*/*',
'^snapshot.clone/*/*',
'^snapshot.create/*/*',
'^snapshot.delete/*/*',
'^snapshot.get/*/*',
'^snapshot.get_repository/20_repository_uuid/*',
'^snapshot.restore/*/*',
'^snapshot.status/*/*',
'^synonyms/*/*',
'^tsdb/30_snapshot/*',
'^tsdb/80_index_resize/*',
// The following tests are muted because the functionality that they are testing is not available in a multi-project setup
// The node removal prevalidation is only available for a Stateful deployment.
'^cluster.prevalidate_node_removal/*/*'
];
if (buildParams.isSnapshotBuild() == false) {
blacklist += [];
}
systemProperty 'tests.rest.blacklist', blacklist.join(',')
}