Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
io.opentelemetry.exporter.otlp.internal.OtlpMetricExporterProvider
6 changes: 2 additions & 4 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -32,18 +32,16 @@ dependencies {
// When updating, update above in plugins too
implementation("com.diffplug.spotless:spotless-plugin-gradle:8.0.0")
implementation("com.github.spotbugs.snom:spotbugs-gradle-plugin:6.3.0")
implementation("com.gradleup.shadow:shadow-gradle-plugin:8.3.9")
implementation("com.gradleup.shadow:shadow-gradle-plugin:9.2.2")

implementation("org.owasp:dependency-check-gradle:12.1.8")

implementation("io.opentelemetry.instrumentation:gradle-plugins:2.19.0-alpha")
implementation("io.opentelemetry.instrumentation:gradle-plugins:2.21.0-alpha")

implementation("net.ltgt.gradle:gradle-errorprone-plugin:4.3.0")
implementation("net.ltgt.gradle:gradle-nullaway-plugin:2.3.0")

implementation("gradle.plugin.io.morethan.jmhreport:gradle-jmh-report:0.9.6")
implementation("me.champeau.jmh:jmh-gradle-plugin:0.7.3")

// earlier versions aren't compatible with Gradle 8.1.1
implementation("org.springframework.boot:spring-boot-gradle-plugin:2.5.12")
}
27 changes: 26 additions & 1 deletion buildSrc/src/main/kotlin/ai.shadow-conventions.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,13 +1,38 @@
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import org.gradle.api.file.DuplicatesStrategy

plugins {
id("com.gradleup.shadow")
}

tasks.withType<ShadowJar>().configureEach {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
mergeServiceFiles()
mergeServiceFiles("META-INF/services/**")
mergeServiceFiles {
include("inst/META-INF/services/*")
include("inst/META-INF/services/**")
path = "inst/META-INF/services"
}
filesMatching("META-INF/services/**") {
duplicatesStrategy = DuplicatesStrategy.INCLUDE
}
filesMatching("inst/META-INF/services/**") {
duplicatesStrategy = DuplicatesStrategy.INCLUDE
}
exclude("META-INF/services/javax.servlet.ServletContainerInitializer")
exclude("inst/META-INF/services/javax.servlet.ServletContainerInitializer")
exclude("META-INF/*.SF", "META-INF/*.DSA", "META-INF/*.RSA")
exclude(
"META-INF/LICENSE",
"META-INF/NOTICE",
"META-INF/LICENSE.txt",
"META-INF/NOTICE.txt",
"META-INF/INDEX.LIST",
"META-INF/io.netty.versions.properties",
"META-INF/AL2.0",
"META-INF/LGPL2.1"
)
exclude("META-INF/maven/**")

exclude("**/module-info.class")

Expand Down
28 changes: 25 additions & 3 deletions buildSrc/src/main/kotlin/ai.smoke-test-jar.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,11 +1,33 @@
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import com.microsoft.applicationinsights.gradle.AiSmokeTestExtension
import org.gradle.api.file.DuplicatesStrategy

plugins {
id("ai.smoke-test")
id("org.springframework.boot")
id("com.gradleup.shadow")
}

val aiSmokeTest = extensions.getByType(AiSmokeTestExtension::class)

aiSmokeTest.testAppArtifactDir.set(tasks.bootJar.flatMap { it.destinationDirectory })
aiSmokeTest.testAppArtifactFilename.set(tasks.bootJar.flatMap { it.archiveFileName })
val shadowJar = tasks.named<ShadowJar>("shadowJar") {
archiveClassifier.set("")
archiveVersion.set("")
duplicatesStrategy = DuplicatesStrategy.EXCLUDE

mergeServiceFiles()
mergeServiceFiles("META-INF/spring.factories")
mergeServiceFiles("META-INF/spring.handlers")
mergeServiceFiles("META-INF/spring.schemas")
mergeServiceFiles("META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports")

manifest {
attributes["Main-Class"] = "com.microsoft.applicationinsights.smoketestapp.SpringBootApp"
}
}

tasks.named("assemble") {
dependsOn(shadowJar)
}

aiSmokeTest.testAppArtifactDir.set(shadowJar.flatMap { it.destinationDirectory })
aiSmokeTest.testAppArtifactFilename.set(shadowJar.flatMap { it.archiveFileName })
2 changes: 1 addition & 1 deletion etw/etw-testapp/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
plugins {
id("ai.java-conventions")
id("org.springframework.boot" version "2.5.12")
id("org.springframework.boot" version "2.7.18")
id("war")
}

Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

// Spring boot doesn't support read-only containers
// (https://github.com/spring-projects/spring-boot/issues/8578)
public class App {
public class SpringBootApp {

private static final Logger logger = Logger.getLogger("smoketestapp");

Expand Down
2 changes: 1 addition & 1 deletion smoke-tests/apps/gRPC/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import com.google.protobuf.gradle.*

plugins {
id("ai.smoke-test-jar")
id("com.google.protobuf") version "0.8.19"
id("com.google.protobuf") version "0.9.5"
}

val grpcVersion = "1.26.0" // first version with support for arm64
Expand Down
Loading