-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathbuild.gradle
More file actions
80 lines (67 loc) · 3.15 KB
/
Copy pathbuild.gradle
File metadata and controls
80 lines (67 loc) · 3.15 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
plugins {
id 'java'
id "io.freefair.aspectj.post-compile-weaving" version "8.3"
}
group = 'com.axway.apim'
version = '0.0.3'
java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
repositories {
mavenCentral()
}
tasks.withType(JavaCompile) {
options.compilerArgs += ['-Xlint:deprecation']
}
def apim_folder = providers.gradleProperty('apim_folder')
.orElse(providers.environmentVariable('APIM_FOLDER'))
.getOrElse('')
if (!apim_folder) {
throw new GradleException('Set the APIM system folder with -Papim_folder=/path/to/apigateway/system or APIM_FOLDER=/path/to/apigateway/system')
}
def apimSystemDir = file(apim_folder)
if (!apimSystemDir.isDirectory()) {
throw new GradleException("APIM system folder does not exist: ${apimSystemDir}")
}
configurations {
apimAgentRuntime {
canBeConsumed = false
canBeResolved = true
}
implementation.extendsFrom(apimAgentRuntime)
}
def opentelemetry_version = "1.52.0"
def opentelemetry_instrumentation_version = "2.18.1"
def opentelemetry_semconv_version = "1.34.0"
dependencies {
implementation fileTree(dir: "${apimSystemDir}/lib", include: '*.jar')
implementation fileTree(dir: "${apimSystemDir}/lib/jce", include: '*.jar')
implementation fileTree(dir: "${apimSystemDir}/lib/plugins", include: '*.jar')
apimAgentRuntime group: 'org.aspectj', name: 'aspectjweaver', version: '1.9.22.1'
apimAgentRuntime("io.opentelemetry:opentelemetry-api:${opentelemetry_version}")
apimAgentRuntime("io.opentelemetry:opentelemetry-sdk:${opentelemetry_version}")
apimAgentRuntime("io.opentelemetry:opentelemetry-exporter-otlp:${opentelemetry_version}")
apimAgentRuntime("io.opentelemetry:opentelemetry-sdk-metrics:${opentelemetry_version}")
apimAgentRuntime("io.opentelemetry:opentelemetry-exporter-logging:${opentelemetry_version}")
apimAgentRuntime("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:${opentelemetry_version}")
// implementation("io.opentelemetry:opentelemetry-semconv:1.30.1-alpha")
apimAgentRuntime "io.opentelemetry.semconv:opentelemetry-semconv:${opentelemetry_semconv_version}"
apimAgentRuntime "io.opentelemetry.instrumentation:opentelemetry-runtime-telemetry-java8:${opentelemetry_instrumentation_version}-alpha"
apimAgentRuntime "io.opentelemetry.instrumentation:opentelemetry-instrumentation-api:${opentelemetry_instrumentation_version}"
testImplementation group: 'junit', name: 'junit', version: '4.13.2'
testImplementation group: 'org.mockito', name: 'mockito-core', version: '3.12.4'
testImplementation group: 'org.powermock', name: 'powermock-module-junit4', version: '2.0.9'
testImplementation group: 'org.powermock', name: 'powermock-api-mockito2', version: '2.0.9'
}
jar {
metaInf { from('src/main/resources/aop.xml') }
}
tasks.register('assembleInstall', Copy) {
group = 'distribution'
description = 'Assembles the APIM agent jar and required runtime dependency jars for apigateway/ext/lib.'
dependsOn jar
into layout.buildDirectory.dir('install/opentelemetry-apim-agent')
from(tasks.named('jar'))
from(configurations.apimAgentRuntime)
}