mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-12 16:05:28 +00:00
This change disables security for trial licenses unless security is explicitly enabled in the settings. This is done to facilitate users getting started and not having to deal with some of the complexities involved in getting security configured. In order to do this and avoid disabling security for existing users that have gold or platinum licenses, we have to disable security after cluster formation so that the license can be retrieved. relates elastic/x-pack-elasticsearch#4078 Original commit: elastic/x-pack-elasticsearch@96bdb889fc
80 lines
2.8 KiB
Groovy
80 lines
2.8 KiB
Groovy
import org.elasticsearch.gradle.test.RestIntegTestTask
|
|
|
|
apply plugin: 'elasticsearch.standalone-test'
|
|
|
|
dependencies {
|
|
testCompile project(path: xpackModule('core'), configuration: 'runtime')
|
|
testCompile project(path: xpackModule('core'), configuration: 'testArtifacts')
|
|
}
|
|
|
|
task remoteClusterTest(type: RestIntegTestTask) {
|
|
mustRunAfter(precommit)
|
|
}
|
|
|
|
remoteClusterTestCluster {
|
|
numNodes = 2
|
|
clusterName = 'remote-cluster'
|
|
setting 'search.remote.connect', false
|
|
plugin xpackProject('plugin').path
|
|
setting 'xpack.security.enabled', 'true'
|
|
setting 'xpack.watcher.enabled', 'false'
|
|
setting 'xpack.monitoring.enabled', 'false'
|
|
setting 'xpack.ml.enabled', 'false'
|
|
setting 'xpack.license.self_generated.type', 'trial'
|
|
setupCommand 'setupDummyUser',
|
|
'bin/x-pack/users', 'useradd', 'test_user', '-p', 'x-pack-test-password', '-r', 'superuser'
|
|
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_user',
|
|
password: 'x-pack-test-password',
|
|
ignoreerrors: true,
|
|
retries: 10)
|
|
return tmpFile.exists()
|
|
}
|
|
}
|
|
|
|
remoteClusterTestRunner {
|
|
systemProperty 'tests.rest.suite', 'remote_cluster'
|
|
}
|
|
|
|
task mixedClusterTest(type: RestIntegTestTask) {}
|
|
|
|
mixedClusterTestCluster {
|
|
dependsOn remoteClusterTestRunner
|
|
plugin xpackProject('plugin').path
|
|
setting 'xpack.security.enabled', 'true'
|
|
setting 'xpack.watcher.enabled', 'false'
|
|
setting 'xpack.monitoring.enabled', 'false'
|
|
setting 'xpack.ml.enabled', 'false'
|
|
setting 'xpack.license.self_generated.type', 'trial'
|
|
setupCommand 'setupDummyUser',
|
|
'bin/x-pack/users', 'useradd', 'test_user', '-p', 'x-pack-test-password', '-r', 'superuser'
|
|
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_user',
|
|
password: 'x-pack-test-password',
|
|
ignoreerrors: true,
|
|
retries: 10)
|
|
return tmpFile.exists()
|
|
}
|
|
setting 'search.remote.my_remote_cluster.seeds', "\"${-> remoteClusterTest.nodes.get(0).transportUri()}\""
|
|
setting 'search.remote.connections_per_cluster', 1
|
|
setting 'search.remote.connect', true
|
|
}
|
|
|
|
mixedClusterTestRunner {
|
|
systemProperty 'tests.rest.suite', 'multi_cluster'
|
|
finalizedBy 'remoteClusterTestCluster#node0.stop','remoteClusterTestCluster#node1.stop'
|
|
}
|
|
|
|
task integTest {
|
|
dependsOn = [mixedClusterTest]
|
|
}
|
|
|
|
test.enabled = false // no unit tests for multi-cluster-search, only the rest integration test
|
|
check.dependsOn(integTest)
|