Skip to content

Commit 23501dc

Browse files
committed
Merge tag 'jdk-21.0.10+6' into fips-21u
Added tag jdk-21.0.10+6 for changeset 2e594b6
2 parents 0a42e29 + 2e594b6 commit 23501dc

10,226 files changed

Lines changed: 350553 additions & 187109 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
#
2+
# Copyright (c) 2023, 2024, Oracle and/or its affiliates. All rights reserved.
3+
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4+
#
5+
# This code is free software; you can redistribute it and/or modify it
6+
# under the terms of the GNU General Public License version 2 only, as
7+
# published by the Free Software Foundation. Oracle designates this
8+
# particular file as subject to the "Classpath" exception as provided
9+
# by Oracle in the LICENSE file that accompanied this code.
10+
#
11+
# This code is distributed in the hope that it will be useful, but WITHOUT
12+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14+
# version 2 for more details (a copy is included in the LICENSE file that
15+
# accompanied this code).
16+
#
17+
# You should have received a copy of the GNU General Public License version
18+
# 2 along with this work; if not, write to the Free Software Foundation,
19+
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20+
#
21+
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22+
# or visit www.oracle.com if you need additional information or have any
23+
# questions.
24+
#
25+
26+
name: 'Build JTReg'
27+
description: 'Build JTReg'
28+
29+
runs:
30+
using: composite
31+
steps:
32+
- name: 'Get JTReg version configuration'
33+
id: version
34+
uses: ./.github/actions/config
35+
with:
36+
var: JTREG_VERSION
37+
38+
- name: 'Check cache for already built JTReg'
39+
id: get-cached
40+
uses: actions/cache@v4
41+
with:
42+
path: jtreg/installed
43+
key: jtreg-${{ steps.version.outputs.value }}
44+
45+
- name: 'Checkout the JTReg source'
46+
uses: actions/checkout@v4
47+
with:
48+
repository: openjdk/jtreg
49+
ref: jtreg-${{ steps.version.outputs.value }}
50+
path: jtreg/src
51+
if: (steps.get-cached.outputs.cache-hit != 'true')
52+
53+
- name: 'Build JTReg'
54+
run: |
55+
# Build JTReg and move files to the proper locations
56+
bash make/build.sh --jdk "$JAVA_HOME_17_X64"
57+
mkdir ../installed
58+
mv build/images/jtreg/* ../installed
59+
working-directory: jtreg/src
60+
shell: bash
61+
if: (steps.get-cached.outputs.cache-hit != 'true')
62+
63+
- name: 'Upload JTReg artifact'
64+
uses: actions/upload-artifact@v4
65+
with:
66+
name: bundles-jtreg-${{ steps.version.outputs.value }}
67+
path: jtreg/installed
68+
retention-days: 5

.github/actions/do-build/action.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2022, 2025, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -42,7 +42,7 @@ runs:
4242
- name: 'Build'
4343
id: build
4444
run: >
45-
make LOG=info ${{ inputs.make-target }}
45+
make -k LOG=info ${{ inputs.make-target }}
4646
|| bash ./.github/scripts/gen-build-failure-report.sh "$GITHUB_STEP_SUMMARY"
4747
shell: bash
4848

@@ -66,15 +66,15 @@ runs:
6666
shell: bash
6767

6868
- name: 'Upload build logs'
69-
uses: actions/upload-artifact@v3
69+
uses: actions/upload-artifact@v4
7070
with:
7171
name: failure-logs-${{ inputs.platform }}${{ inputs.debug-suffix }}
7272
path: failure-logs
7373
if: steps.check.outputs.failure == 'true'
7474

7575
# This is the best way I found to abort the job with an error message
7676
- name: 'Notify about build failures'
77-
uses: actions/github-script@v6
77+
uses: actions/github-script@v7
7878
with:
7979
script: core.setFailed('Build failed. See summary for details.')
8080
if: steps.check.outputs.failure == 'true'

.github/actions/get-bootjdk/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ runs:
6565

6666
- name: 'Check cache for BootJDK'
6767
id: get-cached-bootjdk
68-
uses: actions/cache@v3
68+
uses: actions/cache@v4
6969
with:
7070
path: bootjdk/jdk
7171
key: boot-jdk-${{ inputs.platform }}-${{ steps.sha256.outputs.value }}

.github/actions/get-bundles/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,14 @@ runs:
4848
steps:
4949
- name: 'Download bundles artifact'
5050
id: download-bundles
51-
uses: actions/download-artifact@v3
51+
uses: actions/download-artifact@v4
5252
with:
5353
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
5454
path: bundles
5555
continue-on-error: true
5656

5757
- name: 'Download bundles artifact (retry)'
58-
uses: actions/download-artifact@v3
58+
uses: actions/download-artifact@v4
5959
with:
6060
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
6161
path: bundles

.github/actions/get-jtreg/action.yml

Lines changed: 5 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
#
2525

2626
name: 'Get JTReg'
27-
description: 'Download JTReg from cache or source location'
27+
description: 'Get JTReg'
2828
outputs:
2929
path:
3030
description: 'Path to the installed JTReg'
@@ -39,36 +39,12 @@ runs:
3939
with:
4040
var: JTREG_VERSION
4141

42-
- name: 'Check cache for JTReg'
43-
id: get-cached-jtreg
44-
uses: actions/cache@v3
42+
- name: 'Download JTReg artifact'
43+
id: download-jtreg
44+
uses: actions/download-artifact@v4
4545
with:
46+
name: bundles-jtreg-${{ steps.version.outputs.value }}
4647
path: jtreg/installed
47-
key: jtreg-${{ steps.version.outputs.value }}
48-
49-
- name: 'Checkout the JTReg source'
50-
uses: actions/checkout@v4
51-
with:
52-
repository: openjdk/jtreg
53-
ref: jtreg-${{ steps.version.outputs.value }}
54-
path: jtreg/src
55-
if: steps.get-cached-jtreg.outputs.cache-hit != 'true'
56-
57-
- name: 'Build JTReg'
58-
run: |
59-
# If runner architecture is x64 set JAVA_HOME_17_X64 otherwise set to JAVA_HOME_17_arm64
60-
if [[ '${{ runner.arch }}' == 'X64' ]]; then
61-
JDK="$JAVA_HOME_17_X64"
62-
else
63-
JDK="$JAVA_HOME_17_arm64"
64-
fi
65-
# Build JTReg and move files to the proper locations
66-
bash make/build.sh --jdk "$JDK"
67-
mkdir ../installed
68-
mv build/images/jtreg/* ../installed
69-
working-directory: jtreg/src
70-
shell: bash
71-
if: steps.get-cached-jtreg.outputs.cache-hit != 'true'
7248

7349
- name: 'Export path to where JTReg is installed'
7450
id: path-name

.github/actions/get-msys2/action.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,15 @@ runs:
3030
using: composite
3131
steps:
3232
- name: 'Install MSYS2'
33-
# use a specific release of msys2/setup-msys2 to prevent jtreg build failures on newer release
34-
uses: msys2/setup-msys2@7efe20baefed56359985e327d329042cde2434ff
33+
id: msys2
34+
uses: msys2/setup-msys2@v2.28.0
3535
with:
3636
install: 'autoconf tar unzip zip make'
3737
path-type: minimal
38-
location: ${{ runner.tool_cache }}/msys2
38+
release: false
3939

4040
# We can't run bash until this is completed, so stick with pwsh
4141
- name: 'Set MSYS2 path'
4242
run: |
43-
# Prepend msys2/msys64/usr/bin to the PATH
44-
echo "$env:RUNNER_TOOL_CACHE/msys2/msys64/usr/bin" >> $env:GITHUB_PATH
43+
echo "${{ steps.msys2.outputs.msys2-location }}/usr/bin" >> $env:GITHUB_PATH
4544
shell: pwsh

.github/actions/upload-bundles/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,9 @@ runs:
6969
shell: bash
7070

7171
- name: 'Upload bundles artifact'
72-
uses: actions/upload-artifact@v3
72+
uses: actions/upload-artifact@v4
7373
with:
7474
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
7575
path: bundles
76-
retention-days: 1
76+
retention-days: 5
7777
if: steps.bundles.outputs.bundles-found == 'true'

.github/scripts/gen-build-failure-report.sh

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,19 @@
2424
# questions.
2525
#
2626

27+
# Import common utils
28+
. .github/scripts/report-utils.sh
29+
2730
GITHUB_STEP_SUMMARY="$1"
2831
BUILD_DIR="$(ls -d build/*)"
2932

3033
# Send signal to the do-build action that we failed
3134
touch "$BUILD_DIR/build-failure"
3235

36+
# Collect hs_errs for build-time crashes, e.g. javac, jmod, jlink, CDS.
37+
# These usually land in make/
38+
hs_err_files=$(ls make/hs_err*.log 2> /dev/null || true)
39+
3340
(
3441
echo '### :boom: Build failure summary'
3542
echo ''
@@ -46,6 +53,20 @@ touch "$BUILD_DIR/build-failure"
4653
echo '</details>'
4754
echo ''
4855

56+
for hs_err in $hs_err_files; do
57+
echo "<details><summary><b>View HotSpot error log: "$hs_err"</b></summary>"
58+
echo ''
59+
echo '```'
60+
echo "$hs_err:"
61+
echo ''
62+
cat "$hs_err"
63+
echo '```'
64+
echo '</details>'
65+
echo ''
66+
done
67+
4968
echo ''
5069
echo ':arrow_right: To see the entire test log, click the job in the list to the left. To download logs, see the `failure-logs` [artifact above](#artifacts).'
5170
) >> $GITHUB_STEP_SUMMARY
71+
72+
truncate_summary

.github/scripts/gen-test-results.sh

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@
2424
# questions.
2525
#
2626

27+
# Import common utils
28+
. .github/scripts/report-utils.sh
29+
2730
GITHUB_STEP_SUMMARY="$1"
2831

2932
test_suite_name=$(cat build/run-test-prebuilt/test-support/test-last-ids.txt)
@@ -89,18 +92,6 @@ for test in $failures $errors; do
8992
fi
9093
done >> $GITHUB_STEP_SUMMARY
9194

92-
# With many failures, the summary can easily exceed 1024 kB, the limit set by Github
93-
# Trim it down if so.
94-
summary_size=$(wc -c < $GITHUB_STEP_SUMMARY)
95-
if [[ $summary_size -gt 1000000 ]]; then
96-
# Trim to below 1024 kB, and cut off after the last detail group
97-
head -c 1000000 $GITHUB_STEP_SUMMARY | tac | sed -n -e '/<\/details>/,$ p' | tac > $GITHUB_STEP_SUMMARY.tmp
98-
mv $GITHUB_STEP_SUMMARY.tmp $GITHUB_STEP_SUMMARY
99-
(
100-
echo ''
101-
echo ':x: **WARNING: Summary is too large and has been truncated.**'
102-
echo ''
103-
) >> $GITHUB_STEP_SUMMARY
104-
fi
105-
10695
echo ':arrow_right: To see the entire test log, click the job in the list to the left.' >> $GITHUB_STEP_SUMMARY
96+
97+
truncate_summary

.github/scripts/report-utils.sh

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
#!/bin/bash
2+
#
3+
# Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.
4+
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5+
#
6+
# This code is free software; you can redistribute it and/or modify it
7+
# under the terms of the GNU General Public License version 2 only, as
8+
# published by the Free Software Foundation. Oracle designates this
9+
# particular file as subject to the "Classpath" exception as provided
10+
# by Oracle in the LICENSE file that accompanied this code.
11+
#
12+
# This code is distributed in the hope that it will be useful, but WITHOUT
13+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15+
# version 2 for more details (a copy is included in the LICENSE file that
16+
# accompanied this code).
17+
#
18+
# You should have received a copy of the GNU General Public License version
19+
# 2 along with this work; if not, write to the Free Software Foundation,
20+
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
21+
#
22+
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
23+
# or visit www.oracle.com if you need additional information or have any
24+
# questions.
25+
#
26+
27+
function truncate_summary() {
28+
# With large hs_errs, the summary can easily exceed 1024 kB, the limit set by Github
29+
# Trim it down if so.
30+
summary_size=$(wc -c < $GITHUB_STEP_SUMMARY)
31+
if [[ $summary_size -gt 1000000 ]]; then
32+
# Trim to below 1024 kB, and cut off after the last detail group
33+
head -c 1000000 $GITHUB_STEP_SUMMARY | tac | sed -n -e '/<\/details>/,$ p' | tac > $GITHUB_STEP_SUMMARY.tmp
34+
mv $GITHUB_STEP_SUMMARY.tmp $GITHUB_STEP_SUMMARY
35+
(
36+
echo ''
37+
echo ':x: **WARNING: Summary is too large and has been truncated.**'
38+
echo ''
39+
) >> $GITHUB_STEP_SUMMARY
40+
fi
41+
}

0 commit comments

Comments
 (0)