Repository navigation
Fix Oracle JDK 21 e2e and warn on archived GA fallback - #1327
Merged
Merged
Conversation
Oracle no longer serves JDK 21 under /java/21/latest/, so a major-only request falls back to the archived 21 GA build and reports version 21. The e2e check required a concrete version for floating Oracle requests, so the oracle 21 jobs failed. Move floating Oracle e2e coverage to JDK 25 and keep a single oracle 21 job that exercises the archive fallback without the concrete-version requirement. Warn when a major-only request falls back from /latest/ to the archived GA release, since that build may lack security updates. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues block approval of the Oracle JDK coverage and archive-fallback warning changes.
No open issues 🎉
What changed in this PR
This PR updates Oracle JDK end-to-end coverage and warns users when a major-only request falls back to an archived GA release that may lack security updates. It affects oracle, not oracle-openjdk.
Changes:
- Moves floating Oracle JDK coverage to version 25 across Linux, macOS, and Windows.
- Retains an Ubuntu JDK 21 archive-fallback case without requiring a concrete version output.
- Adds the fallback warning, a unit test, and the corresponding runtime bundle update.
| File | Description |
|---|---|
src/distributions/oracle/installer.ts |
Warns when the latest endpoint is unavailable and archive fallback succeeds. |
dist/setup/182.index.js |
Includes the warning in the generated runtime bundle. |
.github/workflows/e2e-versions.yml |
Updates Oracle version coverage and exempts JDK 21 from the concrete-version check. |
__tests__/distributors/oracle-installer.test.ts |
Tests the warning after a latest-endpoint 404 and successful archive fallback. |
Review effort: Balanced
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description:
The scheduled
Validate Java e2eworkflow has been failing since at least 2026-11-11 on the threeoracle 21jobs (for example, run 43559040712). Oracle no longer serves JDK 21 underhttps://download.oracle.com/java/21/latest/. That URL returns 404, and so does the JDK 17 one. The installer correctly falls back to/java/21/archive/jdk-21_..., which is the original 21 GA build, so theversionoutput is21. The e2e check requires a concrete version for floating Oracle requests, soverify-java.shfailed with "Expected a concrete version output for a floating JDK".Changes:
e2e-versions.yml): Oracle JDK floating-version coverage now uses JDK 25, which is still served under/latest/(confirmed 200 on Linux, macOS and Windows x64). A singleoracle 21job onubuntu-latestremains to cover the archive fallback, and it skips the concrete-version requirement./latest/and falls back to/archive/, the action now logs a warning. The message says the archived GA release may not include security updates. Before this, users asking for21silently got the unpatched 21 GA build.This affects
distribution: oracle(Oracle JDK) only, notoracle-openjdk.Related issue:
N/A
Check list:
npm run checklocally (format, lint, build, test) and all checks pass. (45 suites, 1719 tests passed)