Skip to content

Commit 1765067

Browse files
authored
Upgrade core ACS repositories to Java 21 (#3270)
1 parent 3100a1e commit 1765067

16 files changed

Lines changed: 157 additions & 90 deletions

File tree

.github/workflows/arm64.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
workflow_dispatch:
77

88
env:
9+
JAVA_VERSION: "21"
910
GITHUB_ACTIONS_DEPLOY_TIMEOUT: 60
1011
MAVEN_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
1112
MAVEN_USERNAME: ${{ secrets.NEXUS_USERNAME }}
@@ -28,6 +29,8 @@ jobs:
2829
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v8.16.0
2930
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v8.16.0
3031
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v8.16.0
32+
with:
33+
java-version: ${{ env.JAVA_VERSION }}
3134
- name: Set up QEMU
3235
uses: docker/setup-qemu-action@v3
3336
with:

.github/workflows/ci.yml

Lines changed: 93 additions & 58 deletions
Large diffs are not rendered by default.

.github/workflows/master_release.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ on:
99
- cron: '0 5 * * 3'
1010

1111
env:
12+
JAVA_VERSION: "21"
1213
AWS_REGION: eu-west-1
1314
GIT_USERNAME: ${{ secrets.BOT_GITHUB_USERNAME }}
1415
GIT_EMAIL: ${{ secrets.BOT_GITHUB_EMAIL }}
@@ -50,6 +51,8 @@ jobs:
5051
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v8.16.0
5152
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v8.16.0
5253
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v8.16.0
54+
with:
55+
java-version: ${{ env.JAVA_VERSION }}
5356
- name: Set up QEMU
5457
uses: docker/setup-qemu-action@v3
5558
with:
@@ -88,6 +91,8 @@ jobs:
8891
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v8.16.0
8992
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v8.16.0
9093
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v8.16.0
94+
with:
95+
java-version: ${{ env.JAVA_VERSION }}
9196
- uses: actions/setup-python@v5
9297
- name: Set up QEMU
9398
uses: docker/setup-qemu-action@v3
@@ -146,6 +151,8 @@ jobs:
146151
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v8.16.0
147152
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v8.16.0
148153
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v8.16.0
154+
with:
155+
java-version: ${{ env.JAVA_VERSION }}
149156
- name: "Init"
150157
run: bash ./scripts/ci/init.sh
151158
- uses: Alfresco/alfresco-build-tools/.github/actions/configure-git-author@v8.16.0
@@ -189,6 +196,8 @@ jobs:
189196
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v8.16.0
190197
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v8.16.0
191198
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v8.16.0
199+
with:
200+
java-version: ${{ env.JAVA_VERSION }}
192201
- name: "Init"
193202
run: bash ./scripts/ci/init.sh
194203
- uses: Alfresco/alfresco-build-tools/.github/actions/configure-git-author@v8.16.0

.github/workflows/precommit_formatter.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
- precommit/**
77

88
env:
9+
JAVA_VERSION: "21"
910
MAVEN_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
1011
MAVEN_USERNAME: ${{ secrets.NEXUS_USERNAME }}
1112

@@ -19,6 +20,8 @@ jobs:
1920
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v8.16.0
2021
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v8.16.0
2122
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v8.16.0
23+
with:
24+
java-version: ${{ env.JAVA_VERSION }}
2225
- name: Set up Python ${{ inputs.python-version }}
2326
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
2427
with:

.secrets.baseline

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -133,31 +133,31 @@
133133
"filename": ".github/workflows/ci.yml",
134134
"hashed_secret": "900b583949403b824abab775aa8cd7a886277af0",
135135
"is_verified": false,
136-
"line_number": 303,
136+
"line_number": 316,
137137
"is_secret": false
138138
},
139139
{
140140
"type": "Secret Keyword",
141141
"filename": ".github/workflows/ci.yml",
142142
"hashed_secret": "bf60545faf7f414f069283b373da90dab88ea3a1",
143143
"is_verified": false,
144-
"line_number": 306,
144+
"line_number": 319,
145145
"is_secret": false
146146
},
147147
{
148148
"type": "Secret Keyword",
149149
"filename": ".github/workflows/ci.yml",
150150
"hashed_secret": "ae822327d73891c8005377ce8a7c066bc04c1dd1",
151151
"is_verified": false,
152-
"line_number": 309,
152+
"line_number": 322,
153153
"is_secret": false
154154
},
155155
{
156156
"type": "Secret Keyword",
157157
"filename": ".github/workflows/ci.yml",
158158
"hashed_secret": "7fcd3cb161980b73e75560dff5c98ee4de3029c5",
159159
"is_verified": false,
160-
"line_number": 312,
160+
"line_number": 325,
161161
"is_secret": false
162162
}
163163
],
@@ -167,7 +167,7 @@
167167
"filename": ".github/workflows/master_release.yml",
168168
"hashed_secret": "3e26d6750975d678acb8fa35a0f69237881576b0",
169169
"is_verified": false,
170-
"line_number": 31,
170+
"line_number": 32,
171171
"is_secret": false
172172
}
173173
],
@@ -815,5 +815,5 @@
815815
}
816816
]
817817
},
818-
"generated_at": "2025-03-21T10:31:33Z"
818+
"generated_at": "2025-09-04T09:02:45Z"
819819
}

distribution/src/main/resources/VERSIONS.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,9 @@ This file lists the recommended components for this Service Pack. Use it along w
9393

9494
##### Java
9595
| Component | Recommended | Also Available |
96-
|---|---|---|
97-
| OpenJDK | 17.0.4 | |
98-
| Amazon Corretto | 17 | |
96+
|---|-------------|---|
97+
| OpenJDK | 21.0.9 | |
98+
| Amazon Corretto | 21 | |
9999

100100
##### Message Broker
101101
| Component | Recommended | Also Available |

pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,11 @@
103103

104104
<dependencyManagement>
105105
<dependencies>
106+
<dependency>
107+
<groupId>org.aspectj</groupId>
108+
<artifactId>aspectjweaver</artifactId>
109+
<version>${dependency.aspectj.version}</version>
110+
</dependency>
106111
<dependency>
107112
<groupId>org.alfresco</groupId>
108113
<artifactId>content-services</artifactId>

tests/pipeline-all-amps/repo/Dockerfile

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,16 +45,18 @@ logger.alfresco-repo-content-transform-TransformerDebug.level=debug\n\
4545
# Grant all security permissions to jolokia and share in order to work properly.
4646
RUN sed -i -e "\$a\grant\ codeBase\ \"file:\$\{catalina.base\}\/webapps\/jolokia\/-\" \{\n\ permission\ java.security.AllPermission\;\n\};\ngrant\ codeBase\ \"file:\$\{catalina.base\}\/webapps\/share\/-\" \{\n\ permission\ java.security.AllPermission\;\n\};" ${TOMCAT_DIR}/conf/catalina.policy
4747

48-
# Switch between currently installed JRE version and 21
48+
# Switch between currently installed JRE version and 25
4949
ARG JAVA_VERSION
50-
RUN if [[ "$JAVA_VERSION" == "21" ]]; then \
50+
RUN if [[ "${JAVA_VERSION}" == "25" ]]; then \
5151
ARCH=$(uname -m | sed s/86_//); \
52-
JAVA_RELEASE=21.0.4_7; \
52+
JAVA_RELEASE=25.0.1_8; \
5353
curl -fsLo java.tar.gz https://github.com/adoptium/temurin${JAVA_VERSION}-binaries/releases/download/jdk-${JAVA_RELEASE/_/+}/OpenJDK${JAVA_VERSION}U-jre_${ARCH}_linux_hotspot_${JAVA_RELEASE}.tar.gz && \
5454
tar xvfz java.tar.gz && \
55-
mv jdk-* /usr/lib/jvm/temurin-21-jdk && \
56-
update-alternatives --install /usr/bin/java java /usr/lib/jvm/temurin-21-jdk/bin/java 1 && \
57-
update-alternatives --remove java $(update-alternatives --display java | head -2 | tail -1 | cut -d " " -f6); \
55+
mv jdk-* /usr/lib/jvm/temurin-25-jdk && \
56+
update-alternatives --install /usr/bin/java java /usr/lib/jvm/temurin-25-jdk/bin/java 20000000 && \
57+
update-alternatives --display java | grep "bin/java" | grep -v "temurin-25" | awk '{print $1}' | while read -r path; do \
58+
update-alternatives --remove java "${path}"; \
59+
done; \
5860
fi
5961

6062
#Use the alfresco user
@@ -66,8 +68,15 @@ ENV ALFRESCO_AMPS=ALL
6668
ENV ALFRESCO_WEBAPP=alfresco
6769
ENV ALFRESCO_AMPS_DIR=$TOMCAT_DIR/amps
6870

71+
# Enable deployXML to allow Alfresco's context.xml processing
72+
RUN if grep -q 'deployXML="false"' ${TOMCAT_DIR}/conf/server.xml; then \
73+
sed -i 's/deployXML="false"/deployXML="true"/' ${TOMCAT_DIR}/conf/server.xml; \
74+
elif ! grep -q 'deployXML' ${TOMCAT_DIR}/conf/server.xml; then \
75+
sed -i '/<Host name="localhost"/s/autoDeploy="false"/autoDeploy="false" deployXML="true"/' ${TOMCAT_DIR}/conf/server.xml; \
76+
fi
77+
6978
COPY docker-entrypoint.sh /
7079
ENTRYPOINT ["/docker-entrypoint.sh"]
71-
CMD ["catalina.sh", "run", "-security"]
80+
CMD ["catalina.sh", "run"]
7281

7382
LABEL quay.expires-after=${docker.quay-expires.value}

tests/pipeline-all-amps/repo/docker-entrypoint.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
set -e
44

5-
# Switch to Java 21 if it has been installed
6-
[ -d "/usr/lib/jvm/temurin-21-jdk" ] && export JAVA_HOME=/usr/lib/jvm/temurin-21-jdk
5+
# Switch to Java 25 if it has been installed
6+
[ -d "/usr/lib/jvm/temurin-25-jdk" ] && export JAVA_HOME=/usr/lib/jvm/temurin-25-jdk
77

88
ALFRESCO_WEBAPP_DIR=$TOMCAT_DIR/webapps/$ALFRESCO_WEBAPP
99
ALFRESCO_MMT_JAR=$TOMCAT_DIR/alfresco-mmt/alfresco-mmt*.jar

tests/pipeline-all-amps/share/Dockerfile

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,19 @@ ENV TOMCAT_DIR=${TOMCAT_DIR}
99
ENV ALFRESCO_AMPS=ALL
1010
ENV ALFRESCO_WEBAPP=share
1111
ENV ALFRESCO_AMPS_DIR=$TOMCAT_DIR/amps_share
12-
# Switch between currently installed JRE version and 21
12+
13+
# Switch between currently installed JRE version and 25
1314
ARG JAVA_VERSION
14-
RUN if [[ "$JAVA_VERSION" == "21" ]]; then \
15+
RUN if [[ "${JAVA_VERSION}" == "25" ]]; then \
1516
ARCH=$(uname -m | sed s/86_//); \
16-
JAVA_RELEASE=21.0.4_7; \
17+
JAVA_RELEASE=25.0.1_8; \
1718
curl -fsLo java.tar.gz https://github.com/adoptium/temurin${JAVA_VERSION}-binaries/releases/download/jdk-${JAVA_RELEASE/_/+}/OpenJDK${JAVA_VERSION}U-jre_${ARCH}_linux_hotspot_${JAVA_RELEASE}.tar.gz && \
1819
tar xvfz java.tar.gz && \
19-
mv jdk-* /usr/lib/jvm/temurin-21-jdk && \
20-
update-alternatives --install /usr/bin/java java /usr/lib/jvm/temurin-21-jdk/bin/java 1 && \
21-
update-alternatives --remove java $(update-alternatives --display java | head -2 | tail -1 | cut -d " " -f6); \
20+
mv jdk-* /usr/lib/jvm/temurin-25-jdk && \
21+
update-alternatives --install /usr/bin/java java /usr/lib/jvm/temurin-25-jdk/bin/java 20000000 && \
22+
update-alternatives --display java | grep "bin/java" | grep -v "temurin-25" | awk '{print $1}' | while read -r path; do \
23+
update-alternatives --remove java "${path}"; \
24+
done; \
2225
fi
2326

2427
COPY docker-entrypoint.sh /

0 commit comments

Comments
 (0)