123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- import com.github.jk1.license.render.InventoryMarkdownReportRenderer
- plugins {
- id "com.github.jk1.dependency-license-report" version "1.16"
- }
- group = 'io.opentelemetry.javaagent'
- apply from: "$rootDir/gradle/java.gradle"
- apply from: "$rootDir/gradle/publish.gradle"
- // TODO this is not the desired state, only reflects current reality
- minimumBranchCoverage = 0
- minimumInstructionCoverage = 0
- configurations {
- // classpath used by the instrumentation muzzle plugin
- instrumentationMuzzle {
- canBeConsumed = true
- canBeResolved = false
- extendsFrom implementation
- }
- }
- dependencies {
- implementation project(':javaagent-bootstrap')
- implementation project(':javaagent-spi')
- implementation project(':javaagent-api')
- implementation project(':instrumentation-api')
- implementation deps.opentelemetryApi
- implementation deps.opentelemetryApiMetrics
- implementation deps.opentelemetryContext
- implementation deps.opentelemetrySdk
- implementation deps.opentelemetrySdkAutoconfigure
- implementation deps.opentelemetrySdkMetrics
- implementation (deps.opentelemetryKotlin) {
- // opentelemetry-extension-kotlin classes are injected into user classpath
- // where kotlin core libraries are already present
- exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib-common'
- exclude group: 'org.jetbrains.kotlinx', module: 'kotlinx-coroutines-core'
- }
- implementation deps.opentelemetryExtAws
- implementation deps.opentelemetryTraceProps
- implementation(deps.opentelemetryResources) {
- // exclude sdk-common to avoid bumping guava version
- exclude group: 'io.opentelemetry', module: 'opentelemetry-sdk-common'
- }
- implementation deps.opentelemetryJaeger
- implementation deps.opentelemetryLogging
- implementation deps.opentelemetryOtlp
- implementation deps.opentelemetryOtlpMetrics
- implementation deps.opentelemetryPrometheus
- implementation deps.opentelemetryZipkin
- implementation group: 'com.blogspot.mydailyjava', name: 'weak-lock-free', version: '0.15'
- implementation deps.bytebuddy
- implementation deps.bytebuddyagent
- annotationProcessor deps.autoservice
- implementation deps.autoservice
- implementation deps.slf4j
- implementation group: 'io.grpc', name: 'grpc-netty', version: '1.34.1'
- testImplementation project(':testing-common')
- testImplementation group: 'org.assertj', name: 'assertj-core', version: '3.18.1'
- testImplementation group: 'org.mockito', name: 'mockito-core', version: '3.6.0'
- instrumentationMuzzle sourceSets.main.output
- }
- test {
- filter {
- excludeTestsMatching 'HelperInjectionTest'
- }
- }
- // Needs a fresh classloader.
- // https://github.com/open-telemetry/opentelemetry-java-instrumentation/issues/919
- test.finalizedBy(tasks.register('testHelperInjection', Test) {
- filter {
- includeTestsMatching 'HelperInjectionTest'
- }
- })
- licenseReport {
- outputDir = rootProject.file("licenses")
- renderers = [new InventoryMarkdownReportRenderer()]
- configurations = ["compileClasspath"]
- excludeGroups = [
- "io.opentelemetry.instrumentation",
- "io.opentelemetry.javaagent"
- ]
- }
- def cleanLicenses = tasks.register("cleanLicenses", Delete) {
- delete(rootProject.file("licenses"))
- }
- tasks.named("generateLicenseReport").configure {
- dependsOn(cleanLicenses)
- }
|