1
0

build.gradle 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import org.elasticsearch.gradle.test.RestIntegTestTask
  2. apply plugin: 'elasticsearch.standalone-rest-test'
  3. apply plugin: 'elasticsearch.rest-test'
  4. dependencies {
  5. testCompile project(path: xpackModule('core'), configuration: 'default')
  6. testCompile project(path: xpackModule('security'), configuration: 'testArtifacts')
  7. testCompile project(path: xpackModule('core'), configuration: 'testArtifacts')
  8. }
  9. task integTestNoSecurity(type: RestIntegTestTask) {
  10. description = "Run tests against a cluster that doesn't have security"
  11. }
  12. tasks.getByName("integTestNoSecurityRunner").configure {
  13. systemProperty 'tests.has_security', 'false'
  14. }
  15. check.dependsOn(integTestNoSecurity)
  16. task integTestSecurity(type: RestIntegTestTask) {
  17. dependsOn integTestNoSecurity
  18. description = "Run tests against a cluster that has security"
  19. }
  20. tasks.getByName("integTestSecurityRunner").configure {
  21. systemProperty 'tests.has_security', 'true'
  22. }
  23. check.dependsOn(integTestSecurity)
  24. configure(extensions.findByName("integTestNoSecurityCluster")) {
  25. clusterName = "enable-security-on-basic"
  26. numNodes = 2
  27. setting 'xpack.ilm.enabled', 'false'
  28. setting 'xpack.ml.enabled', 'false'
  29. setting 'xpack.license.self_generated.type', 'basic'
  30. setting 'xpack.security.enabled', 'false'
  31. }
  32. Task noSecurityTest = tasks.findByName("integTestNoSecurity")
  33. configure(extensions.findByName("integTestSecurityCluster")) {
  34. clusterName = "basic-license"
  35. numNodes = 2
  36. dataDir = { nodeNum -> noSecurityTest.nodes[nodeNum].dataDir }
  37. setting 'xpack.ilm.enabled', 'false'
  38. setting 'xpack.ml.enabled', 'false'
  39. setting 'xpack.license.self_generated.type', 'basic'
  40. setting 'xpack.security.enabled', 'true'
  41. setting 'xpack.security.authc.anonymous.roles', 'anonymous'
  42. setting 'xpack.security.transport.ssl.enabled', 'true'
  43. setting 'xpack.security.transport.ssl.certificate', 'transport.crt'
  44. setting 'xpack.security.transport.ssl.key', 'transport.key'
  45. setting 'xpack.security.transport.ssl.key_passphrase', 'transport-password'
  46. setting 'xpack.security.transport.ssl.certificate_authorities', 'ca.crt'
  47. extraConfigFile 'transport.key', project.projectDir.toPath().resolve('src/test/resources/ssl/transport.key').toFile()
  48. extraConfigFile 'transport.crt', project.projectDir.toPath().resolve('src/test/resources/ssl/transport.crt').toFile()
  49. extraConfigFile 'ca.crt', project.projectDir.toPath().resolve('src/test/resources/ssl/ca.crt').toFile()
  50. setupCommand 'setupAdminUser',
  51. 'bin/elasticsearch-users', 'useradd', 'admin_user', '-p', 'admin-password', '-r', 'superuser'
  52. setupCommand 'setupTestUser' ,
  53. 'bin/elasticsearch-users', 'useradd', 'security_test_user', '-p', 'security-test-password', '-r', 'security_test_role'
  54. extraConfigFile 'roles.yml', project.projectDir.toPath().resolve('src/test/resources/roles.yml').toFile()
  55. }
  56. integTest.enabled = false