Skip to content

Commit 4b1b3d4

Browse files
Add support for Eclipse Temurin (actions#201)
* Add support for Adoptium OpenJDK Refs actions#191 * Rename distribution to Eclipse Temurin * Update end-to-end tests in GitHub workflows * Exclude e2e tests for Temurin JREs for now * fix version * Update e2e-versions.yml * Handle Eclipse Temurin version suffixes ("beta") * Add test for new version suffix "beta" * Add updated `index.js` * fix an issue Co-authored-by: Maxim Lobanov <maxim-lobanov@github.com>
1 parent ad01d13 commit 4b1b3d4

File tree

10 files changed

+9484
-11
lines changed

10 files changed

+9484
-11
lines changed

.github/workflows/e2e-local-file.yml

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,4 +83,41 @@ jobs:
8383
architecture: x64
8484
- name: Verify Java version
8585
run: bash __tests__/verify-java.sh "11.0" "${{ steps.setup-java.outputs.path }}"
86-
shell: bash
86+
shell: bash
87+
88+
setup-java-local-file-temurin:
89+
name: Validate installation from local file Eclipse Temurin
90+
runs-on: ${{ matrix.os }}
91+
strategy:
92+
fail-fast: false
93+
matrix:
94+
os: [macos-latest, windows-latest, ubuntu-latest]
95+
steps:
96+
- name: Checkout
97+
uses: actions/checkout@v2
98+
- name: Download Eclipse Temurin file
99+
run: |
100+
if ($IsLinux) {
101+
$downloadUrl = "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.12%2B7/OpenJDK11U-jdk_x64_linux_hotspot_11.0.12_7.tar.gz"
102+
$localFilename = "java_package.tar.gz"
103+
} elseif ($IsMacOS) {
104+
$downloadUrl = "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.12%2B7/OpenJDK11U-jdk_x64_mac_hotspot_11.0.12_7.tar.gz"
105+
$localFilename = "java_package.tar.gz"
106+
} elseif ($IsWindows) {
107+
$downloadUrl = "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.12%2B7/OpenJDK11U-jdk_x64_windows_hotspot_11.0.12_7.zip"
108+
$localFilename = "java_package.zip"
109+
}
110+
echo "LocalFilename=$localFilename" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
111+
(New-Object System.Net.WebClient).DownloadFile($downloadUrl, "$env:RUNNER_TEMP/$localFilename")
112+
shell: pwsh
113+
- name: setup-java
114+
uses: ./
115+
id: setup-java
116+
with:
117+
distribution: 'jdkfile'
118+
jdkFile: ${{ runner.temp }}/${{ env.LocalFilename }}
119+
java-version: '11.0.0-ea'
120+
architecture: x64
121+
- name: Verify Java version
122+
run: bash __tests__/verify-java.sh "11.0.12" "${{ steps.setup-java.outputs.path }}"
123+
shell: bash

.github/workflows/e2e-versions.yml

Lines changed: 41 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ on:
1111
- '**.md'
1212
schedule:
1313
- cron: '0 */12 * * *'
14+
workflow_dispatch:
1415
jobs:
1516
setup-java-major-versions:
1617
name: ${{ matrix.distribution }} ${{ matrix.version }} (jdk-x64) - ${{ matrix.os }}
@@ -19,8 +20,8 @@ jobs:
1920
fail-fast: false
2021
matrix:
2122
os: [macos-latest, windows-latest, ubuntu-latest]
22-
distribution: ['adopt', 'adopt-openj9', 'zulu'] # internally 'adopt-hotspot' is the same as 'adopt'
23-
version: ['8', '11', '15']
23+
distribution: ['adopt', 'adopt-openj9', 'temurin', 'zulu'] # internally 'adopt-hotspot' is the same as 'adopt'
24+
version: ['8', '11', '16']
2425
steps:
2526
- name: Checkout
2627
uses: actions/checkout@v2
@@ -57,6 +58,15 @@ jobs:
5758
- distribution: 'adopt'
5859
version: '12.0.2+10.1'
5960
os: ubuntu-latest
61+
- distribution: 'temurin'
62+
version: '16.0.2+7'
63+
os: macos-latest
64+
- distribution: 'temurin'
65+
version: '16.0.2+7'
66+
os: windows-latest
67+
- distribution: 'temurin'
68+
version: '16.0.2+7'
69+
os: ubuntu-latest
6070
steps:
6171
- name: Checkout
6272
uses: actions/checkout@v2
@@ -78,7 +88,7 @@ jobs:
7888
fail-fast: false
7989
matrix:
8090
os: [macos-latest, windows-latest, ubuntu-latest]
81-
distribution: ['adopt', 'zulu']
91+
distribution: ['adopt', 'temurin', 'zulu']
8292
steps:
8393
- name: Checkout
8494
uses: actions/checkout@v2
@@ -137,6 +147,28 @@ jobs:
137147
run: bash __tests__/verify-java.sh "${{ matrix.version }}" "${{ steps.setup-java.outputs.path }}"
138148
shell: bash
139149

150+
setup-java-ea-versions-temurin:
151+
name: temurin ${{ matrix.version }} (jdk-x64) - ${{ matrix.os }}
152+
needs: setup-java-major-minor-versions
153+
runs-on: ${{ matrix.os }}
154+
strategy:
155+
fail-fast: false
156+
matrix:
157+
os: [macos-latest, windows-latest, ubuntu-latest]
158+
version: ['17-ea']
159+
steps:
160+
- name: Checkout
161+
uses: actions/checkout@v2
162+
- name: setup-java
163+
uses: ./
164+
id: setup-java
165+
with:
166+
java-version: ${{ matrix.version }}
167+
distribution: temurin
168+
- name: Verify Java
169+
run: bash __tests__/verify-java.sh "${{ matrix.version }}" "${{ steps.setup-java.outputs.path }}"
170+
shell: bash
171+
140172
setup-java-custom-package-type:
141173
name: ${{ matrix.distribution }} ${{ matrix.version }} (${{ matrix.java-package }}-x64) - ${{ matrix.os }}
142174
needs: setup-java-major-minor-versions
@@ -145,10 +177,10 @@ jobs:
145177
fail-fast: false
146178
matrix:
147179
os: [macos-latest, windows-latest, ubuntu-latest]
148-
distribution: ['adopt', 'zulu']
180+
distribution: ['adopt', 'temurin', 'zulu']
149181
java-package: ['jre']
150182
version:
151-
- '15.0'
183+
- '16.0'
152184
include:
153185
- distribution: 'zulu'
154186
java-package: jre+fx
@@ -158,6 +190,10 @@ jobs:
158190
java-package: jdk+fx
159191
version: '8.0.242'
160192
os: ubuntu-latest
193+
exclude:
194+
# Eclipse Temurin currently doesn't publish JREs, only JDKs
195+
- distribution: 'temurin'
196+
java-package: 'jre'
161197
steps:
162198
- name: Checkout
163199
uses: actions/checkout@v2

README.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ This action provides the following functionality for GitHub Actions runners:
1313
- Registering problem matchers for error output
1414

1515
## V2 vs V1
16-
- V2 supports custom distributions and provides support for Zulu OpenJDK and Adopt OpenJDK out of the box. V1 supports only Zulu OpenJDK
16+
- V2 supports custom distributions and provides support for Zulu OpenJDK, Adopt OpenJDK and Eclipse Temurin out of the box. V1 supports only Zulu OpenJDK
1717
- V2 requires you to specify distribution along with the version. V1 defaults to Zulu OpenJDK, only version input is required. Follow [the migration guide](docs/switching-to-v2.md) to switch from V1 to V2
1818

1919
## Usage
@@ -31,6 +31,17 @@ steps:
3131
- run: java -cp java HelloWorldApp
3232
```
3333
34+
**Eclipse Temurin**
35+
```yaml
36+
steps:
37+
- uses: actions/checkout@v2
38+
- uses: actions/setup-java@v2
39+
with:
40+
distribution: 'temurin' # See 'Supported distributions' for available options
41+
java-version: '8'
42+
- run: java -cp java HelloWorldApp
43+
```
44+
3445
**Zulu OpenJDK**
3546
```yaml
3647
steps:
@@ -55,6 +66,7 @@ Currently, the following distributions are supported:
5566
| `zulu` | Zulu OpenJDK | [Link](https://www.azul.com/downloads/zulu-community/?package=jdk) | [Link](https://www.azul.com/products/zulu-and-zulu-enterprise/zulu-terms-of-use/) |
5667
| `adopt` or `adopt-hotspot` | Adopt OpenJDK Hotspot | [Link](https://adoptopenjdk.net/) | [Link](https://adoptopenjdk.net/about.html)
5768
| `adopt-openj9` | Adopt OpenJDK OpenJ9 | [Link](https://adoptopenjdk.net/) | [Link](https://adoptopenjdk.net/about.html)
69+
| `temurin` | Eclipse Temurin | [Link](https://adoptium.net/) | [Link](https://adoptium.net/about.html)
5870

5971
**NOTE:** The different distributors can provide discrepant list of available versions / supported configurations. Please refer to the official documentation to see the list of supported versions.
6072

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy