| # |
| # Copyright (c) 2023, 2024, Oracle and/or its affiliates. All rights reserved. |
| # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
| # |
| # This code is free software; you can redistribute it and/or modify it |
| # under the terms of the GNU General Public License version 2 only, as |
| # published by the Free Software Foundation. Oracle designates this |
| # particular file as subject to the "Classpath" exception as provided |
| # by Oracle in the LICENSE file that accompanied this code. |
| # |
| # This code is distributed in the hope that it will be useful, but WITHOUT |
| # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
| # version 2 for more details (a copy is included in the LICENSE file that |
| # accompanied this code). |
| # |
| # You should have received a copy of the GNU General Public License version |
| # 2 along with this work; if not, write to the Free Software Foundation, |
| # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
| # |
| # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
| # or visit www.oracle.com if you need additional information or have any |
| # questions. |
| # |
| |
| name: 'Get JTReg' |
| description: 'Download JTReg from cache or source location' |
| outputs: |
| path: |
| description: 'Path to the installed JTReg' |
| value: ${{ steps.path-name.outputs.path }} |
| |
| runs: |
| using: composite |
| steps: |
| - name: 'Get JTReg version configuration' |
| id: version |
| uses: ./.github/actions/config |
| with: |
| var: JTREG_VERSION |
| |
| - name: 'Check cache for JTReg' |
| id: get-cached-jtreg |
| uses: actions/cache@v4 |
| with: |
| path: jtreg/installed |
| key: jtreg-${{ steps.version.outputs.value }} |
| |
| - name: 'Checkout the JTReg source' |
| uses: actions/checkout@v4 |
| with: |
| repository: openjdk/jtreg |
| ref: jtreg-${{ steps.version.outputs.value }} |
| path: jtreg/src |
| if: steps.get-cached-jtreg.outputs.cache-hit != 'true' |
| |
| - name: 'Build JTReg' |
| run: | |
| # If runner architecture is x64 set JAVA_HOME_17_X64 otherwise set to JAVA_HOME_17_arm64 |
| if [[ '${{ runner.arch }}' == 'X64' ]]; then |
| JDK="$JAVA_HOME_17_X64" |
| else |
| JDK="$JAVA_HOME_17_arm64" |
| fi |
| # Build JTReg and move files to the proper locations |
| bash make/build.sh --jdk "$JDK" |
| mkdir ../installed |
| mv build/images/jtreg/* ../installed |
| working-directory: jtreg/src |
| shell: bash |
| if: steps.get-cached-jtreg.outputs.cache-hit != 'true' |
| |
| - name: 'Export path to where JTReg is installed' |
| id: path-name |
| run: | |
| # Export the path |
| echo 'path=jtreg/installed' >> $GITHUB_OUTPUT |
| shell: bash |