Avoid polluting download stats on builds (#38660)

Recently we changed where we source released artifacts for usage in
backwards compatibility tests. We now source these from
artifacts.elastic.co. To avoid polluting the download stats from builds,
we want to add the X-Elastic-No-KPI header to requests from
artifacts.elastic.co. To do this, we hack the Ivy feature of custom HTTP
header credentials and specify our desired headers.
This commit is contained in:
Jason Tedor 2019-02-09 09:22:43 -05:00
parent 794ee4fb10
commit 5ab5a0a529
No known key found for this signature in database
GPG Key ID: FA89F05560F16BC5
1 changed files with 10 additions and 0 deletions

View File

@ -39,6 +39,7 @@ import org.gradle.api.artifacts.ModuleVersionIdentifier
import org.gradle.api.artifacts.ProjectDependency
import org.gradle.api.artifacts.ResolvedArtifact
import org.gradle.api.artifacts.dsl.RepositoryHandler
import org.gradle.api.credentials.HttpHeaderCredentials
import org.gradle.api.execution.TaskExecutionGraph
import org.gradle.api.plugins.JavaBasePlugin
import org.gradle.api.plugins.JavaPlugin
@ -50,6 +51,7 @@ import org.gradle.api.tasks.bundling.Jar
import org.gradle.api.tasks.compile.GroovyCompile
import org.gradle.api.tasks.compile.JavaCompile
import org.gradle.api.tasks.javadoc.Javadoc
import org.gradle.authentication.http.HttpHeaderAuthentication
import org.gradle.internal.jvm.Jvm
import org.gradle.process.ExecResult
import org.gradle.process.ExecSpec
@ -570,6 +572,14 @@ class BuildPlugin implements Plugin<Project> {
patternLayout {
artifact "elasticsearch/[module]-[revision](-[classifier]).[ext]"
}
// this header is not a credential but we hack the capability to send this header to avoid polluting our download stats
credentials(HttpHeaderCredentials) {
name = "X-Elastic-No-KPI"
value = "1"
}
authentication {
header(HttpHeaderAuthentication)
}
}
repos.maven {
name "elastic"