Skip to content

Commit 05672f2

Browse files
committed
Update to Gradle 9.1
1 parent 9cb3dcf commit 05672f2

File tree

9 files changed

+61
-11
lines changed

9 files changed

+61
-11
lines changed

buildSrc/build.gradle.kts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ repositories {
2020
mavenCentral()
2121
mavenLocal()
2222
gradlePluginPortal()
23+
maven("https://central.sonatype.com/repository/maven-snapshots/")
2324
}
2425

2526
tasks.withType<Test>().configureEach {
@@ -32,18 +33,16 @@ dependencies {
3233
// When updating, update above in plugins too
3334
implementation("com.diffplug.spotless:spotless-plugin-gradle:8.0.0")
3435
implementation("com.github.spotbugs.snom:spotbugs-gradle-plugin:6.3.0")
35-
implementation("com.gradleup.shadow:shadow-gradle-plugin:8.3.9")
36+
implementation("com.gradleup.shadow:shadow-gradle-plugin:9.2.2")
3637

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

39-
implementation("io.opentelemetry.instrumentation:gradle-plugins:2.19.0-alpha")
40+
implementation("io.opentelemetry.instrumentation:gradle-plugins:2.22.0-alpha-SNAPSHOT")
4041

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

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

47-
// earlier versions aren't compatible with Gradle 8.1.1
48-
implementation("org.springframework.boot:spring-boot-gradle-plugin:2.5.12")
4948
}

buildSrc/src/main/kotlin/ai.shadow-conventions.gradle.kts

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,35 @@
11
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2+
import org.gradle.api.file.DuplicatesStrategy
23

34
plugins {
45
id("com.gradleup.shadow")
56
}
67

78
tasks.withType<ShadowJar>().configureEach {
9+
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
10+
mergeServiceFiles()
11+
mergeServiceFiles("META-INF/services/**")
812
mergeServiceFiles {
9-
include("inst/META-INF/services/*")
13+
include("inst/META-INF/services/**")
1014
}
15+
filesMatching("META-INF/services/**") {
16+
duplicatesStrategy = DuplicatesStrategy.INCLUDE
17+
}
18+
filesMatching("inst/META-INF/services/**") {
19+
duplicatesStrategy = DuplicatesStrategy.INCLUDE
20+
}
21+
exclude("META-INF/*.SF", "META-INF/*.DSA", "META-INF/*.RSA")
22+
exclude(
23+
"META-INF/LICENSE",
24+
"META-INF/NOTICE",
25+
"META-INF/LICENSE.txt",
26+
"META-INF/NOTICE.txt",
27+
"META-INF/INDEX.LIST",
28+
"META-INF/io.netty.versions.properties",
29+
"META-INF/AL2.0",
30+
"META-INF/LGPL2.1"
31+
)
32+
exclude("META-INF/maven/**")
1133

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

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,35 @@
1+
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
12
import com.microsoft.applicationinsights.gradle.AiSmokeTestExtension
3+
import org.gradle.api.file.DuplicatesStrategy
24

35
plugins {
46
id("ai.smoke-test")
5-
id("org.springframework.boot")
7+
id("com.gradleup.shadow")
68
}
79

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

10-
aiSmokeTest.testAppArtifactDir.set(tasks.bootJar.flatMap { it.destinationDirectory })
11-
aiSmokeTest.testAppArtifactFilename.set(tasks.bootJar.flatMap { it.archiveFileName })
12+
aiSmokeTest.mainClass.convention("com.microsoft.applicationinsights.smoketestapp.SpringBootApp")
13+
14+
val shadowJar = tasks.named<ShadowJar>("shadowJar") {
15+
archiveClassifier.set("")
16+
archiveVersion.set("")
17+
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
18+
19+
mergeServiceFiles()
20+
mergeServiceFiles("META-INF/spring.factories")
21+
mergeServiceFiles("META-INF/spring.handlers")
22+
mergeServiceFiles("META-INF/spring.schemas")
23+
mergeServiceFiles("META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports")
24+
25+
manifest {
26+
attributes["Main-Class"] = aiSmokeTest.mainClass.get()
27+
}
28+
}
29+
30+
tasks.named("assemble") {
31+
dependsOn(shadowJar)
32+
}
33+
34+
aiSmokeTest.testAppArtifactDir.set(shadowJar.flatMap { it.destinationDirectory })
35+
aiSmokeTest.testAppArtifactFilename.set(shadowJar.flatMap { it.archiveFileName })

buildSrc/src/main/kotlin/com/microsoft/applicationinsights/gradle/AiSmokeTestExtension.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,6 @@ abstract class AiSmokeTestExtension {
1010
abstract val testAppArtifactFilename: Property<String>
1111

1212
abstract val dependencyContainers: ListProperty<String>
13+
14+
abstract val mainClass: Property<String>
1315
}

etw/etw-testapp/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
id("ai.java-conventions")
3-
id("org.springframework.boot" version "2.5.12")
3+
id("org.springframework.boot" version "2.7.18")
44
id("war")
55
}
66

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

settings.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ dependencyResolutionManagement {
1313
repositories {
1414
mavenCentral()
1515
mavenLocal()
16+
maven("https://central.sonatype.com/repository/maven-snapshots/")
1617
}
1718
}
1819

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
plugins {
22
id("ai.smoke-test-jar")
33
}
4+
5+
aiSmokeTest.mainClass.set("com.microsoft.applicationinsights.smoketestapp.App")

smoke-tests/apps/gRPC/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import com.google.protobuf.gradle.*
22

33
plugins {
44
id("ai.smoke-test-jar")
5-
id("com.google.protobuf") version "0.8.19"
5+
id("com.google.protobuf") version "0.9.5"
66
}
77

88
val grpcVersion = "1.26.0" // first version with support for arm64

0 commit comments

Comments
 (0)