123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- import java.time.LocalDateTime
- import java.time.format.DateTimeFormatter
- plugins {
- id("otel.java-conventions")
- id("com.google.cloud.tools.jib")
- id("org.springframework.boot") version "2.7.18"
- }
- dependencies {
- implementation(platform("io.opentelemetry:opentelemetry-bom:1.0.0"))
- implementation(platform("org.springframework.boot:spring-boot-dependencies:2.7.18"))
- implementation("io.opentelemetry:opentelemetry-api")
- implementation(project(":instrumentation-annotations"))
- implementation("org.springframework.boot:spring-boot-starter-web")
- }
- configurations.runtimeClasspath {
- resolutionStrategy {
- // requires old logback (and therefore also old slf4j)
- force("ch.qos.logback:logback-classic:1.2.11")
- force("org.slf4j:slf4j-api:1.7.36")
- }
- }
- val targetJDK = project.findProperty("targetJDK") ?: "11"
- val tag = findProperty("tag")
- ?: DateTimeFormatter.ofPattern("yyyyMMdd.HHmmSS").format(LocalDateTime.now())
- java {
- // needed by jib to detect java version used in project
- // for jdk9+ jib uses an entrypoint that doesn't work with jdk8
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
- }
- springBoot {
- buildInfo {
- }
- }
- jib {
- from.image = "openjdk:$targetJDK"
- to.image = "ghcr.io/open-telemetry/opentelemetry-java-instrumentation/smoke-test-spring-boot:jdk$targetJDK-$tag"
- container.ports = listOf("8080")
- }
- tasks {
- val springBootJar by configurations.creating {
- isCanBeConsumed = true
- isCanBeResolved = false
- }
- artifacts {
- add("springBootJar", bootJar)
- }
- }
|