2018-05-16 01:48:32 -04:00
|
|
|
import org.elasticsearch.gradle.test.RestIntegTestTask
|
|
|
|
|
|
|
|
apply plugin: 'elasticsearch.standalone-test'
|
|
|
|
|
|
|
|
dependencies {
|
2018-08-24 01:51:26 -04:00
|
|
|
testCompile project(path: xpackModule('core'), configuration: 'testArtifacts')
|
2018-05-16 01:48:32 -04:00
|
|
|
testCompile project(path: xpackModule('ccr'), configuration: 'runtime')
|
|
|
|
}
|
|
|
|
|
|
|
|
task leaderClusterTest(type: RestIntegTestTask) {
|
|
|
|
mustRunAfter(precommit)
|
|
|
|
}
|
|
|
|
|
|
|
|
leaderClusterTestCluster {
|
|
|
|
numNodes = 1
|
|
|
|
clusterName = 'leader-cluster'
|
|
|
|
setting 'xpack.license.self_generated.type', 'trial'
|
|
|
|
setting 'xpack.security.enabled', 'true'
|
|
|
|
setting 'xpack.monitoring.enabled', 'false'
|
|
|
|
extraConfigFile 'roles.yml', 'roles.yml'
|
|
|
|
setupCommand 'setupTestAdmin',
|
|
|
|
'bin/elasticsearch-users', 'useradd', "test_admin", '-p', 'x-pack-test-password', '-r', "superuser"
|
|
|
|
setupCommand 'setupCcrUser',
|
|
|
|
'bin/elasticsearch-users', 'useradd', "test_ccr", '-p', 'x-pack-test-password', '-r', "manage_ccr"
|
|
|
|
waitCondition = { node, ant ->
|
|
|
|
File tmpFile = new File(node.cwd, 'wait.success')
|
|
|
|
ant.get(src: "http://${node.httpUri()}/_cluster/health?wait_for_nodes=>=${numNodes}&wait_for_status=yellow",
|
|
|
|
dest: tmpFile.toString(),
|
|
|
|
username: 'test_admin',
|
|
|
|
password: 'x-pack-test-password',
|
|
|
|
ignoreerrors: true,
|
|
|
|
retries: 10)
|
|
|
|
return tmpFile.exists()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
leaderClusterTestRunner {
|
|
|
|
systemProperty 'tests.is_leader_cluster', 'true'
|
|
|
|
}
|
|
|
|
|
|
|
|
task followClusterTest(type: RestIntegTestTask) {}
|
|
|
|
|
|
|
|
followClusterTestCluster {
|
|
|
|
dependsOn leaderClusterTestRunner
|
|
|
|
numNodes = 1
|
|
|
|
clusterName = 'follow-cluster'
|
2018-09-05 20:43:44 -04:00
|
|
|
setting 'cluster.remote.leader_cluster.seeds', "\"${-> leaderClusterTest.nodes.get(0).transportUri()}\""
|
2018-05-16 01:48:32 -04:00
|
|
|
setting 'xpack.license.self_generated.type', 'trial'
|
|
|
|
setting 'xpack.security.enabled', 'true'
|
2018-09-12 09:13:07 -04:00
|
|
|
setting 'xpack.monitoring.collection.enabled', 'true'
|
2018-05-16 01:48:32 -04:00
|
|
|
extraConfigFile 'roles.yml', 'roles.yml'
|
|
|
|
setupCommand 'setupTestAdmin',
|
|
|
|
'bin/elasticsearch-users', 'useradd', "test_admin", '-p', 'x-pack-test-password', '-r', "superuser"
|
|
|
|
setupCommand 'setupCcrUser',
|
|
|
|
'bin/elasticsearch-users', 'useradd', "test_ccr", '-p', 'x-pack-test-password', '-r', "ccruser"
|
|
|
|
waitCondition = { node, ant ->
|
|
|
|
File tmpFile = new File(node.cwd, 'wait.success')
|
|
|
|
ant.get(src: "http://${node.httpUri()}/_cluster/health?wait_for_nodes=>=${numNodes}&wait_for_status=yellow",
|
|
|
|
dest: tmpFile.toString(),
|
|
|
|
username: 'test_admin',
|
|
|
|
password: 'x-pack-test-password',
|
|
|
|
ignoreerrors: true,
|
|
|
|
retries: 10)
|
|
|
|
return tmpFile.exists()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
followClusterTestRunner {
|
|
|
|
systemProperty 'tests.is_leader_cluster', 'false'
|
|
|
|
systemProperty 'tests.leader_host', "${-> leaderClusterTest.nodes.get(0).httpUri()}"
|
|
|
|
finalizedBy 'leaderClusterTestCluster#stop'
|
|
|
|
}
|
|
|
|
|
2018-08-24 09:48:54 -04:00
|
|
|
check.dependsOn followClusterTest
|
2018-05-16 01:48:32 -04:00
|
|
|
test.enabled = false // no unit tests for multi-cluster-search, only the rest integration test
|