diff --git a/build.gradle b/build.gradle index 4f2af388e6..2a823ec96a 100644 --- a/build.gradle +++ b/build.gradle @@ -55,11 +55,6 @@ allprojects { apply from: "$rootDir/gradle/util.gradle" } -repositories { - mavenLocal() - mavenCentral() -} - description = 'OpenTelemetry instrumentations for Java' allprojects { diff --git a/buildSrc/src/main/java/io/opentelemetry/instrumentation/gradle/muzzle/MuzzlePlugin.java b/buildSrc/src/main/java/io/opentelemetry/instrumentation/gradle/muzzle/MuzzlePlugin.java index 716883d3d2..e28ca50672 100644 --- a/buildSrc/src/main/java/io/opentelemetry/instrumentation/gradle/muzzle/MuzzlePlugin.java +++ b/buildSrc/src/main/java/io/opentelemetry/instrumentation/gradle/muzzle/MuzzlePlugin.java @@ -42,6 +42,7 @@ import org.gradle.api.Plugin; import org.gradle.api.Project; import org.gradle.api.artifacts.Configuration; import org.gradle.api.artifacts.ModuleDependency; +import org.gradle.api.artifacts.repositories.ArtifactRepository; import org.gradle.api.artifacts.repositories.MavenArtifactRepository; import org.gradle.api.file.ConfigurableFileCollection; import org.gradle.api.file.FileCollection; @@ -392,16 +393,25 @@ public class MuzzlePlugin implements Plugin { } private static List getProjectRepositories(Project project) { - return project.getRepositories().stream() - .filter(MavenArtifactRepository.class::isInstance) - .map( - repo -> { - MavenArtifactRepository mavenRepo = (MavenArtifactRepository) repo; - return new RemoteRepository.Builder( - mavenRepo.getName(), "default", mavenRepo.getUrl().toString()) - .build(); - }) - .collect(Collectors.toList()); + List repositories = new ArrayList<>(); + // Manually add mavenCentral until https://github.com/gradle/gradle/issues/17295 + // Adding mavenLocal is much more complicated but hopefully isn't required for normal usage of + // Muzzle. + repositories.add( + new RemoteRepository.Builder( + "MavenCentral", "default", "https://repo.maven.apache.org/maven2/") + .build()); + for (ArtifactRepository repository : project.getRepositories()) { + if (repository instanceof MavenArtifactRepository) { + repositories.add( + new RemoteRepository.Builder( + repository.getName(), + "default", + ((MavenArtifactRepository) repository).getUrl().toString()) + .build()); + } + } + return repositories; } /** Create a list of muzzle directives which assert the opposite of the given MuzzleDirective. */ diff --git a/gradle/java.gradle b/gradle/java.gradle index ec0509871f..e939315b31 100644 --- a/gradle/java.gradle +++ b/gradle/java.gradle @@ -64,11 +64,6 @@ tasks.withType(ScalaCompile).configureEach { targetCompatibility = JavaVersion.toVersion(project.ext.release) } -repositories { - mavenCentral() - mavenLocal() -} - evaluationDependsOn(":dependencyManagement") configurations { dependencyManagement { diff --git a/instrumentation/grails-3.0/javaagent/grails-3.0-javaagent.gradle b/instrumentation/grails-3.0/javaagent/grails-3.0-javaagent.gradle index 216b591a1c..4e83d6604e 100644 --- a/instrumentation/grails-3.0/javaagent/grails-3.0-javaagent.gradle +++ b/instrumentation/grails-3.0/javaagent/grails-3.0-javaagent.gradle @@ -15,12 +15,14 @@ muzzle { } repositories { + mavenCentral() maven { url "https://repo.grails.org/grails/core" mavenContent { releasesOnly() } } + mavenLocal() } // first version where our tests work diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-arquillian-testing/jaxrs-2.0-arquillian-testing.gradle b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-arquillian-testing/jaxrs-2.0-arquillian-testing.gradle index 4f217aded4..8e58983e9c 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-arquillian-testing/jaxrs-2.0-arquillian-testing.gradle +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-arquillian-testing/jaxrs-2.0-arquillian-testing.gradle @@ -5,7 +5,9 @@ apply from: "$rootDir/gradle/java.gradle" // add repo for org.gradle:gradle-tooling-api which org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-gradle-depchain depends on repositories { + mavenCentral() maven { url 'https://repo.gradle.org/gradle/libs-releases' } + mavenLocal() } dependencies { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-payara-testing/jaxrs-2.0-payara-testing.gradle b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-payara-testing/jaxrs-2.0-payara-testing.gradle index d4e80e7079..7ed606e19e 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-payara-testing/jaxrs-2.0-payara-testing.gradle +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-payara-testing/jaxrs-2.0-payara-testing.gradle @@ -6,7 +6,9 @@ apply from: "$rootDir/gradle/instrumentation.gradle" // add repo for org.gradle:gradle-tooling-api which org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-gradle-depchain // which is used by jaxrs-2.0-arquillian-testing depends on repositories { + mavenCentral() maven { url 'https://repo.gradle.org/gradle/libs-releases' } + mavenLocal() } dependencies { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-tomee-testing/jaxrs-2.0-tomee-testing.gradle b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-tomee-testing/jaxrs-2.0-tomee-testing.gradle index 62fe2a1c0a..d62ea29b2b 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-tomee-testing/jaxrs-2.0-tomee-testing.gradle +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-tomee-testing/jaxrs-2.0-tomee-testing.gradle @@ -6,7 +6,9 @@ apply from: "$rootDir/gradle/instrumentation.gradle" // add repo for org.gradle:gradle-tooling-api which org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-gradle-depchain // which is used by jaxrs-2.0-arquillian-testing depends on repositories { + mavenCentral() maven { url 'https://repo.gradle.org/gradle/libs-releases' } + mavenLocal() } dependencies { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-wildfly-testing/jaxrs-2.0-wildfly-testing.gradle b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-wildfly-testing/jaxrs-2.0-wildfly-testing.gradle index 979f6f0079..8131b248ff 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-wildfly-testing/jaxrs-2.0-wildfly-testing.gradle +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-wildfly-testing/jaxrs-2.0-wildfly-testing.gradle @@ -6,7 +6,9 @@ apply from: "$rootDir/gradle/instrumentation.gradle" // add repo for org.gradle:gradle-tooling-api which org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-gradle-depchain // which is used by jaxrs-2.0-arquillian-testing depends on repositories { + mavenCentral() maven { url 'https://repo.gradle.org/gradle/libs-releases' } + mavenLocal() } configurations { diff --git a/instrumentation/jms-1.1/javaagent/jms-1.1-javaagent.gradle b/instrumentation/jms-1.1/javaagent/jms-1.1-javaagent.gradle index e61f331e73..4935376af5 100644 --- a/instrumentation/jms-1.1/javaagent/jms-1.1-javaagent.gradle +++ b/instrumentation/jms-1.1/javaagent/jms-1.1-javaagent.gradle @@ -29,7 +29,9 @@ jms2Test.forkEvery 1 test.dependsOn jms2Test repositories { + mavenCentral() maven { url "https://repository.jboss.org/nexus/content/groups/public/" } + mavenLocal() } dependencies { diff --git a/settings.gradle b/settings.gradle index dbf1df73d4..7ffe668be4 100644 --- a/settings.gradle +++ b/settings.gradle @@ -19,6 +19,13 @@ plugins { id 'com.github.burrunan.s3-build-cache' version '1.1' } +dependencyResolutionManagement { + repositories { + mavenCentral() + mavenLocal() + } +} + def isCI = System.getenv("CI") != null def skipBuildscan = Boolean.valueOf(System.getenv("SKIP_BUILDSCAN")) gradleEnterprise {