forked from open-telemetry/opentelemetry-android
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuild.gradle.kts
More file actions
85 lines (73 loc) · 2.63 KB
/
Copy pathbuild.gradle.kts
File metadata and controls
85 lines (73 loc) · 2.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
plugins {
id("otel.android-library-conventions")
id("otel.publish-conventions")
}
android {
namespace = "io.opentelemetry.android"
defaultConfig {
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
buildConfigField("String", "OTEL_ANDROID_VERSION", "\"$version\"")
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro",
)
}
}
androidComponents {
onVariants {
if (it.buildType == "release") { // The one we choose to release
project.tasks.register("createReleaseBuild", Copy::class) {
from(it.artifacts.get(com.android.build.api.artifact.SingleArtifact.AAR))
into(project.layout.buildDirectory.dir("outputs/aar"))
rename(".+", "opentelemetry-android.aar")
}
}
}
}
project.afterEvaluate {
tasks.named("assembleRelease") {
finalizedBy("createReleaseBuild")
}
}
testOptions {
unitTests.isReturnDefaultValues = true
unitTests.isIncludeAndroidResources = true
}
buildFeatures {
buildConfig = true
}
sourceSets {
getByName("test") {
kotlin.directories.add("src/integrationTest/kotlin")
}
}
}
dependencies {
api(platform(libs.opentelemetry.platform.alpha)) // Required for sonatype publishing
implementation(project(":agent-api"))
implementation(project(":instrumentation:android-instrumentation"))
implementation(project(":common"))
implementation(project(":semconv"))
implementation(project(":services"))
implementation(project(":session"))
implementation(libs.opentelemetry.sdk)
implementation(libs.opentelemetry.exporter.logging)
implementation(libs.opentelemetry.instrumentation.api)
implementation(libs.opentelemetry.semconv.kotlin)
implementation(libs.opentelemetry.diskBuffering)
implementation(libs.opentelemetry.processors)
implementation(libs.kotlinx.coroutines)
testImplementation(project(":test-common"))
testImplementation(libs.androidx.test.core)
testImplementation(libs.awaitility)
testImplementation(libs.robolectric)
testImplementation(libs.androidx.junit.ktx)
testImplementation(libs.kotlinx.coroutines.test)
}
extra["pomName"] = "OpenTelemetry Android Instrumentation"
description = "A library for instrumenting Android applications with OpenTelemetry"