opentelemetry-java-instrume.../gradle/dependencies.gradle

112 lines
7.6 KiB
Groovy

def groovyVer = "2.5.11"
def spockGroovyVer = groovyVer.replaceAll(/\.\d+$/, '')
// this is only needed for the working against unreleased otel-java snapshots
configurations.all {
resolutionStrategy.cacheChangingModulesFor 12, 'hours'
}
ext {
versions = [
opentelemetry : '1.0.0',
opentelemetryAlpha: "1.0.0-alpha",
slf4j : "1.7.30",
guava : "30.1-jre",
spock : "1.3-groovy-$spockGroovyVer",
groovy : groovyVer,
logback : "1.2.3",
bytebuddy : "1.10.18", // Also explicitly specified in buildSrc
scala : "2.11.12", // Last version to support Java 7 (2.12+ require Java 8+)
kotlin : "1.4.0",
coroutines : "1.3.0",
springboot : "2.3.1.RELEASE",
junit5 : "5.7.1",
checkerFramework : "3.6.1",
errorprone : "2.4.0",
nullaway : "0.8.0",
autoValue : "1.7.4",
systemLambda : "1.1.0",
prometheus : "0.9.0",
assertj : '3.19.0',
awaitility : '4.0.3',
mockito : '3.6.0',
// Caffeine 2.x to support Java 8+. 3.x is 11+.
caffeine : '2.9.0',
testcontainers : '1.15.2'
]
deps = [
// OpenTelemetry
opentelemetryApi : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-api', version: versions.opentelemetry),
opentelemetryApiMetrics : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-api-metrics', version: versions.opentelemetryAlpha),
opentelemetryExtAnnotations : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-extension-annotations', version: versions.opentelemetry),
opentelemetryExtAws : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-extension-aws', version: versions.opentelemetry),
opentelemetryContext : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-context', version: versions.opentelemetry),
opentelemetryKotlin : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-extension-kotlin', version: versions.opentelemetry),
opentelemetryLogging : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-logging', version: versions.opentelemetry),
opentelemetryTraceProps : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-extension-trace-propagators', version: versions.opentelemetry),
opentelemetrySdk : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-sdk', version: versions.opentelemetry),
opentelemetrySdkAutoconfigure: dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-sdk-extension-autoconfigure', version: versions.opentelemetryAlpha),
opentelemetrySdkMetrics : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-sdk-metrics', version: versions.opentelemetryAlpha),
opentelemetryJaeger : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-jaeger', version: versions.opentelemetry),
opentelemetryOtlp : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-otlp', version: versions.opentelemetry),
opentelemetryOtlpMetrics : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-otlp-metrics', version: versions.opentelemetryAlpha),
opentelemetryZipkin : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-zipkin', version: versions.opentelemetry),
opentelemetryPrometheus : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-prometheus', version: versions.opentelemetryAlpha),
opentelemetryLogging : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-exporter-logging', version: versions.opentelemetry),
opentelemetryProto : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-proto', version: versions.opentelemetryAlpha),
opentelemetryResources : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-sdk-extension-resources', version: versions.opentelemetry),
opentelemetrySdkTesting : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-sdk-testing', version: versions.opentelemetry),
opentelemetrySemConv : dependencies.create(group: 'io.opentelemetry', name: 'opentelemetry-semconv', version: versions.opentelemetryAlpha),
// General
slf4j : "org.slf4j:slf4j-api:${versions.slf4j}",
guava : "com.google.guava:guava:$versions.guava",
bytebuddy : dependencies.create(group: 'net.bytebuddy', name: 'byte-buddy', version: "${versions.bytebuddy}"),
bytebuddyagent : dependencies.create(group: 'net.bytebuddy', name: 'byte-buddy-agent', version: "${versions.bytebuddy}"),
autoservice : [
dependencies.create(group: 'com.google.auto.service', name: 'auto-service', version: '1.0-rc7'),
dependencies.create(group: 'com.google.auto', name: 'auto-common', version: '0.8'),
],
autoValueAnnotations : "com.google.auto.value:auto-value-annotations:${versions.autoValue}",
// annotation processor
autoValue : "com.google.auto.value:auto-value:${versions.autoValue}",
prometheus : [
dependencies.create(group: 'io.prometheus', name: 'simpleclient', version: "${versions.prometheus}"),
dependencies.create(group: 'io.prometheus', name: 'simpleclient_httpserver', version: "${versions.prometheus}"),
],
caffeine : "com.github.ben-manes.caffeine:caffeine:${versions.caffeine}",
// Testing
spock : [
dependencies.create("org.spockframework:spock-core:${versions.spock}", {
exclude group: 'org.codehaus.groovy', module: 'groovy-all'
}),
// Used by Spock for mocking:
dependencies.create(group: 'org.objenesis', name: 'objenesis', version: '3.1')
],
groovy : "org.codehaus.groovy:groovy-all:${versions.groovy}",
systemLambda : "com.github.stefanbirkner:system-lambda:${versions.systemLambda}",
testcontainers : "org.testcontainers:testcontainers:${versions.testcontainers}",
testLogging : [
dependencies.create(group: 'ch.qos.logback', name: 'logback-classic', version: versions.logback),
dependencies.create(group: 'org.slf4j', name: 'log4j-over-slf4j', version: versions.slf4j),
dependencies.create(group: 'org.slf4j', name: 'jcl-over-slf4j', version: versions.slf4j),
dependencies.create(group: 'org.slf4j', name: 'jul-to-slf4j', version: versions.slf4j),
],
scala : dependencies.create(group: 'org.scala-lang', name: 'scala-library', version: "${versions.scala}"),
kotlin : dependencies.create(group: 'org.jetbrains.kotlin', name: 'kotlin-stdlib', version: "${versions.kotlin}"),
coroutines : dependencies.create(group: 'org.jetbrains.kotlinx', name: 'kotlinx-coroutines-core', version: "${versions.coroutines}"),
junitApi : "org.junit.jupiter:junit-jupiter-api:${versions.junit5}",
assertj : "org.assertj:assertj-core:${versions.assertj}",
awaitility : "org.awaitility:awaitility:${versions.awaitility}",
mockito : [
"org.mockito:mockito-core:${versions.mockito}",
"org.mockito:mockito-junit-jupiter:${versions.mockito}"
]
]
}