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.23.0'
]

dependencies {
  compile "com.google.apis:google-api-services-compute:v1-rev160-${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 "org.apache.logging.log4j:log4j-1.2-api:${versions.log4j}"
  compile "commons-codec:commons-codec:${versions.commonscodec}"
}

restResources {
  restApi {
    includeCore '_common', 'cluster', 'nodes'
  }
}

tasks.named("dependencyLicenses").configure {
  mapping from: /google-.*/, to: 'google'
}

check {
  // also execute the QA tests when testing the plugin
  dependsOn 'qa:gce:check'
}

test {
  // this is needed for insecure plugins, remove if possible!
  systemProperty 'tests.artifact', project.name
}

thirdPartyAudit.ignoreMissingClasses(
  // 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'
)