Skip to content

Commit f63c32f

Browse files
committed
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 b8ef830 commit f63c32f

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
@@ -48,6 +48,7 @@ import org.gradle.api.artifacts.Dependency
4848
import org.gradle.api.artifacts.ModuleDependency
4949
import org.gradle.api.artifacts.ProjectDependency
5050
import org.gradle.api.artifacts.dsl.RepositoryHandler
51+
import org.gradle.api.artifacts.repositories.ExclusiveContentRepository
5152
import org.gradle.api.artifacts.repositories.IvyArtifactRepository
5253
import org.gradle.api.artifacts.repositories.IvyPatternRepositoryLayout
5354
import org.gradle.api.artifacts.repositories.MavenArtifactRepository
@@ -350,10 +351,16 @@ class BuildPlugin implements Plugin<Project> {
350351
// extract the revision number from the version with a regex matcher
351352
List<String> matches = (luceneVersion =~ /\w+-snapshot-([a-z0-9]+)/).getAt(0) as List<String>
352353
String revision = matches.get(1)
353-
repos.maven { MavenArtifactRepository repo ->
354+
MavenArtifactRepository luceneRepo = repos.maven { MavenArtifactRepository repo ->
354355
repo.name = 'lucene-snapshots'
355356
repo.url = "https://s3.amazonaws.com/download.elasticsearch.org/lucenesnapshots/${revision}"
356357
}
358+
repos.exclusiveContent { ExclusiveContentRepository exclusiveRepo ->
359+
exclusiveRepo.filter {
360+
it.includeVersionByRegex(/org\.apache\.lucene/, '.*', ".*-snapshot-${revision}")
361+
}
362+
exclusiveRepo.forRepositories(luceneRepo)
363+
}
357364
}
358365
}
359366

0 commit comments

Comments
 (0)