Skip to content

Commit bdf6c71

Browse files
authored
build: adding consistent providing of run flags (#117)
1 parent 6c93ba4 commit bdf6c71

2 files changed

Lines changed: 26 additions & 15 deletions

File tree

Dockerfile

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,27 @@
1-
FROM gradle:9.3.0-jdk25-alpine AS build
1+
FROM gradle:9.3.0-jdk25 AS build
22

3-
ARG GRADLE_OPTS
4-
5-
RUN apk add --no-cache protoc unzip
3+
RUN apt-get update && apt-get install -y protobuf-compiler unzip
64

75
COPY --chown=gradle:gradle . /usr/src/cirrina
6+
87
WORKDIR /usr/src/cirrina
98

10-
RUN gradle distZip
9+
RUN gradle distZip --no-daemon
1110

12-
# Unpack distribution and normalize path
13-
RUN unzip build/distributions/cirrina.zip -d /tmp \
14-
&& chmod +x /tmp/cirrina/bin/cirrina
11+
RUN unzip build/distributions/cirrina.zip -d /tmp
1512

1613
FROM gcr.io/distroless/java25-debian13 AS runtime
1714

1815
COPY --from=build /tmp/cirrina /opt/cirrina
1916

20-
ENTRYPOINT ["java", "-cp", "/opt/cirrina/lib/*", "at.ac.uibk.dps.cirrina.CirrinaKt"]
17+
ENTRYPOINT [ \
18+
"java", \
19+
"-XX:+UseZGC", \
20+
"-XX:+AlwaysPreTouch", \
21+
"-Xms4G", \
22+
"-Xmx4G", \
23+
"--enable-native-access=ALL-UNNAMED", \
24+
"--sun-misc-unsafe-memory-access=allow", \
25+
"-cp", "/opt/cirrina/lib/*", \
26+
"at.ac.uibk.dps.cirrina.CirrinaKt" \
27+
]

build.gradle.kts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,23 @@ group = "ac.at.uibk.dps.cirrina"
1313

1414
version = rootProject.file("version.txt").readText().trim()
1515

16-
application { mainClass.set("at.ac.uibk.dps.cirrina.CirrinaKt") }
17-
18-
java { toolchain { languageVersion.set(JavaLanguageVersion.of(25)) } }
19-
20-
ktfmt { googleStyle() }
21-
2216
val jdk25SecurityArgs =
2317
listOf("--enable-native-access=ALL-UNNAMED", "--sun-misc-unsafe-memory-access=allow")
2418

2519
val standardJvmArgs = listOf("-XX:+UseZGC", "-XX:+AlwaysPreTouch", "-Xms4G", "-Xmx4G")
2620

2721
val allRuntimeArgs = standardJvmArgs + jdk25SecurityArgs
2822

23+
application {
24+
mainClass.set("at.ac.uibk.dps.cirrina.CirrinaKt")
25+
26+
applicationDefaultJvmArgs = allRuntimeArgs
27+
}
28+
29+
java { toolchain { languageVersion.set(JavaLanguageVersion.of(25)) } }
30+
31+
ktfmt { googleStyle() }
32+
2933
dependencies {
3034
implementation("com.google.dagger:dagger:2.59")
3135
kapt("com.google.dagger:dagger-compiler:2.59")

0 commit comments

Comments
 (0)