Skip to content

Commit b873d8e

Browse files
authored
Make lucene snapshot repository exclusive to lucene packages (#53353)
When depending on lucene snapshots we point maven at our own s3 backed repository. However, in this case lucene packages should only be retrieved from this location, and no other packages should ever be found in that repo. This commit makes the maven repository exclusive to lucene packages.
1 parent c593c8b commit b873d8e

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ import org.gradle.api.artifacts.Dependency
4646
import org.gradle.api.artifacts.ModuleDependency
4747
import org.gradle.api.artifacts.ProjectDependency
4848
import org.gradle.api.artifacts.dsl.RepositoryHandler
49+
import org.gradle.api.artifacts.repositories.ExclusiveContentRepository
4950
import org.gradle.api.artifacts.repositories.IvyArtifactRepository
5051
import org.gradle.api.artifacts.repositories.IvyPatternRepositoryLayout
5152
import org.gradle.api.artifacts.repositories.MavenArtifactRepository
@@ -327,10 +328,16 @@ class BuildPlugin implements Plugin<Project> {
327328
// extract the revision number from the version with a regex matcher
328329
List<String> matches = (luceneVersion =~ /\w+-snapshot-([a-z0-9]+)/).getAt(0) as List<String>
329330
String revision = matches.get(1)
330-
repos.maven { MavenArtifactRepository repo ->
331+
MavenArtifactRepository luceneRepo = repos.maven { MavenArtifactRepository repo ->
331332
repo.name = 'lucene-snapshots'
332333
repo.url = "https://s3.amazonaws.com/download.elasticsearch.org/lucenesnapshots/${revision}"
333334
}
335+
repos.exclusiveContent { ExclusiveContentRepository exclusiveRepo ->
336+
exclusiveRepo.filter {
337+
it.includeVersionByRegex(/org\.apache\.lucene/, '.*', ".*-snapshot-${revision}")
338+
}
339+
exclusiveRepo.forRepositories(luceneRepo)
340+
}
334341
}
335342
}
336343

0 commit comments

Comments
 (0)