Testclusters: graph (#43033)

Convert x-pack  graph to use testClusters
This commit is contained in:
Alpar Torok 2019-06-13 09:46:55 +03:00
parent a1b8d48f17
commit eb7a8bb4a4
2 changed files with 25 additions and 34 deletions

View File

@ -1,17 +1,17 @@
import org.elasticsearch.gradle.test.RestIntegTestTask import org.elasticsearch.gradle.test.RestIntegTestTask
subprojects { subprojects {
// HACK: please fix this // HACK: please fix this
// we want to add the rest api specs for xpack to qa tests, but we // we want to add the rest api specs for xpack to qa tests, but we
// need to wait until after the project is evaluated to only apply // need to wait until after the project is evaluated to only apply
// to those that rest tests. this used to be done automatically // to those that rest tests. this used to be done automatically
// when xpack was a plugin, but now there is no place with xpack as a module. // when xpack was a plugin, but now there is no place with xpack as a module.
// instead, we should package these and make them easy to use for rest tests, // instead, we should package these and make them easy to use for rest tests,
// but currently, they must be copied into the resources of the test runner. // but currently, they must be copied into the resources of the test runner.
project.tasks.withType(RestIntegTestTask) { project.tasks.withType(RestIntegTestTask) {
File xpackResources = new File(xpackProject('plugin').projectDir, 'src/test/resources') File xpackResources = new File(xpackProject('plugin').projectDir, 'src/test/resources')
project.copyRestSpec.from(xpackResources) { project.copyRestSpec.from(xpackResources) {
include 'rest-api-spec/api/**' include 'rest-api-spec/api/**'
} }
} }
} }

View File

@ -1,3 +1,4 @@
apply plugin: 'elasticsearch.testclusters'
apply plugin: 'elasticsearch.standalone-rest-test' apply plugin: 'elasticsearch.standalone-rest-test'
apply plugin: 'elasticsearch.rest-test' apply plugin: 'elasticsearch.rest-test'
@ -12,25 +13,15 @@ task copyGraphRestTests(type: Copy) {
include 'rest-api-spec/test/graph/**' include 'rest-api-spec/test/graph/**'
} }
integTestCluster { integTest.dependsOn copyGraphRestTests
dependsOn copyGraphRestTests
extraConfigFile 'roles.yml', 'roles.yml' testClusters.integTest {
setupCommand 'setupTestAdminUser', distribution = "DEFAULT"
'bin/elasticsearch-users', 'useradd', 'test_admin', '-p', 'x-pack-test-password', '-r', 'superuser'
setupCommand 'setupGraphExplorerUser',
'bin/elasticsearch-users', 'useradd', 'graph_explorer', '-p', 'x-pack-test-password', '-r', 'graph_explorer'
setupCommand 'setupPowerlessUser',
'bin/elasticsearch-users', 'useradd', 'no_graph_explorer', '-p', 'x-pack-test-password', '-r', 'no_graph_explorer'
setting 'xpack.license.self_generated.type', 'trial'
setting 'xpack.security.enabled', 'true' setting 'xpack.security.enabled', 'true'
waitCondition = { node, ant -> setting 'xpack.license.self_generated.type', 'trial'
File tmpFile = new File(node.cwd, 'wait.success')
ant.get(src: "http://${node.httpUri()}/_cluster/health?wait_for_nodes=>=${numNodes}&wait_for_status=yellow", extraConfigFile 'roles.yml', file('roles.yml')
dest: tmpFile.toString(), user username: 'test_admin', password: 'x-pack-test-password'
username: 'test_admin', user username: 'graph_explorer', password: 'x-pack-test-password', role: 'graph_explorer'
password: 'x-pack-test-password', user username: 'no_graph_explorer', password: 'x-pack-test-password', role: 'no_graph_explorer'
ignoreerrors: true,
retries: 10)
return tmpFile.exists()
}
} }