import org.elasticsearch.gradle.LoggedExec esplugin { description 'The Google Compute Engine (GCE) Discovery plugin allows to use GCE API for the unicast discovery mechanism.' classname 'org.elasticsearch.plugin.discovery.gce.GceDiscoveryPlugin' } versions << [ 'google': '1.20.0' ] dependencies { compile "com.google.apis:google-api-services-compute:v1-rev71-${versions.google}" compile "com.google.api-client:google-api-client:${versions.google}" compile "com.google.oauth-client:google-oauth-client:${versions.google}" compile "com.google.http-client:google-http-client:${versions.google}" compile "com.google.http-client:google-http-client-jackson2:${versions.google}" compile 'com.google.code.findbugs:jsr305:1.3.9' compile "org.apache.httpcomponents:httpclient:${versions.httpclient}" compile "org.apache.httpcomponents:httpcore:${versions.httpcore}" compile "commons-logging:commons-logging:${versions.commonslogging}" compile "commons-codec:commons-codec:${versions.commonscodec}" } // needed to be consistent with ssl host checking String host = InetAddress.getLoopbackAddress().getHostAddress(); // location of keystore and files to generate it File keystore = new File(project.buildDir, 'keystore/test-node.jks') // generate the keystore task createKey(type: LoggedExec) { doFirst { project.delete(keystore.parentFile) keystore.parentFile.mkdirs() } executable = new File(project.javaHome, 'bin/keytool') standardInput = new ByteArrayInputStream('FirstName LastName\nUnit\nOrganization\nCity\nState\nNL\nyes\n\n'.getBytes('UTF-8')) args '-genkey', '-alias', 'test-node', '-keystore', keystore, '-keyalg', 'RSA', '-keysize', '2048', '-validity', '712', '-dname', 'CN=' + host, '-keypass', 'keypass', '-storepass', 'keypass' } // add keystore to test classpath: it expects it there sourceSets.test.resources.srcDir(keystore.parentFile) processTestResources.dependsOn(createKey) dependencyLicenses { mapping from: /google-.*/, to: 'google' } test { // this is needed for insecure plugins, remove if possible! systemProperty 'tests.artifact', project.name } thirdPartyAudit.excludes = [ // classes are missing 'com.google.common.base.Splitter', 'com.google.common.collect.Lists', 'javax.servlet.ServletContextEvent', 'javax.servlet.ServletContextListener', 'org.apache.avalon.framework.logger.Logger', 'org.apache.log.Hierarchy', 'org.apache.log.Logger', ]