Skip to content

Commit 4c69514

Browse files
authored
Merge pull request #112 from groovy/5.0.3
Groovy 5.0.3
2 parents 2bea8f7 + 27a2440 commit 4c69514

File tree

10 files changed

+89
-15
lines changed

10 files changed

+89
-15
lines changed

.github/workflows/ci.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ jobs:
1818
strategy:
1919
matrix:
2020
directory:
21-
- jdk8
2221
- jdk11
2322
- jdk17
2423
- jdk21
24+
- jdk25
2525
steps:
2626
- name: checkout
2727
uses: actions/checkout@v4
@@ -32,7 +32,7 @@ jobs:
3232
docker build --tag "groovy:${{ matrix.directory }}" .
3333
- name: test
3434
env:
35-
expectedGroovyVersion: 4.0.27
35+
expectedGroovyVersion: 5.0.3
3636
run: |
3737
cd test
3838
./run.sh "groovy:${{ matrix.directory }}" "${expectedGroovyVersion}"

jdk11-alpine/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ VOLUME /home/groovy/.groovy/grapes
1919

2020
WORKDIR /home/groovy
2121

22-
ENV GROOVY_VERSION=4.0.27
22+
ENV GROOVY_VERSION=5.0.3
2323
RUN set -o errexit -o nounset \
2424
&& echo "Installing build dependencies" \
2525
&& apk add --no-cache --virtual .build-deps \

