import org.elasticsearch.gradle.MavenFilteringHack apply plugin: 'elasticsearch.rest-test' dependencies { testCompile project(path: ':x-plugins:elasticsearch:x-pack', configuration: 'runtime') } ext.pluginsCount = 1 // we install xpack explicitly 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 integTest.cluster.plugin(subproj.name, project(subproj.path)) pluginsCount += 1 } integTest { cluster { plugin 'x-pack', project(':x-plugins:elasticsearch:x-pack') setupCommand 'setupDummyUser', 'bin/x-pack/esusers', 'useradd', 'test_user', '-p', 'changeme', '-r', 'admin' waitCondition = { node, ant -> File tmpFile = new File(node.cwd, 'wait.success') ant.get(src: "http://localhost:${node.httpPort()}", dest: tmpFile.toString(), username: 'test_user', password: 'changeme', ignoreerrors: true, retries: 10) return tmpFile.exists() } } } ext.expansions = [ 'expected.plugins.count': pluginsCount ] processTestResources { inputs.properties(expansions) MavenFilteringHack.filter(it, expansions) }