diff --git a/benchmark-e2e/benchmark-e2e.gradle b/benchmark-e2e/benchmark-e2e.gradle index 89b870be91..a72aa0793a 100644 --- a/benchmark-e2e/benchmark-e2e.gradle +++ b/benchmark-e2e/benchmark-e2e.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" description = 'e2e benchmark' diff --git a/benchmark-integration/benchmark-integration.gradle b/benchmark-integration/benchmark-integration.gradle index eb63a2355f..a88d834973 100644 --- a/benchmark-integration/benchmark-integration.gradle +++ b/benchmark-integration/benchmark-integration.gradle @@ -2,7 +2,7 @@ plugins { id "com.github.johnrengelman.shadow" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" description = 'Integration Level Agent benchmarks.' @@ -11,7 +11,7 @@ targetCompatibility = 1.8 subprojects { sub -> sub.apply plugin: 'com.github.johnrengelman.shadow' - sub.apply from: "$rootDir/gradle/java.gradle" + sub.apply plugin: "otel.java-conventions" javadoc.enabled = false } diff --git a/benchmark/benchmark.gradle b/benchmark/benchmark.gradle index 1991220a9d..1edcb97d53 100644 --- a/benchmark/benchmark.gradle +++ b/benchmark/benchmark.gradle @@ -3,7 +3,7 @@ plugins { id "com.github.johnrengelman.shadow" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { jmh platform(project(":dependencyManagement")) diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index b81cce1c98..b672e266d2 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -44,8 +44,10 @@ dependencies { implementation("org.ow2.asm:asm:7.0-beta") implementation("org.ow2.asm:asm-tree:7.0-beta") implementation("org.apache.httpcomponents:httpclient:4.5.10") + implementation("org.gradle:test-retry-gradle-plugin:1.2.1") // When updating, also update dependencyManagement/dependencyManagement.gradle.kts implementation("net.bytebuddy:byte-buddy-gradle-plugin:1.11.2") + implementation("net.ltgt.gradle:gradle-errorprone-plugin:2.0.1") testImplementation("org.junit.jupiter:junit-jupiter-api:5.7.1") testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.7.1") diff --git a/buildSrc/src/main/kotlin/otel.java-conventions.gradle.kts b/buildSrc/src/main/kotlin/otel.java-conventions.gradle.kts new file mode 100644 index 0000000000..27eb6f9fda --- /dev/null +++ b/buildSrc/src/main/kotlin/otel.java-conventions.gradle.kts @@ -0,0 +1,252 @@ +import java.time.Duration +import org.gradle.api.tasks.testing.logging.TestExceptionFormat + +plugins { + `java-library` + groovy + + id("org.gradle.test-retry") + id("net.ltgt.errorprone") +} + +apply(from = "$rootDir/gradle/spotless.gradle") +apply(from = "$rootDir/gradle/codenarc.gradle") +apply(from = "$rootDir/gradle/checkstyle.gradle") + +afterEvaluate { + if (findProperty("mavenGroupId") == "io.opentelemetry.javaagent.instrumentation") { + base.archivesBaseName = "opentelemetry-javaagent-${base.archivesBaseName}" + } else { + base.archivesBaseName = "opentelemetry-${base.archivesBaseName}" + } +} + +// Version to use to compile code and run tests. +val DEFAULT_JAVA_VERSION = JavaVersion.VERSION_11 + +val applyCodeCoverage = !project.path.run { + startsWith(":smoke-tests") || + startsWith(":benchmark") || + startsWith(":instrumentation") || + startsWith(":testing-common") +} + +if (applyCodeCoverage) { + apply(from = "${rootDir}/gradle/jacoco.gradle") +} + +val minJavaVersionSupported = project.findProperty("minJavaVersionSupported")?.let(JavaVersion::toVersion) + ?: JavaVersion.VERSION_1_8 +val maxJavaVersionForTests = project.findProperty("maxJavaVersionForTests")?.let(JavaVersion::toVersion) + +java { + toolchain { + languageVersion.set(JavaLanguageVersion.of( + Math.max(minJavaVersionSupported.majorVersion.toInt(), DEFAULT_JAVA_VERSION.majorVersion.toInt()))) + } + + // See https://docs.gradle.org/current/userguide/upgrading_version_5.html, Automatic target JVM version + disableAutoTargetJvm() + withJavadocJar() + withSourcesJar() +} + +tasks.withType().configureEach { + with(options) { + release.set(minJavaVersionSupported.majorVersion.toInt()) + compilerArgs.add("-Werror") + } +} + +// Groovy and Scala compilers don't actually understand --release option +tasks.withType().configureEach { + sourceCompatibility = minJavaVersionSupported.majorVersion + targetCompatibility = minJavaVersionSupported.majorVersion +} +tasks.withType().configureEach { + sourceCompatibility = minJavaVersionSupported.majorVersion + targetCompatibility = minJavaVersionSupported.majorVersion +} + +evaluationDependsOn(":dependencyManagement") +val dependencyManagementConf = configurations.create("dependencyManagement") { + isCanBeConsumed = false + isCanBeResolved = false + isVisible = false +} +afterEvaluate { + configurations.configureEach { + if (isCanBeResolved && !isCanBeConsumed) { + extendsFrom(dependencyManagementConf) + } + } +} + +// Force 4.0, or 4.1 to the highest version of that branch. Since 4.0 and 4.1 often have +// compatibility issues we can't just force to the highest version using normal BOM dependencies. +abstract class NettyAlignmentRule : ComponentMetadataRule { + override fun execute(ctx: ComponentMetadataContext) { + with(ctx.details) { + if (id.group == "io.netty" && id.name != "netty") { + if (id.version.startsWith("4.1.")) { + belongsTo("io.netty:netty-bom:4.1.65.Final", false) + } else if (id.version.startsWith("4.0.")) { + belongsTo("io.netty:netty-bom:4.0.56.Final", false) + } + } + } + } +} + +dependencies { + add(dependencyManagementConf.name, platform(project(":dependencyManagement"))) + + components.all() + + compileOnly("org.checkerframework:checker-qual") + + testImplementation("org.junit.jupiter:junit-jupiter-api") + testImplementation("org.junit.jupiter:junit-jupiter-params") + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine") + testRuntimeOnly("org.junit.vintage:junit-vintage-engine") + + testImplementation("org.objenesis:objenesis") + testImplementation("org.spockframework:spock-core") + testImplementation("ch.qos.logback:logback-classic") + testImplementation("org.slf4j:log4j-over-slf4j") + testImplementation("org.slf4j:jcl-over-slf4j") + testImplementation("org.slf4j:jul-to-slf4j") + testImplementation("info.solidsoft.spock:spock-global-unroll") + testImplementation("com.github.stefanbirkner:system-rules") +} + +tasks { + named("jar") { + // By default Gradle Jar task can put multiple files with the same name + // into a Jar. This may lead to confusion. For example if auto-service + // annotation processing creates files with same name in `scala` and + // `java` directory this would result in Jar having two files with the + // same name in it. Which in turn would result in only one of those + // files being actually considered when that Jar is used leading to very + // confusing failures. Instead we should 'fail early' and avoid building such Jars. + duplicatesStrategy = DuplicatesStrategy.FAIL + + manifest { + attributes( + "Implementation-Title" to project.name, + "Implementation-Version" to project.version, + "Implementation-Vendor" to "OpenTelemetry", + "Implementation-URL" to "https://github.com/open-telemetry/opentelemetry-java-instrumentation" + ) + } + } + + named("javadoc") { + with(options as StandardJavadocDocletOptions) { + source = "8" + encoding = "UTF-8" + docEncoding = "UTF-8" + charSet = "UTF-8" + breakIterator(true) + + links("https://docs.oracle.com/javase/8/docs/api/") + + addStringOption("Xdoclint:none", "-quiet") + // non-standard option to fail on warnings, see https://bugs.openjdk.java.net/browse/JDK-8200363 + addStringOption("Xwerror", "-quiet") + } + } + + withType().configureEach { + isPreserveFileTimestamps = false + isReproducibleFileOrder = true + } +} + +normalization { + runtimeClasspath { + metaInf { + ignoreAttribute("Implementation-Version") + } + } +} + +fun isJavaVersionAllowed(version: JavaVersion): Boolean { + if (minJavaVersionSupported.compareTo(version) > 0) { + return false + } + if (maxJavaVersionForTests != null && maxJavaVersionForTests.compareTo(version) < 0) { + return false + } + return true +} + +val testJavaVersion = rootProject.findProperty("testJavaVersion")?.let(JavaVersion::toVersion) +val resourceClassesCsv = listOf("Host", "Os", "Process", "ProcessRuntime").map { "io.opentelemetry.sdk.extension.resources.${it}ResourceProvider" }.joinToString(",") +tasks.withType().configureEach { + useJUnitPlatform() + + // There's no real harm in setting this for all tests even if any happen to not be using context + // propagation. + jvmArgs("-Dio.opentelemetry.context.enableStrictContext=${rootProject.findProperty("enableStrictContext") ?: false}") + // TODO(anuraaga): Have agent map unshaded to shaded. + jvmArgs("-Dio.opentelemetry.javaagent.shaded.io.opentelemetry.context.enableStrictContext=${rootProject.findProperty("enableStrictContext") ?: false}") + + // Disable default resource providers since they cause lots of output we don't need. + jvmArgs("-Dotel.java.disabled.resource.providers=${resourceClassesCsv}") + + val trustStore = project(":testing-common").file("src/misc/testing-keystore.p12") + inputs.file(trustStore) + // Work around payara not working when this is set for some reason. + if (project.name != "jaxrs-2.0-payara-testing") { + jvmArgs("-Djavax.net.ssl.trustStore=${trustStore.absolutePath}") + jvmArgs("-Djavax.net.ssl.trustStorePassword=testing") + } + + // All tests must complete within 15 minutes. + // This value is quite big because with lower values (3 mins) we were experiencing large number of false positives + timeout.set(Duration.ofMinutes(15)) + + retry { + // You can see tests that were retried by this mechanism in the collected test reports and build scans. + maxRetries.set(if (System.getenv("CI") != null) 5 else 0) + } + + reports { + junitXml.isOutputPerTestCase = true + } + + testLogging { + exceptionFormat = TestExceptionFormat.FULL + } + + if (testJavaVersion != null) { + javaLauncher.set(javaToolchains.launcherFor { + languageVersion.set(JavaLanguageVersion.of(testJavaVersion.majorVersion)) + }) + isEnabled = isJavaVersionAllowed(testJavaVersion) + } else { + // We default to testing with Java 11 for most tests, but some tests don't support it, where we change + // the default test task's version so commands like `./gradlew check` can test all projects regardless + // of Java version. + if (!isJavaVersionAllowed(DEFAULT_JAVA_VERSION) && maxJavaVersionForTests != null) { + javaLauncher.set(javaToolchains.launcherFor { + languageVersion.set(JavaLanguageVersion.of(maxJavaVersionForTests.majorVersion)) + }) + } + } +} + +afterEvaluate { + if (plugins.hasPlugin("org.unbroken-dome.test-sets") && configurations.findByName("latestDepTestRuntime") != null) { + tasks.withType().configureEach { + doFirst { + val testArtifacts = configurations.testRuntimeClasspath.get().resolvedConfiguration.resolvedArtifacts + val latestTestArtifacts = configurations.getByName("latestDepTestRuntimeClasspath").resolvedConfiguration.resolvedArtifacts + if (testArtifacts == latestTestArtifacts) { + throw IllegalStateException("latestDepTest dependencies are identical to test") + } + } + } + } +} diff --git a/docs/contributing/writing-instrumentation.md b/docs/contributing/writing-instrumentation.md index 2c6fb7fb49..0be2124a9b 100644 --- a/docs/contributing/writing-instrumentation.md +++ b/docs/contributing/writing-instrumentation.md @@ -155,7 +155,7 @@ from instrumented server or library will be used. Create a module called `compile-stub` and add `compile-stub.gradle` with following content ``` -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" ``` In javaagent module add compile only dependency with ``` diff --git a/gradle/instrumentation-library.gradle b/gradle/instrumentation-library.gradle index 1a58717493..5cfd365f58 100644 --- a/gradle/instrumentation-library.gradle +++ b/gradle/instrumentation-library.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" apply from: "$rootDir/gradle/instrumentation-common.gradle" diff --git a/gradle/instrumentation.gradle b/gradle/instrumentation.gradle index c82ef9e76b..a76e285cdb 100644 --- a/gradle/instrumentation.gradle +++ b/gradle/instrumentation.gradle @@ -10,7 +10,7 @@ ext { noShadowPublish = true } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" if (project.ext.find("skipPublish") != true) { apply from: "$rootDir/gradle/publish.gradle" } diff --git a/gradle/java.gradle b/gradle/java.gradle deleted file mode 100644 index 77488f00ab..0000000000 --- a/gradle/java.gradle +++ /dev/null @@ -1,265 +0,0 @@ -import java.time.Duration - -apply plugin: 'java-library' -apply plugin: 'groovy' -apply plugin: 'org.gradle.test-retry' -apply plugin: 'net.ltgt.errorprone' - -apply from: "$rootDir/gradle/spotless.gradle" -apply from: "$rootDir/gradle/codenarc.gradle" -apply from: "$rootDir/gradle/checkstyle.gradle" - -afterEvaluate { - if (findProperty('mavenGroupId') == 'io.opentelemetry.javaagent.instrumentation') { - archivesBaseName = 'opentelemetry-javaagent-' + archivesBaseName - } else { - archivesBaseName = 'opentelemetry-' + archivesBaseName - } -} - -// Version to use to compile code and run tests. -def DEFAULT_JAVA_VERSION = 11 - -def applyCodeCoverage = !( - project.path.startsWith(":smoke-tests") || - //TODO why some tests fail on java 11 if jacoco is present? - project.path == ":javaagent" || - project.path.startsWith(":benchmark") || - project.path.startsWith(":instrumentation") || - project.path.startsWith(":testing-common")) - -if (applyCodeCoverage) { - apply from: "$rootDir/gradle/jacoco.gradle" -} - -if (project.hasProperty("minJavaVersionSupported")) { - project.ext.release = project.getProperty("minJavaVersionSupported") -} else { - project.ext.release = JavaVersion.VERSION_1_8 -} - -java { - toolchain { - languageVersion = JavaLanguageVersion.of(Math.max(project.ext.release.majorVersion.toInteger(), DEFAULT_JAVA_VERSION)) - } - - // See https://docs.gradle.org/current/userguide/upgrading_version_5.html, Automatic target JVM version - disableAutoTargetJvm() - withJavadocJar() - withSourcesJar() -} - -tasks.withType(JavaCompile).configureEach { - options.release.set(project.ext.release.majorVersion.toInteger()) - options.compilerArgs.add("-Werror") -} -//Groovy and Scala compilers don't actually understand --release option -tasks.withType(GroovyCompile).configureEach { - sourceCompatibility = JavaVersion.toVersion(project.ext.release) - targetCompatibility = JavaVersion.toVersion(project.ext.release) -} -tasks.withType(ScalaCompile).configureEach { - sourceCompatibility = JavaVersion.toVersion(project.ext.release) - targetCompatibility = JavaVersion.toVersion(project.ext.release) -} - -evaluationDependsOn(":dependencyManagement") -configurations { - dependencyManagement { - canBeConsumed = false - canBeResolved = false - visible = false - } -} -afterEvaluate { - configurations.configureEach { - if (canBeResolved && !canBeConsumed) { - extendsFrom(configurations.dependencyManagement) - } - } -} - -// Force 4.0, or 4.1 to the highest version of that branch. Since 4.0 and 4.1 often have -// compatibility issues we can't just force to the highest version using normal BOM dependencies. -abstract class NettyAlignmentRule implements ComponentMetadataRule { - void execute(ComponentMetadataContext ctx) { - ctx.details.with { - if (id.group == "io.netty" && id.name != "netty") { - if (id.version.startsWith("4.1.")) { - belongsTo("io.netty:netty-bom:4.1.65.Final", false) - } else if (id.version.startsWith("4.0.")) { - belongsTo("io.netty:netty-bom:4.0.56.Final", false) - } - } - } - } -} - -dependencies { - dependencyManagement platform(project(":dependencyManagement")) - - components.all(NettyAlignmentRule) - - compileOnly "org.checkerframework:checker-qual" - - testImplementation "org.junit.jupiter:junit-jupiter-api" - testImplementation "org.junit.jupiter:junit-jupiter-params" - testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine" - testRuntimeOnly "org.junit.vintage:junit-vintage-engine" - - testImplementation "org.objenesis:objenesis" - testImplementation "org.spockframework:spock-core" - testImplementation "ch.qos.logback:logback-classic" - testImplementation "org.slf4j:log4j-over-slf4j" - testImplementation "org.slf4j:jcl-over-slf4j" - testImplementation "org.slf4j:jul-to-slf4j" - testImplementation "info.solidsoft.spock:spock-global-unroll" - testImplementation "com.github.stefanbirkner:system-rules" -} - -tasks.named('jar').configure { - /* - Make Jar build fail on duplicate files - - By default Gradle Jar task can put multiple files with the same name - into a Jar. This may lead to confusion. For example if auto-service - annotation processing creates files with same name in `scala` and - `java` directory this would result in Jar having two files with the - same name in it. Which in turn would result in only one of those - files being actually considered when that Jar is used leading to very - confusing failures. - - Instead we should 'fail early' and avoid building such Jars. - */ - duplicatesStrategy = 'fail' - - manifest { - attributes( - "Implementation-Title": project.name, - "Implementation-Version": project.version, - "Implementation-Vendor": "OpenTelemetry", - "Implementation-URL": "https://github.com/open-telemetry/opentelemetry-java-instrumentation", - ) - } -} - -normalization { - runtimeClasspath { - metaInf { - ignoreAttribute("Implementation-Version") - } - } -} - -tasks.named('javadoc').configure { - options.addStringOption('Xdoclint:none', '-quiet') - // non-standard option to fail on warnings, see https://bugs.openjdk.java.net/browse/JDK-8200363 - options.addStringOption('Xwerror', '-quiet') - - doFirst { - if (project.ext.has("apiLinks")) { - options.links(*project.apiLinks) - } - } - source = sourceSets.main.allJava - classpath = configurations.compileClasspath - - options { - encoding = "utf-8" - docEncoding = "utf-8" - charSet = "utf-8" - - setMemberLevel JavadocMemberLevel.PUBLIC - setAuthor true - - links "https://docs.oracle.com/javase/8/docs/api/" - source = 8 - } -} - -project.afterEvaluate { - if (project.plugins.hasPlugin('org.unbroken-dome.test-sets') && configurations.hasProperty("latestDepTestRuntime")) { - tasks.withType(Test).configureEach { - doFirst { - def testArtifacts = configurations.testRuntimeClasspath.resolvedConfiguration.resolvedArtifacts - def latestTestArtifacts = configurations.latestDepTestRuntimeClasspath.resolvedConfiguration.resolvedArtifacts - assert testArtifacts != latestTestArtifacts: "latestDepTest dependencies are identical to test" - } - } - } -} - -def isJavaVersionAllowed(JavaVersion version) { - if (project.hasProperty('minJavaVersionSupported') && project.getProperty('minJavaVersionSupported').compareTo(version) > 0) { - return false - } - if (project.hasProperty('maxJavaVersionForTests') && project.getProperty('maxJavaVersionForTests').compareTo(version) < 0) { - return false - } - return true -} - -def testJavaVersion = rootProject.findProperty('testJavaVersion') -if (testJavaVersion != null) { - def requestedJavaVersion = JavaVersion.toVersion(testJavaVersion) - tasks.withType(Test).configureEach { - javaLauncher = javaToolchains.launcherFor { - languageVersion = JavaLanguageVersion.of(requestedJavaVersion.majorVersion) - } - enabled = isJavaVersionAllowed(requestedJavaVersion) - } -} else { - // We default to testing with Java 11 for most tests, but some tests don't support it, where we change - // the default test task's version so commands like `./gradlew check` can test all projects regardless - // of Java version. - if (!isJavaVersionAllowed(JavaVersion.toVersion(DEFAULT_JAVA_VERSION))) { - tasks.withType(Test).configureEach { - javaLauncher = javaToolchains.launcherFor { - languageVersion = JavaLanguageVersion.of(project.getProperty('maxJavaVersionForTests').majorVersion) - } - } - } -} - -tasks.withType(Test).configureEach { - useJUnitPlatform() - - // All tests must complete within 15 minutes. - // This value is quite big because with lower values (3 mins) we were experiencing large number of false positives - timeout = Duration.ofMinutes(15) - - retry { - // You can see tests that were retried by this mechanism in the collected test reports and build scans. - maxRetries = System.getenv("CI") != null ? 5 : 0 - } - - reports { - junitXml.outputPerTestCase = true - } - - testLogging { - exceptionFormat = 'full' - } - - // There's no real harm in setting this for all tests even if any happen to not be using context - // propagation. - jvmArgs "-Dio.opentelemetry.context.enableStrictContext=${rootProject.findProperty('enableStrictContext') ?: false}" - // TODO(anuraaga): Have agent map unshaded to shaded. - jvmArgs "-Dio.opentelemetry.javaagent.shaded.io.opentelemetry.context.enableStrictContext=${rootProject.findProperty('enableStrictContext') ?: false}" - - def trustStore = project(":testing-common").file("src/misc/testing-keystore.p12") - inputs.file(trustStore) - // Work around payara not working when this is set for some reason. - if (project.name != "jaxrs-2.0-payara-testing") { - jvmArgs "-Djavax.net.ssl.trustStore=${trustStore.absolutePath}" - jvmArgs "-Djavax.net.ssl.trustStorePassword=testing" - } - - def resourceClassesCsv = ['Host', 'Os', 'Process', 'ProcessRuntime'].collect { "io.opentelemetry.sdk.extension.resources.${it}ResourceProvider" }.join(",") - jvmArgs "-Dotel.java.disabled.resource.providers=${resourceClassesCsv}" -} - -tasks.withType(AbstractArchiveTask).configureEach { - preserveFileTimestamps = false - reproducibleFileOrder = true -} diff --git a/instrumentation-api-caching/instrumentation-api-caching.gradle b/instrumentation-api-caching/instrumentation-api-caching.gradle index 69f86c7497..4452e57802 100644 --- a/instrumentation-api-caching/instrumentation-api-caching.gradle +++ b/instrumentation-api-caching/instrumentation-api-caching.gradle @@ -4,7 +4,7 @@ plugins { group = 'io.opentelemetry.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" configurations { diff --git a/instrumentation-api/instrumentation-api.gradle b/instrumentation-api/instrumentation-api.gradle index 0c0d5aeb8d..b09953524a 100644 --- a/instrumentation-api/instrumentation-api.gradle +++ b/instrumentation-api/instrumentation-api.gradle @@ -4,7 +4,7 @@ plugins { group = 'io.opentelemetry.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" def jflexTargetDir = file"${project.buildDir}/generated/jflex/sql" diff --git a/instrumentation/apache-camel-2.20/javaagent-unit-tests/apache-camel-2.20-javaagent-unit-tests.gradle b/instrumentation/apache-camel-2.20/javaagent-unit-tests/apache-camel-2.20-javaagent-unit-tests.gradle index 7709521786..8a24b1f60a 100644 --- a/instrumentation/apache-camel-2.20/javaagent-unit-tests/apache-camel-2.20-javaagent-unit-tests.gradle +++ b/instrumentation/apache-camel-2.20/javaagent-unit-tests/apache-camel-2.20-javaagent-unit-tests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { testImplementation project(':instrumentation:apache-camel-2.20:javaagent') diff --git a/instrumentation/apache-dubbo-2.7/testing/apache-dubbo-2.7-testing.gradle b/instrumentation/apache-dubbo-2.7/testing/apache-dubbo-2.7-testing.gradle index 3611f3c101..c17f36e30e 100644 --- a/instrumentation/apache-dubbo-2.7/testing/apache-dubbo-2.7-testing.gradle +++ b/instrumentation/apache-dubbo-2.7/testing/apache-dubbo-2.7-testing.gradle @@ -2,7 +2,7 @@ plugins { id "java-library" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" def apacheDubboVersion = '2.7.5' diff --git a/instrumentation/armeria-1.3/testing/armeria-1.3-testing.gradle b/instrumentation/armeria-1.3/testing/armeria-1.3-testing.gradle index 55276dff04..c781d46a19 100644 --- a/instrumentation/armeria-1.3/testing/armeria-1.3-testing.gradle +++ b/instrumentation/armeria-1.3/testing/armeria-1.3-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/aws-lambda-1.0/testing/aws-lambda-1.0-testing.gradle b/instrumentation/aws-lambda-1.0/testing/aws-lambda-1.0-testing.gradle index 0df3cbf38e..8e34325e77 100644 --- a/instrumentation/aws-lambda-1.0/testing/aws-lambda-1.0-testing.gradle +++ b/instrumentation/aws-lambda-1.0/testing/aws-lambda-1.0-testing.gradle @@ -14,7 +14,7 @@ * limitations under the License. */ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/aws-sdk/aws-sdk-1.11/javaagent-unit-tests/aws-sdk-1.11-javaagent-unit-tests.gradle b/instrumentation/aws-sdk/aws-sdk-1.11/javaagent-unit-tests/aws-sdk-1.11-javaagent-unit-tests.gradle index d2b0c4fa43..208b78bfc9 100644 --- a/instrumentation/aws-sdk/aws-sdk-1.11/javaagent-unit-tests/aws-sdk-1.11-javaagent-unit-tests.gradle +++ b/instrumentation/aws-sdk/aws-sdk-1.11/javaagent-unit-tests/aws-sdk-1.11-javaagent-unit-tests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/aws-sdk/aws-sdk-1.11/testing/aws-sdk-1.11-testing.gradle b/instrumentation/aws-sdk/aws-sdk-1.11/testing/aws-sdk-1.11-testing.gradle index 2ae6bd1139..0c284bd322 100644 --- a/instrumentation/aws-sdk/aws-sdk-1.11/testing/aws-sdk-1.11-testing.gradle +++ b/instrumentation/aws-sdk/aws-sdk-1.11/testing/aws-sdk-1.11-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/aws-sdk/aws-sdk-2.2/testing/aws-sdk-2.2-testing.gradle b/instrumentation/aws-sdk/aws-sdk-2.2/testing/aws-sdk-2.2-testing.gradle index 184118337a..93c2e6ff99 100644 --- a/instrumentation/aws-sdk/aws-sdk-2.2/testing/aws-sdk-2.2-testing.gradle +++ b/instrumentation/aws-sdk/aws-sdk-2.2/testing/aws-sdk-2.2-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/couchbase/couchbase-2.0/javaagent-unit-tests/couchbase-2.0-javaagent-unittests.gradle b/instrumentation/couchbase/couchbase-2.0/javaagent-unit-tests/couchbase-2.0-javaagent-unittests.gradle index a23cdc0863..c108287356 100644 --- a/instrumentation/couchbase/couchbase-2.0/javaagent-unit-tests/couchbase-2.0-javaagent-unittests.gradle +++ b/instrumentation/couchbase/couchbase-2.0/javaagent-unit-tests/couchbase-2.0-javaagent-unittests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { testImplementation "org.codehaus.groovy:groovy-all" diff --git a/instrumentation/couchbase/couchbase-testing/couchbase-testing.gradle b/instrumentation/couchbase/couchbase-testing/couchbase-testing.gradle index 9fdf10bd14..c4aaec8076 100644 --- a/instrumentation/couchbase/couchbase-testing/couchbase-testing.gradle +++ b/instrumentation/couchbase/couchbase-testing/couchbase-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/external-annotations/javaagent-unit-tests/external-annotations-javaagent-unittests.gradle b/instrumentation/external-annotations/javaagent-unit-tests/external-annotations-javaagent-unittests.gradle index 21a2cc0a66..ec9f23c982 100644 --- a/instrumentation/external-annotations/javaagent-unit-tests/external-annotations-javaagent-unittests.gradle +++ b/instrumentation/external-annotations/javaagent-unit-tests/external-annotations-javaagent-unittests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { testImplementation project(':instrumentation-api') diff --git a/instrumentation/grpc-1.6/testing/grpc-1.6-testing.gradle b/instrumentation/grpc-1.6/testing/grpc-1.6-testing.gradle index 43a1a54b63..b57ec29e55 100644 --- a/instrumentation/grpc-1.6/testing/grpc-1.6-testing.gradle +++ b/instrumentation/grpc-1.6/testing/grpc-1.6-testing.gradle @@ -3,7 +3,7 @@ plugins { id "com.google.protobuf" version "0.8.16" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" def grpcVersion = '1.6.0' diff --git a/instrumentation/instrumentation.gradle b/instrumentation/instrumentation.gradle index 0c0b546023..981955ba25 100644 --- a/instrumentation/instrumentation.gradle +++ b/instrumentation/instrumentation.gradle @@ -2,7 +2,7 @@ plugins { id "otel.shadow-conventions" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" Project instr_project = project subprojects { diff --git a/instrumentation/internal/internal-proxy/javaagent-unit-tests/internal-proxy-javaagent-unit-tests.gradle b/instrumentation/internal/internal-proxy/javaagent-unit-tests/internal-proxy-javaagent-unit-tests.gradle index cbca11de1f..83c781ec66 100644 --- a/instrumentation/internal/internal-proxy/javaagent-unit-tests/internal-proxy-javaagent-unit-tests.gradle +++ b/instrumentation/internal/internal-proxy/javaagent-unit-tests/internal-proxy-javaagent-unit-tests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { testImplementation project(':instrumentation:internal:internal-proxy:javaagent') 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 8e58983e9c..510d30eab4 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 @@ -1,7 +1,7 @@ ext { skipPublish = true } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" // add repo for org.gradle:gradle-tooling-api which org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-gradle-depchain depends on repositories { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-testing/jaxrs-2.0-testing.gradle b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-testing/jaxrs-2.0-testing.gradle index 603ec4a7a7..a4edd120ef 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-testing/jaxrs-2.0-testing.gradle +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-testing/jaxrs-2.0-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/jaxws/jaxws-2.0-testing/jaxws-2.0-testing.gradle b/instrumentation/jaxws/jaxws-2.0-testing/jaxws-2.0-testing.gradle index bca68587fc..c0b4d78692 100644 --- a/instrumentation/jaxws/jaxws-2.0-testing/jaxws-2.0-testing.gradle +++ b/instrumentation/jaxws/jaxws-2.0-testing/jaxws-2.0-testing.gradle @@ -2,7 +2,7 @@ plugins { id "org.unbroken-dome.xjc" version "2.0.0" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" checkstyle { // exclude generated web service classes diff --git a/instrumentation/jdbc/javaagent-unit-tests/jdbc-javaagent-unit-tests.gradle b/instrumentation/jdbc/javaagent-unit-tests/jdbc-javaagent-unit-tests.gradle index efd4747e67..a3436089d9 100644 --- a/instrumentation/jdbc/javaagent-unit-tests/jdbc-javaagent-unit-tests.gradle +++ b/instrumentation/jdbc/javaagent-unit-tests/jdbc-javaagent-unit-tests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { testImplementation project(':instrumentation:jdbc:javaagent') diff --git a/instrumentation/jms-1.1/javaagent-unit-tests/jms-1.1-javaagent-unit-tests.gradle b/instrumentation/jms-1.1/javaagent-unit-tests/jms-1.1-javaagent-unit-tests.gradle index df3a0ec130..4ced74b6cd 100644 --- a/instrumentation/jms-1.1/javaagent-unit-tests/jms-1.1-javaagent-unit-tests.gradle +++ b/instrumentation/jms-1.1/javaagent-unit-tests/jms-1.1-javaagent-unit-tests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { testImplementation "javax.jms:jms-api:1.1-rev-1" diff --git a/instrumentation/jsf/jsf-testing-common/jsf-testing-common.gradle b/instrumentation/jsf/jsf-testing-common/jsf-testing-common.gradle index af3c6b295d..e05805aab9 100644 --- a/instrumentation/jsf/jsf-testing-common/jsf-testing-common.gradle +++ b/instrumentation/jsf/jsf-testing-common/jsf-testing-common.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api "ch.qos.logback:logback-classic" diff --git a/instrumentation/kubernetes-client-7.0/javaagent-unit-tests/kubernetes-client-7.0-javaagent-unit-tests.gradle b/instrumentation/kubernetes-client-7.0/javaagent-unit-tests/kubernetes-client-7.0-javaagent-unit-tests.gradle index 731e35ff41..be04c8dbba 100644 --- a/instrumentation/kubernetes-client-7.0/javaagent-unit-tests/kubernetes-client-7.0-javaagent-unit-tests.gradle +++ b/instrumentation/kubernetes-client-7.0/javaagent-unit-tests/kubernetes-client-7.0-javaagent-unit-tests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { testImplementation project(':instrumentation:kubernetes-client-7.0:javaagent') diff --git a/instrumentation/lettuce/lettuce-5.1/testing/lettuce-5.1-testing.gradle b/instrumentation/lettuce/lettuce-5.1/testing/lettuce-5.1-testing.gradle index 78db061f5f..55c3f68ada 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/lettuce-5.1-testing.gradle +++ b/instrumentation/lettuce/lettuce-5.1/testing/lettuce-5.1-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/lettuce/lettuce-common/library/lettuce-common-library.gradle b/instrumentation/lettuce/lettuce-common/library/lettuce-common-library.gradle index 619caee4eb..4cc95bf818 100644 --- a/instrumentation/lettuce/lettuce-common/library/lettuce-common-library.gradle +++ b/instrumentation/lettuce/lettuce-common/library/lettuce-common-library.gradle @@ -3,7 +3,7 @@ ext.mavenGroupId = 'io.opentelemetry.javaagent.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" archivesBaseName = projectDir.parentFile.name diff --git a/instrumentation/liberty/compile-stub/compile-stub.gradle b/instrumentation/liberty/compile-stub/compile-stub.gradle index 8ba00a1cc8..b1a8285153 100644 --- a/instrumentation/liberty/compile-stub/compile-stub.gradle +++ b/instrumentation/liberty/compile-stub/compile-stub.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" // liberty jars are not available as a maven dependency so we provide stripped // down versions of liberty classes that we can use from integration code without diff --git a/instrumentation/log4j/log4j-2-testing/log4j-2-testing.gradle b/instrumentation/log4j/log4j-2-testing/log4j-2-testing.gradle index 5e779d15f7..48684d6841 100644 --- a/instrumentation/log4j/log4j-2-testing/log4j-2-testing.gradle +++ b/instrumentation/log4j/log4j-2-testing/log4j-2-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/logback-1.0/testing/logback-1.0-testing.gradle b/instrumentation/logback-1.0/testing/logback-1.0-testing.gradle index e20a2a0e8e..33e6465a39 100644 --- a/instrumentation/logback-1.0/testing/logback-1.0-testing.gradle +++ b/instrumentation/logback-1.0/testing/logback-1.0-testing.gradle @@ -14,7 +14,7 @@ * limitations under the License. */ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { compileOnly project(":instrumentation:logback-1.0:library") diff --git a/instrumentation/mongo/mongo-3.1/testing/mongo-3.1-testing.gradle b/instrumentation/mongo/mongo-3.1/testing/mongo-3.1-testing.gradle index f3a4edb293..2bca350e99 100644 --- a/instrumentation/mongo/mongo-3.1/testing/mongo-3.1-testing.gradle +++ b/instrumentation/mongo/mongo-3.1/testing/mongo-3.1-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':instrumentation:mongo:mongo-testing') diff --git a/instrumentation/mongo/mongo-testing/mongo-testing.gradle b/instrumentation/mongo/mongo-testing/mongo-testing.gradle index 3361b40fb9..3840c1e220 100644 --- a/instrumentation/mongo/mongo-testing/mongo-testing.gradle +++ b/instrumentation/mongo/mongo-testing/mongo-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/okhttp/okhttp-3.0/testing/okhttp-3.0-testing.gradle b/instrumentation/okhttp/okhttp-3.0/testing/okhttp-3.0-testing.gradle index 563ed6e59e..da8c85dd06 100644 --- a/instrumentation/okhttp/okhttp-3.0/testing/okhttp-3.0-testing.gradle +++ b/instrumentation/okhttp/okhttp-3.0/testing/okhttp-3.0-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api(project(':testing-common')) { diff --git a/instrumentation/play-ws/play-ws-testing/play-ws-testing.gradle b/instrumentation/play-ws/play-ws-testing/play-ws-testing.gradle index bd14136a83..26a149d8eb 100644 --- a/instrumentation/play-ws/play-ws-testing/play-ws-testing.gradle +++ b/instrumentation/play-ws/play-ws-testing/play-ws-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" def scalaVersion = '2.12' diff --git a/instrumentation/reactor-3.1/testing/reactor-3.1-testing.gradle b/instrumentation/reactor-3.1/testing/reactor-3.1-testing.gradle index 530ea0a09b..376198eb03 100644 --- a/instrumentation/reactor-3.1/testing/reactor-3.1-testing.gradle +++ b/instrumentation/reactor-3.1/testing/reactor-3.1-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/rmi/javaagent/rmi-javaagent.gradle b/instrumentation/rmi/javaagent/rmi-javaagent.gradle index e0c812a9f1..aab1e6166c 100644 --- a/instrumentation/rmi/javaagent/rmi-javaagent.gradle +++ b/instrumentation/rmi/javaagent/rmi-javaagent.gradle @@ -27,8 +27,8 @@ test.dependsOn rmic // We also can't seem to use the toolchain without the "--release" option. So disable everything. java { - sourceCompatibility = JavaVersion.toVersion(project.ext.release) - targetCompatibility = JavaVersion.toVersion(project.ext.release) + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 toolchain { languageVersion = null } diff --git a/instrumentation/rocketmq-client-4.8/testing/rocketmq-client-4.8-testing.gradle b/instrumentation/rocketmq-client-4.8/testing/rocketmq-client-4.8-testing.gradle index bf19aef70d..26a3354c9e 100644 --- a/instrumentation/rocketmq-client-4.8/testing/rocketmq-client-4.8-testing.gradle +++ b/instrumentation/rocketmq-client-4.8/testing/rocketmq-client-4.8-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/rxjava/rxjava-2.0/testing/rxjava-2.0-testing.gradle b/instrumentation/rxjava/rxjava-2.0/testing/rxjava-2.0-testing.gradle index 1e4f566478..74aaba1de2 100644 --- a/instrumentation/rxjava/rxjava-2.0/testing/rxjava-2.0-testing.gradle +++ b/instrumentation/rxjava/rxjava-2.0/testing/rxjava-2.0-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/rxjava/rxjava-3.0/testing/rxjava-3.0-testing.gradle b/instrumentation/rxjava/rxjava-3.0/testing/rxjava-3.0-testing.gradle index ef071e0d3f..fcace56e2f 100644 --- a/instrumentation/rxjava/rxjava-3.0/testing/rxjava-3.0-testing.gradle +++ b/instrumentation/rxjava/rxjava-3.0/testing/rxjava-3.0-testing.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { api project(':testing-common') diff --git a/instrumentation/spring/spring-boot-autoconfigure/spring-boot-autoconfigure.gradle b/instrumentation/spring/spring-boot-autoconfigure/spring-boot-autoconfigure.gradle index ff30bb8b5b..b499f0c57f 100644 --- a/instrumentation/spring/spring-boot-autoconfigure/spring-boot-autoconfigure.gradle +++ b/instrumentation/spring/spring-boot-autoconfigure/spring-boot-autoconfigure.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" sourceCompatibility = '8' diff --git a/instrumentation/spring/starters/jaeger-exporter-starter/jaeger-exporter-starter.gradle b/instrumentation/spring/starters/jaeger-exporter-starter/jaeger-exporter-starter.gradle index 544fcd5dbd..925eccf9b5 100644 --- a/instrumentation/spring/starters/jaeger-exporter-starter/jaeger-exporter-starter.gradle +++ b/instrumentation/spring/starters/jaeger-exporter-starter/jaeger-exporter-starter.gradle @@ -4,7 +4,7 @@ ext { group = 'io.opentelemetry.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" sourceCompatibility = '8' diff --git a/instrumentation/spring/starters/otlp-exporter-starter/otlp-exporter-starter.gradle b/instrumentation/spring/starters/otlp-exporter-starter/otlp-exporter-starter.gradle index dec812f674..2bfc0e731e 100644 --- a/instrumentation/spring/starters/otlp-exporter-starter/otlp-exporter-starter.gradle +++ b/instrumentation/spring/starters/otlp-exporter-starter/otlp-exporter-starter.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" sourceCompatibility = '8' diff --git a/instrumentation/spring/starters/spring-starter/spring-starter.gradle b/instrumentation/spring/starters/spring-starter/spring-starter.gradle index a744787eca..8bb99c0f2b 100644 --- a/instrumentation/spring/starters/spring-starter/spring-starter.gradle +++ b/instrumentation/spring/starters/spring-starter/spring-starter.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" sourceCompatibility = '8' diff --git a/instrumentation/spring/starters/zipkin-exporter-starter/zipkin-exporter-starter.gradle b/instrumentation/spring/starters/zipkin-exporter-starter/zipkin-exporter-starter.gradle index 9b5aaae5cf..6bf33998fe 100644 --- a/instrumentation/spring/starters/zipkin-exporter-starter/zipkin-exporter-starter.gradle +++ b/instrumentation/spring/starters/zipkin-exporter-starter/zipkin-exporter-starter.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.instrumentation' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" sourceCompatibility = '8' diff --git a/instrumentation/vaadin-14.2/testing/vaadin-14.2-testing.gradle b/instrumentation/vaadin-14.2/testing/vaadin-14.2-testing.gradle index 07ef751db3..2c1f53b119 100644 --- a/instrumentation/vaadin-14.2/testing/vaadin-14.2-testing.gradle +++ b/instrumentation/vaadin-14.2/testing/vaadin-14.2-testing.gradle @@ -2,7 +2,7 @@ ext { skipPublish = true } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { compileOnly 'com.vaadin:vaadin-spring-boot-starter:14.2.0' diff --git a/javaagent-api/javaagent-api.gradle b/javaagent-api/javaagent-api.gradle index 0689448730..16827c26ec 100644 --- a/javaagent-api/javaagent-api.gradle +++ b/javaagent-api/javaagent-api.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" project.ext.minimumBranchCoverage = 0.0 diff --git a/javaagent-bootstrap-tests/javaagent-bootstrap-tests.gradle b/javaagent-bootstrap-tests/javaagent-bootstrap-tests.gradle index c1ca1ab6d0..843da4c6c0 100644 --- a/javaagent-bootstrap-tests/javaagent-bootstrap-tests.gradle +++ b/javaagent-bootstrap-tests/javaagent-bootstrap-tests.gradle @@ -1,4 +1,4 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { // For testing javaagent-bootstrap's Caffeine patch, we need to compile against our cache API diff --git a/javaagent-bootstrap/javaagent-bootstrap.gradle b/javaagent-bootstrap/javaagent-bootstrap.gradle index 69f1b899ec..4c34bf87f0 100644 --- a/javaagent-bootstrap/javaagent-bootstrap.gradle +++ b/javaagent-bootstrap/javaagent-bootstrap.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" // FIXME: Improve test coverage. diff --git a/javaagent-exporters/javaagent-exporters.gradle b/javaagent-exporters/javaagent-exporters.gradle index ed080ef23f..785fcbf1aa 100644 --- a/javaagent-exporters/javaagent-exporters.gradle +++ b/javaagent-exporters/javaagent-exporters.gradle @@ -1,11 +1,10 @@ // Project to collect and shade exporter dependencies included in the agent's full distribution. plugins { + id "otel.java-conventions" id "otel.shadow-conventions" } -apply from: "$rootDir/gradle/java.gradle" - dependencies { implementation "io.opentelemetry:opentelemetry-exporter-jaeger" implementation "io.opentelemetry:opentelemetry-exporter-otlp" diff --git a/javaagent-extension-api/javaagent-extension-api.gradle b/javaagent-extension-api/javaagent-extension-api.gradle index ed6a1be6e9..a4474c9669 100644 --- a/javaagent-extension-api/javaagent-extension-api.gradle +++ b/javaagent-extension-api/javaagent-extension-api.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" // TODO this is not the desired state, only reflects current reality diff --git a/javaagent-tooling/javaagent-tooling.gradle b/javaagent-tooling/javaagent-tooling.gradle index f070f93dbc..691d8e1091 100644 --- a/javaagent-tooling/javaagent-tooling.gradle +++ b/javaagent-tooling/javaagent-tooling.gradle @@ -1,6 +1,6 @@ group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" // TODO this is not the desired state, only reflects current reality diff --git a/javaagent/javaagent.gradle b/javaagent/javaagent.gradle index a6dfd14cc8..c8c6c29a30 100644 --- a/javaagent/javaagent.gradle +++ b/javaagent/javaagent.gradle @@ -11,7 +11,7 @@ description = 'OpenTelemetry Javaagent' group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" configurations { diff --git a/opentelemetry-api-shaded-for-instrumenting/opentelemetry-api-shaded-for-instrumenting.gradle b/opentelemetry-api-shaded-for-instrumenting/opentelemetry-api-shaded-for-instrumenting.gradle index dbbba856d8..faad7dd456 100644 --- a/opentelemetry-api-shaded-for-instrumenting/opentelemetry-api-shaded-for-instrumenting.gradle +++ b/opentelemetry-api-shaded-for-instrumenting/opentelemetry-api-shaded-for-instrumenting.gradle @@ -2,7 +2,7 @@ plugins { id "com.github.johnrengelman.shadow" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { implementation "io.opentelemetry:opentelemetry-api" diff --git a/opentelemetry-ext-annotations-shaded-for-instrumenting/opentelemetry-ext-annotations-shaded-for-instrumenting.gradle b/opentelemetry-ext-annotations-shaded-for-instrumenting/opentelemetry-ext-annotations-shaded-for-instrumenting.gradle index 3058fbcf9a..a00d1c1f47 100644 --- a/opentelemetry-ext-annotations-shaded-for-instrumenting/opentelemetry-ext-annotations-shaded-for-instrumenting.gradle +++ b/opentelemetry-ext-annotations-shaded-for-instrumenting/opentelemetry-ext-annotations-shaded-for-instrumenting.gradle @@ -2,7 +2,7 @@ plugins { id "com.github.johnrengelman.shadow" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { implementation "io.opentelemetry:opentelemetry-extension-annotations" diff --git a/settings.gradle b/settings.gradle index c4cd34d482..c4da52dc5e 100644 --- a/settings.gradle +++ b/settings.gradle @@ -4,12 +4,10 @@ pluginManagement { id 'com.github.ben-manes.versions' version '0.27.0' id "io.github.gradle-nexus.publish-plugin" version "1.0.0" id "me.champeau.jmh" version "0.6.4" - id "net.ltgt.errorprone" version "1.3.0" id "net.ltgt.nullaway" version "1.1.0" id 'org.jetbrains.kotlin.jvm' version '1.5.10' id 'org.unbroken-dome.test-sets' version '4.0.0' id "nebula.release" version "15.3.0" - id 'org.gradle.test-retry' version '1.2.0' } } diff --git a/smoke-tests/smoke-tests.gradle b/smoke-tests/smoke-tests.gradle index 017dd19796..20310efd01 100644 --- a/smoke-tests/smoke-tests.gradle +++ b/smoke-tests/smoke-tests.gradle @@ -8,7 +8,7 @@ ext { maxJavaVersionForTests = JavaVersion.VERSION_11 } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" description = 'smoke-tests' diff --git a/testing-common/library-for-integration-tests/library-for-integration-tests.gradle b/testing-common/library-for-integration-tests/library-for-integration-tests.gradle index 5e69c67bd7..8b761a00dc 100644 --- a/testing-common/library-for-integration-tests/library-for-integration-tests.gradle +++ b/testing-common/library-for-integration-tests/library-for-integration-tests.gradle @@ -1 +1 @@ -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" diff --git a/testing-common/testing-common.gradle b/testing-common/testing-common.gradle index b4dba55769..144ae9949a 100644 --- a/testing-common/testing-common.gradle +++ b/testing-common/testing-common.gradle @@ -1,7 +1,7 @@ description = 'OpenTelemetry Javaagent testing commons' group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" dependencies { diff --git a/testing/agent-exporter/agent-exporter.gradle b/testing/agent-exporter/agent-exporter.gradle index 6c94a3910e..e575313d37 100644 --- a/testing/agent-exporter/agent-exporter.gradle +++ b/testing/agent-exporter/agent-exporter.gradle @@ -2,7 +2,7 @@ plugins { id "otel.shadow-conventions" } -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" dependencies { compileOnly("net.bytebuddy:byte-buddy") diff --git a/testing/agent-for-testing/agent-for-testing.gradle b/testing/agent-for-testing/agent-for-testing.gradle index 7f6ad5817c..56a98fe414 100644 --- a/testing/agent-for-testing/agent-for-testing.gradle +++ b/testing/agent-for-testing/agent-for-testing.gradle @@ -5,7 +5,7 @@ plugins { description = 'OpenTelemetry Javaagent for testing' group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" jar { diff --git a/testing/armeria-shaded-for-testing/armeria-shaded-for-testing.gradle b/testing/armeria-shaded-for-testing/armeria-shaded-for-testing.gradle index d8dff294e3..b21cd7d3e3 100644 --- a/testing/armeria-shaded-for-testing/armeria-shaded-for-testing.gradle +++ b/testing/armeria-shaded-for-testing/armeria-shaded-for-testing.gradle @@ -4,7 +4,7 @@ plugins { group = 'io.opentelemetry.javaagent' -apply from: "$rootDir/gradle/java.gradle" +apply plugin: "otel.java-conventions" apply from: "$rootDir/gradle/publish.gradle" dependencies {