import org.elasticsearch.gradle.MavenFilteringHack apply plugin: 'elasticsearch.standalone-rest-test' apply plugin: 'elasticsearch.rest-test' dependencies { testCompile project(path: xpackModule('core'), configuration: 'runtime') } ext.pluginsCount = 0 project(xpackProject('plugin').path).subprojects { Project p -> // the meta plugin contains the individual xpack plugins if (p.extensions.findByName('esplugin') != null) { pluginsCount += 1 } } project.rootProject.subprojects.findAll { it.path.startsWith(':plugins:') }.each { subproj -> // need to get a non-decorated project object, so must re-lookup the project by path integTestCluster.plugin(subproj.path) pluginsCount += 1 } integTestCluster { plugin xpackProject('plugin').path 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() } } ext.expansions = [ 'expected.plugins.count': pluginsCount ] processTestResources { inputs.properties(expansions) MavenFilteringHack.filter(it, expansions) }