jdk11/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ RUN set -o errexit -o nounset \
2929
wget \
3030
&& rm --recursive --force /var/lib/apt/lists/*
3131

32-
ENV GROOVY_VERSION=4.0.27
32+
ENV GROOVY_VERSION=5.0.3
3333
RUN set -o errexit -o nounset \
3434
&& echo "Downloading Groovy" \
3535
&& wget --no-verbose --output-document=groovy.zip "https://archive.apache.org/dist/groovy/${GROOVY_VERSION}/distribution/apache-groovy-binary-${GROOVY_VERSION}.zip" \

jdk17-alpine/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ VOLUME /home/groovy/.groovy/grapes
1919

2020
WORKDIR /home/groovy
2121

22-
ENV GROOVY_VERSION=4.0.27
22+
ENV GROOVY_VERSION=5.0.3
2323
RUN set -o errexit -o nounset \
2424
&& echo "Installing build dependencies" \
2525
&& apk add --no-cache --virtual .build-deps \

jdk17/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ RUN set -o errexit -o nounset \
3131
wget \
3232
&& rm --recursive --force /var/lib/apt/lists/*
3333

34-
ENV GROOVY_VERSION=4.0.27
34+
ENV GROOVY_VERSION=5.0.3
3535
RUN set -o errexit -o nounset \
3636
&& echo "Downloading Groovy" \
3737
&& wget --no-verbose --output-document=groovy.zip "https://archive.apache.org/dist/groovy/${GROOVY_VERSION}/distribution/apache-groovy-binary-${GROOVY_VERSION}.zip" \

jdk21-alpine/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ VOLUME /home/groovy/.groovy/grapes
1919

2020
WORKDIR /home/groovy
2121

22-
ENV GROOVY_VERSION=4.0.27
22+
ENV GROOVY_VERSION=5.0.3
2323
RUN set -o errexit -o nounset \
2424
&& echo "Installing build dependencies" \
2525
&& apk add --no-cache --virtual .build-deps \

jdk21/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ RUN set -o errexit -o nounset \
3131
wget \
3232
&& rm --recursive --force /var/lib/apt/lists/*
3333

34-
ENV GROOVY_VERSION=4.0.27
34+
ENV GROOVY_VERSION=5.0.3
3535
RUN set -o errexit -o nounset \
3636
&& echo "Downloading Groovy" \
3737
&& wget --no-verbose --output-document=groovy.zip "https://archive.apache.org/dist/groovy/${GROOVY_VERSION}/distribution/apache-groovy-binary-${GROOVY_VERSION}.zip" \

jdk25-alpine/Dockerfile

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
FROM eclipse-temurin:25-jdk-alpine
2+
3+
CMD ["groovysh"]
4+
5+
ENV GROOVY_HOME=/opt/groovy
6+
7+
RUN set -o errexit -o nounset \
8+
&& echo "Adding groovy user and group" \
9+
&& addgroup --system --gid 1000 groovy \
10+
&& adduser --system --ingroup groovy --uid 1000 --shell /bin/ash groovy \
11+
&& mkdir --parents /home/groovy/.groovy/grapes \
12+
&& chown -R groovy:groovy /home/groovy \
13+
&& chmod -R 1777 /home/groovy \
14+
\
15+
&& echo "Symlinking root .groovy to groovy .groovy" \
16+
&& ln -s /home/groovy/.groovy /root/.groovy
17+
18+
VOLUME /home/groovy/.groovy/grapes
19+
20+
WORKDIR /home/groovy
21+
22+
ENV GROOVY_VERSION=5.0.3
23+
RUN set -o errexit -o nounset \
24+
&& echo "Installing build dependencies" \
25+
&& apk add --no-cache --virtual .build-deps \
26+
gnupg \
27+
\
28+
&& echo "Downloading Groovy" \
29+
&& wget --no-verbose --output-document=groovy.zip "https://archive.apache.org/dist/groovy/${GROOVY_VERSION}/distribution/apache-groovy-binary-${GROOVY_VERSION}.zip" \
30+
\
31+
&& echo "Importing keys listed in http://www.apache.org/dist/groovy/KEYS from key server" \
32+
&& export GNUPGHOME="$(mktemp -d)" \
33+
&& gpg --batch --no-tty --keyserver keyserver.ubuntu.com --recv-keys \
34+
7FAA0F2206DE228F0DB01AD741321490758AAD6F \
35+
331224E1D7BE883D16E8A685825C06C827AF6B66 \
36+
34441E504A937F43EB0DAEF96A65176A0FB1CD0B \
37+
9A810E3B766E089FFB27C70F11B595CEDC4AEBB5 \
38+
81CABC23EECA0790E8989B361FF96E10F0E13706 \
39+
\
40+
&& echo "Checking download signature" \
41+
&& wget --no-verbose --output-document=groovy.zip.asc "https://archive.apache.org/dist/groovy/${GROOVY_VERSION}/distribution/apache-groovy-binary-${GROOVY_VERSION}.zip.asc" \
42+
&& gpg --batch --no-tty --verify groovy.zip.asc groovy.zip \
43+
&& (rm -rf "${GNUPGHOME}" || true) \
44+
&& rm groovy.zip.asc \
45+
\
46+
&& echo "Cleaning up build dependencies" \
47+
&& apk del .build-deps \
48+
\
49+
&& echo "Installing Groovy" \
50+
&& unzip groovy.zip \
51+
&& rm groovy.zip \
52+
&& mv "groovy-${GROOVY_VERSION}" "${GROOVY_HOME}/" \
53+
&& rm -f "${GROOVY_HOME}/lib/groovy-raw-${GROOVY_VERSION}-raw.jar" \
54+
&& ln -s "${GROOVY_HOME}/bin/grape" /usr/bin/grape \
55+
&& ln -s "${GROOVY_HOME}/bin/groovy" /usr/bin/groovy \
56+
&& ln -s "${GROOVY_HOME}/bin/groovyc" /usr/bin/groovyc \
57+
&& ln -s "${GROOVY_HOME}/bin/groovyConsole" /usr/bin/groovyConsole \
58+
&& ln -s "${GROOVY_HOME}/bin/groovydoc" /usr/bin/groovydoc \
59+
&& ln -s "${GROOVY_HOME}/bin/groovysh" /usr/bin/groovysh \
60+
&& ln -s "${GROOVY_HOME}/bin/java2groovy" /usr/bin/java2groovy \
61+
\
62+
&& echo "Editing startGroovy to include java.xml.bind module" \
63+
&& sed --in-place 's|startGroovy ( ) {|startGroovy ( ) {\n JAVA_OPTS="$JAVA_OPTS --add-modules=ALL-SYSTEM"|' "${GROOVY_HOME}/bin/startGroovy"
64+
65+
USER 1000:1000
66+
67+
RUN set -o errexit -o nounset \
68+
&& echo "Testing Groovy installation" \
69+
&& groovy --version

jdk8/Dockerfile renamed to jdk25/Dockerfile

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
1-
FROM eclipse-temurin:8-jdk-jammy
1+
FROM eclipse-temurin:25-jdk-noble
22

33
CMD ["groovysh"]
44

55
ENV GROOVY_HOME=/opt/groovy
66

77
RUN set -o errexit -o nounset \
8-
&& echo "Adding groovy user and group" \
9-
&& groupadd --system --gid 1000 groovy \
10-
&& useradd --system --gid groovy --uid 1000 --shell /bin/bash --create-home groovy \
8+
&& echo "Renaming ubuntu user and group to groovy" \
9+
&& groupmod --new-name groovy ubuntu \
10+
&& mkdir /home/groovy \
11+
&& usermod --login groovy --home /home/groovy --groups groovy ubuntu \
12+
&& chown groovy /home/groovy \
1113
&& mkdir --parents /home/groovy/.groovy/grapes \
1214
&& chown --recursive groovy:groovy /home/groovy \
1315
&& chmod --recursive 1777 /home/groovy \
@@ -29,7 +31,7 @@ RUN set -o errexit -o nounset \
2931
wget \
3032
&& rm --recursive --force /var/lib/apt/lists/*
3133

32-
ENV GROOVY_VERSION=4.0.27
34+
ENV GROOVY_VERSION=5.0.3
3335
RUN set -o errexit -o nounset \
3436
&& echo "Downloading Groovy" \
3537
&& wget --no-verbose --output-document=groovy.zip "https://archive.apache.org/dist/groovy/${GROOVY_VERSION}/distribution/apache-groovy-binary-${GROOVY_VERSION}.zip" \
@@ -60,7 +62,10 @@ RUN set -o errexit -o nounset \
6062
&& ln --symbolic "${GROOVY_HOME}/bin/groovyConsole" /usr/bin/groovyConsole \
6163
&& ln --symbolic "${GROOVY_HOME}/bin/groovydoc" /usr/bin/groovydoc \
6264
&& ln --symbolic "${GROOVY_HOME}/bin/groovysh" /usr/bin/groovysh \
63-
&& ln --symbolic "${GROOVY_HOME}/bin/java2groovy" /usr/bin/java2groovy
65+
&& ln --symbolic "${GROOVY_HOME}/bin/java2groovy" /usr/bin/java2groovy \
66+
\
67+
&& echo "Editing startGroovy to include java.xml.bind module" \
68+
&& sed --in-place 's|startGroovy ( ) {|startGroovy ( ) {\n JAVA_OPTS="$JAVA_OPTS --add-modules=ALL-SYSTEM"|' "${GROOVY_HOME}/bin/startGroovy"
6469

6570
USER 1000:1000
6671

update.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Set-StrictMode -Version Latest
33
$ErrorActionPreference = "Stop"
44

5-
$groovyVersion = $(((Invoke-WebRequest "https://api.github.com/repos/apache/groovy/tags" | ConvertFrom-Json).name | Select-String -Pattern "GROOVY_4" | Select-Object -First 1).ToString().replace("GROOVY_", "").replace("_", "."))
5+
$groovyVersion = $(((Invoke-WebRequest "https://api.github.com/repos/apache/groovy/tags" | ConvertFrom-Json).name | Select-String -Pattern "GROOVY_5" | Select-Object -First 1).ToString().replace("GROOVY_", "").replace("_", "."))
66

77
Write-Host "Updating to Groovy $groovyVersion"
88

0 commit comments

Comments
 (0)