Skip to content

Commit ee96c7c

Browse files
authored
Fixes the trace-analytics-sample-app project and updates it. (opensearch-project#6350)
Use Gradle 9.2.1, the current latest. Update to Spring Boot 4.0.0. Updated to Java 21. Use a more fixed Docker image when building to avoid future build failures - always Gradle 9 and JDK 21. Also, updates or adds copyright headers. Signed-off-by: David Venable <dlv@amazon.com>
1 parent 442cd70 commit ee96c7c

7 files changed

Lines changed: 79 additions & 59 deletions

File tree

examples/trace-analytics-sample-app/sample-app/Dockerfile

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,28 @@
1-
FROM gradle:jdk17 as cache
1+
#
2+
# Copyright OpenSearch Contributors
3+
# SPDX-License-Identifier: Apache-2.0
4+
#
5+
# The OpenSearch Contributors require contributions made to
6+
# this file be licensed under the Apache-2.0 license or a
7+
# compatible open source license.
8+
#
9+
10+
FROM gradle:9-jdk21 as cache
211
RUN mkdir -p /home/gradle/cache_home
312
ENV GRADLE_USER_HOME /home/gradle/cache_home
413
COPY analytics-service/build.gradle /home/gradle/src/
514
WORKDIR /home/gradle/src
615
RUN gradle clean build --daemon
716

8-
FROM gradle:jdk17 AS build
17+
FROM gradle:9-jdk21 AS build
918
COPY --from=cache /home/gradle/cache_home /home/gradle/.gradle
1019
COPY analytics-service /home/gradle/src/
1120
WORKDIR /home/gradle/src
1221
RUN gradle bootJar --daemon
1322

1423
RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.30.0/opentelemetry-javaagent.jar
1524

16-
FROM eclipse-temurin:17-jre-jammy
25+
FROM eclipse-temurin:21-jre-jammy
1726

1827
RUN apt-get -y update \
1928
&& apt-get -y upgrade \

examples/trace-analytics-sample-app/sample-app/analytics-service/Dockerfile

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,28 @@
1-
FROM gradle:jdk17 as cache
1+
#
2+
# Copyright OpenSearch Contributors
3+
# SPDX-License-Identifier: Apache-2.0
4+
#
5+
# The OpenSearch Contributors require contributions made to
6+
# this file be licensed under the Apache-2.0 license or a
7+
# compatible open source license.
8+
#
9+
10+
FROM gradle:9-jdk21 as cache
211
RUN mkdir -p /home/gradle/cache_home
312
ENV GRADLE_USER_HOME /home/gradle/cache_home
413
COPY build.gradle /home/gradle/src/
514
WORKDIR /home/gradle/src
615
RUN gradle clean build --daemon
716

8-
FROM gradle:jdk17 AS build
17+
FROM gradle:9-jdk21 AS build
918
COPY --from=cache /home/gradle/cache_home /home/gradle/.gradle
1019
COPY . /home/gradle/src/
1120
WORKDIR /home/gradle/src
1221
RUN gradle bootJar --daemon
1322

1423
RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.30.0/opentelemetry-javaagent.jar
1524

16-
FROM eclipse-temurin:17-jre-jammy
25+
FROM eclipse-temurin:21-jre-jammy
1726
EXPOSE 8087
1827
RUN mkdir /app
1928
COPY --from=build /home/gradle/src/build/libs/*.jar /app/spring-boot-application.jar
Lines changed: 12 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
11
/*
22
* Copyright OpenSearch Contributors
33
* SPDX-License-Identifier: Apache-2.0
4+
*
5+
* The OpenSearch Contributors require contributions made to
6+
* this file be licensed under the Apache-2.0 license or a
7+
* compatible open source license.
48
*/
59

610
plugins {
711
id 'java'
8-
id 'org.springframework.boot' version '3.1.6'
9-
id 'io.spring.dependency-management' version '1.1.4'
12+
id 'org.springframework.boot' version '4.0.0'
13+
id 'io.spring.dependency-management' version '1.1.7'
1014
}
1115

12-
13-
group = 'com.example.restservice'
16+
group = 'org.opensearch.dataprepper.examples.restservice'
1417
version = '0.0.1-SNAPSHOT'
1518

1619
repositories {
@@ -19,30 +22,17 @@ repositories {
1922

2023
java {
2124
toolchain {
22-
languageVersion = JavaLanguageVersion.of(17)
23-
}
24-
}
25-
26-
configurations.all {
27-
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
28-
if (details.requested.group == 'org.yaml') {
29-
details.useVersion '2.0'
30-
} else if (details.requested.group == 'org.apache.tomcat.embed') {
31-
details.useVersion '10.1.14'
32-
details.because('Fixes CVE-2023-44487')
33-
} else if (details.requested.group == 'ch.qos.logback') {
34-
details.useVersion '1.4.14'
35-
details.because('Fixes CVE-2023-6378')
36-
}
25+
languageVersion = JavaLanguageVersion.of(21)
3726
}
3827
}
3928

4029
dependencies {
41-
implementation('org.springframework.boot:spring-boot-starter-web')
42-
testImplementation('org.springframework.boot:spring-boot-starter-test')
30+
implementation 'org.springframework.boot:spring-boot-starter'
31+
implementation 'org.springframework.boot:spring-boot-starter-web'
32+
implementation 'org.springframework.boot:spring-boot-jackson2'
33+
testImplementation 'org.springframework.boot:spring-boot-starter-test'
4334
}
4435

4536
bootJar {
4637
mainClass = 'com.example.restservice.RestServiceApplication'
4738
}
48-
Binary file not shown.
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.1-bin.zip
4+
networkTimeout=10000
5+
validateDistributionUrl=true
46
zipStoreBase=GRADLE_USER_HOME
57
zipStorePath=wrapper/dists

examples/trace-analytics-sample-app/sample-app/analytics-service/gradlew

Lines changed: 26 additions & 18 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/trace-analytics-sample-app/sample-app/analytics-service/gradlew.bat

Lines changed: 14 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)