apply plugin: 'elasticsearch.standalone-rest-test'
apply plugin: 'elasticsearch.rest-test'

dependencies {
  testCompile project(path: ':x-pack-elasticsearch:plugin', configuration: 'runtime')
}

integTestCluster {
  distribution = 'zip'
  numNodes = 2
  clusterName = 'multi-node'
  plugin ':x-pack-elasticsearch:plugin'
  setting 'xpack.watcher.enabled', 'false'
  setting 'xpack.monitoring.enabled', 'false'
  setting 'xpack.ml.enabled', 'false'
  extraConfigFile 'x-pack/roles.yml', 'roles.yml'
  setupCommand 'setup-test-user', 'bin/x-pack/users', 'useradd', 'test-user', '-p', 'x-pack-test-password', '-r', 'test'
  setupCommand 'setup-super-user', 'bin/x-pack/users', 'useradd', 'super-user', '-p', 'x-pack-super-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: 'super-user',
            password: 'x-pack-super-password',
            ignoreerrors: true,
            retries: 10)
    return tmpFile.exists()
  }
}