diff --git a/__tests__/data/zulu-linux.json b/__tests__/data/zulu-linux.json index 94f89b63..c74487e2 100644 --- a/__tests__/data/zulu-linux.json +++ b/__tests__/data/zulu-linux.json @@ -6,9 +6,9 @@ "java_version": [ 8, 0, - 5, - 13 + 5 ], + "openjdk_build_number": 13, "distro_version": [ 8, 1, @@ -25,9 +25,9 @@ "java_version": [ 8, 0, - 11, - 12 + 11 ], + "openjdk_build_number": 12, "distro_version": [ 8, 2, @@ -44,9 +44,9 @@ "java_version": [ 8, 0, - 131, - 11 + 131 ], + "openjdk_build_number": 11, "distro_version": [ 8, 21, @@ -63,9 +63,9 @@ "java_version": [ 8, 0, - 144, - 1 + 144 ], + "openjdk_build_number": 1, "distro_version": [ 8, 23, @@ -82,9 +82,9 @@ "java_version": [ 8, 0, - 152, - 16 + 152 ], + "openjdk_build_number": 16, "distro_version": [ 8, 25, @@ -101,9 +101,9 @@ "java_version": [ 8, 0, - 252, - 14 + 252 ], + "openjdk_build_number": 14, "distro_version": [ 8, 46, @@ -120,9 +120,9 @@ "java_version": [ 8, 0, - 262, - 17 + 262 ], + "openjdk_build_number": 17, "distro_version": [ 8, 48, @@ -139,9 +139,9 @@ "java_version": [ 8, 0, - 262, - 19 + 262 ], + "openjdk_build_number": 19, "distro_version": [ 8, 48, @@ -158,9 +158,9 @@ "java_version": [ 8, 0, - 262, - 18 + 262 ], + "openjdk_build_number": 18, "distro_version": [ 8, 48, @@ -177,9 +177,9 @@ "java_version": [ 8, 0, - 282, - 8 + 282 ], + "openjdk_build_number": 8, "distro_version": [ 8, 52, @@ -196,9 +196,9 @@ "java_version": [ 9, 0, - 0, 0 ], + "openjdk_build_number": 0, "distro_version": [ 9, 0, @@ -215,9 +215,9 @@ "java_version": [ 9, 0, - 1, - 0 + 1 ], + "openjdk_build_number": 0, "distro_version": [ 9, 0, @@ -234,9 +234,9 @@ "java_version": [ 10, 0, - 1, - 9 + 1 ], + "openjdk_build_number": 9, "distro_version": [ 10, 2, @@ -253,9 +253,9 @@ "java_version": [ 10, 0, - 2, - 13 + 2 ], + "openjdk_build_number": 13, "distro_version": [ 10, 3, @@ -272,9 +272,9 @@ "java_version": [ 11, 0, - 1, - 13 + 1 ], + "openjdk_build_number": 13, "distro_version": [ 11, 2, @@ -291,9 +291,9 @@ "java_version": [ 11, 0, - 2, - 7 + 2 ], + "openjdk_build_number": 7, "distro_version": [ 11, 29, @@ -310,9 +310,9 @@ "java_version": [ 11, 0, - 3, - 7 + 3 ], + "openjdk_build_number": 7, "distro_version": [ 11, 31, @@ -329,9 +329,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -348,9 +348,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -367,9 +367,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -386,9 +386,9 @@ "java_version": [ 11, 0, - 10, - 9 + 10 ], + "openjdk_build_number": 9, "distro_version": [ 11, 45, @@ -405,9 +405,9 @@ "java_version": [ 12, 0, - 0, - 33 + 0 ], + "openjdk_build_number": 33, "distro_version": [ 12, 1, @@ -424,9 +424,9 @@ "java_version": [ 12, 0, - 1, - 12 + 1 ], + "openjdk_build_number": 12, "distro_version": [ 12, 2, @@ -443,9 +443,9 @@ "java_version": [ 12, 0, - 2, - 3 + 2 ], + "openjdk_build_number": 3, "distro_version": [ 12, 3, @@ -462,9 +462,9 @@ "java_version": [ 13, 0, - 0, - 33 + 0 ], + "openjdk_build_number": 33, "distro_version": [ 13, 27, @@ -481,9 +481,9 @@ "java_version": [ 13, 0, - 1, - 10 + 1 ], + "openjdk_build_number": 10, "distro_version": [ 13, 28, @@ -500,9 +500,9 @@ "java_version": [ 13, 0, - 2, - 6 + 2 ], + "openjdk_build_number": 6, "distro_version": [ 13, 29, @@ -519,9 +519,9 @@ "java_version": [ 13, 0, - 6, - 5 + 6 ], + "openjdk_build_number": 5, "distro_version": [ 13, 37, @@ -538,9 +538,9 @@ "java_version": [ 14, 0, - 0, - 36 + 0 ], + "openjdk_build_number": 36, "distro_version": [ 14, 27, @@ -557,9 +557,9 @@ "java_version": [ 14, 0, - 1, - 8 + 1 ], + "openjdk_build_number": 8, "distro_version": [ 14, 28, @@ -576,9 +576,9 @@ "java_version": [ 14, 0, - 2, - 12 + 2 ], + "openjdk_build_number": 12, "distro_version": [ 14, 29, @@ -595,9 +595,9 @@ "java_version": [ 15, 0, - 0, - 36 + 0 ], + "openjdk_build_number": 36, "distro_version": [ 15, 27, @@ -614,9 +614,9 @@ "java_version": [ 15, 0, - 1, - 8 + 1 ], + "openjdk_build_number": 8, "distro_version": [ 15, 28, @@ -633,9 +633,9 @@ "java_version": [ 15, 0, - 1, - 9 + 1 ], + "openjdk_build_number": 9, "distro_version": [ 15, 28, @@ -652,9 +652,9 @@ "java_version": [ 15, 0, - 2, - 7 + 2 ], + "openjdk_build_number": 7, "distro_version": [ 15, 29, @@ -671,9 +671,9 @@ "java_version": [ 21, 0, - 2, - 6 + 2 ], + "openjdk_build_number": 6, "distro_version": [ 21, 32, diff --git a/__tests__/data/zulu-releases-default.json b/__tests__/data/zulu-releases-default.json index 52a61367..16ed9777 100644 --- a/__tests__/data/zulu-releases-default.json +++ b/__tests__/data/zulu-releases-default.json @@ -6,9 +6,9 @@ "java_version": [ 8, 0, - 5, - 13 + 5 ], + "openjdk_build_number": 13, "distro_version": [ 8, 1, @@ -25,9 +25,9 @@ "java_version": [ 8, 0, - 11, - 12 + 11 ], + "openjdk_build_number": 12, "distro_version": [ 8, 2, @@ -44,9 +44,9 @@ "java_version": [ 8, 0, - 131, - 11 + 131 ], + "openjdk_build_number": 11, "distro_version": [ 8, 21, @@ -63,9 +63,9 @@ "java_version": [ 8, 0, - 144, - 1 + 144 ], + "openjdk_build_number": 1, "distro_version": [ 8, 23, @@ -82,9 +82,9 @@ "java_version": [ 8, 0, - 152, - 16 + 152 ], + "openjdk_build_number": 16, "distro_version": [ 8, 25, @@ -101,9 +101,9 @@ "java_version": [ 8, 0, - 252, - 14 + 252 ], + "openjdk_build_number": 14, "distro_version": [ 8, 46, @@ -120,9 +120,9 @@ "java_version": [ 8, 0, - 262, - 17 + 262 ], + "openjdk_build_number": 17, "distro_version": [ 8, 48, @@ -139,9 +139,9 @@ "java_version": [ 8, 0, - 262, - 19 + 262 ], + "openjdk_build_number": 19, "distro_version": [ 8, 48, @@ -158,9 +158,9 @@ "java_version": [ 8, 0, - 262, - 18 + 262 ], + "openjdk_build_number": 18, "distro_version": [ 8, 48, @@ -177,9 +177,9 @@ "java_version": [ 8, 0, - 282, - 8 + 282 ], + "openjdk_build_number": 8, "distro_version": [ 8, 52, @@ -196,9 +196,9 @@ "java_version": [ 9, 0, - 0, 0 ], + "openjdk_build_number": 0, "distro_version": [ 9, 0, @@ -215,9 +215,9 @@ "java_version": [ 9, 0, - 1, - 0 + 1 ], + "openjdk_build_number": 0, "distro_version": [ 9, 0, @@ -234,9 +234,9 @@ "java_version": [ 10, 0, - 1, - 9 + 1 ], + "openjdk_build_number": 9, "distro_version": [ 10, 2, @@ -253,9 +253,9 @@ "java_version": [ 10, 0, - 2, - 13 + 2 ], + "openjdk_build_number": 13, "distro_version": [ 10, 3, @@ -272,9 +272,9 @@ "java_version": [ 11, 0, - 1, - 13 + 1 ], + "openjdk_build_number": 13, "distro_version": [ 11, 2, @@ -291,9 +291,9 @@ "java_version": [ 11, 0, - 2, - 7 + 2 ], + "openjdk_build_number": 7, "distro_version": [ 11, 29, @@ -310,9 +310,9 @@ "java_version": [ 11, 0, - 3, - 7 + 3 ], + "openjdk_build_number": 7, "distro_version": [ 11, 31, @@ -329,9 +329,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -348,9 +348,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -367,9 +367,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -386,9 +386,9 @@ "java_version": [ 11, 0, - 10, - 9 + 10 ], + "openjdk_build_number": 9, "distro_version": [ 11, 45, @@ -405,9 +405,9 @@ "java_version": [ 12, 0, - 0, - 33 + 0 ], + "openjdk_build_number": 33, "distro_version": [ 12, 1, @@ -424,9 +424,9 @@ "java_version": [ 12, 0, - 1, - 12 + 1 ], + "openjdk_build_number": 12, "distro_version": [ 12, 2, @@ -443,9 +443,9 @@ "java_version": [ 12, 0, - 2, - 3 + 2 ], + "openjdk_build_number": 3, "distro_version": [ 12, 3, @@ -462,9 +462,9 @@ "java_version": [ 13, 0, - 0, - 33 + 0 ], + "openjdk_build_number": 33, "distro_version": [ 13, 27, @@ -481,9 +481,9 @@ "java_version": [ 13, 0, - 1, - 10 + 1 ], + "openjdk_build_number": 10, "distro_version": [ 13, 28, @@ -500,9 +500,9 @@ "java_version": [ 13, 0, - 2, - 6 + 2 ], + "openjdk_build_number": 6, "distro_version": [ 13, 29, @@ -519,9 +519,9 @@ "java_version": [ 13, 0, - 6, - 5 + 6 ], + "openjdk_build_number": 5, "distro_version": [ 13, 37, @@ -538,9 +538,9 @@ "java_version": [ 14, 0, - 0, - 36 + 0 ], + "openjdk_build_number": 36, "distro_version": [ 14, 27, @@ -557,9 +557,9 @@ "java_version": [ 14, 0, - 1, - 8 + 1 ], + "openjdk_build_number": 8, "distro_version": [ 14, 28, @@ -576,9 +576,9 @@ "java_version": [ 14, 0, - 2, - 12 + 2 ], + "openjdk_build_number": 12, "distro_version": [ 14, 29, @@ -595,9 +595,9 @@ "java_version": [ 15, 0, - 0, - 36 + 0 ], + "openjdk_build_number": 36, "distro_version": [ 15, 27, @@ -614,9 +614,9 @@ "java_version": [ 15, 0, - 1, - 8 + 1 ], + "openjdk_build_number": 8, "distro_version": [ 15, 28, @@ -633,9 +633,9 @@ "java_version": [ 15, 0, - 1, - 9 + 1 ], + "openjdk_build_number": 9, "distro_version": [ 15, 28, @@ -652,9 +652,9 @@ "java_version": [ 15, 0, - 2, - 7 + 2 ], + "openjdk_build_number": 7, "distro_version": [ 15, 29, diff --git a/__tests__/data/zulu-windows.json b/__tests__/data/zulu-windows.json index 7e44242f..dcfb9462 100644 --- a/__tests__/data/zulu-windows.json +++ b/__tests__/data/zulu-windows.json @@ -6,9 +6,9 @@ "java_version": [ 8, 0, - 5, - 13 + 5 ], + "openjdk_build_number": 13, "distro_version": [ 8, 1, @@ -25,9 +25,9 @@ "java_version": [ 8, 0, - 11, - 12 + 11 ], + "openjdk_build_number": 12, "distro_version": [ 8, 2, @@ -44,9 +44,9 @@ "java_version": [ 8, 0, - 131, - 11 + 131 ], + "openjdk_build_number": 11, "distro_version": [ 8, 21, @@ -63,9 +63,9 @@ "java_version": [ 8, 0, - 144, - 1 + 144 ], + "openjdk_build_number": 1, "distro_version": [ 8, 23, @@ -82,9 +82,9 @@ "java_version": [ 8, 0, - 152, - 16 + 152 ], + "openjdk_build_number": 16, "distro_version": [ 8, 25, @@ -101,9 +101,9 @@ "java_version": [ 8, 0, - 252, - 14 + 252 ], + "openjdk_build_number": 14, "distro_version": [ 8, 46, @@ -120,9 +120,9 @@ "java_version": [ 8, 0, - 262, - 17 + 262 ], + "openjdk_build_number": 17, "distro_version": [ 8, 48, @@ -139,9 +139,9 @@ "java_version": [ 8, 0, - 262, - 19 + 262 ], + "openjdk_build_number": 19, "distro_version": [ 8, 48, @@ -158,9 +158,9 @@ "java_version": [ 8, 0, - 262, - 18 + 262 ], + "openjdk_build_number": 18, "distro_version": [ 8, 48, @@ -177,9 +177,9 @@ "java_version": [ 8, 0, - 282, - 8 + 282 ], + "openjdk_build_number": 8, "distro_version": [ 8, 52, @@ -196,9 +196,9 @@ "java_version": [ 9, 0, - 0, 0 ], + "openjdk_build_number": 0, "distro_version": [ 9, 0, @@ -215,9 +215,9 @@ "java_version": [ 9, 0, - 1, - 0 + 1 ], + "openjdk_build_number": 0, "distro_version": [ 9, 0, @@ -234,9 +234,9 @@ "java_version": [ 10, 0, - 1, - 9 + 1 ], + "openjdk_build_number": 9, "distro_version": [ 10, 2, @@ -253,9 +253,9 @@ "java_version": [ 10, 0, - 2, - 13 + 2 ], + "openjdk_build_number": 13, "distro_version": [ 10, 3, @@ -272,9 +272,9 @@ "java_version": [ 11, 0, - 1, - 13 + 1 ], + "openjdk_build_number": 13, "distro_version": [ 11, 2, @@ -291,9 +291,9 @@ "java_version": [ 11, 0, - 2, - 7 + 2 ], + "openjdk_build_number": 7, "distro_version": [ 11, 29, @@ -310,9 +310,9 @@ "java_version": [ 11, 0, - 3, - 7 + 3 ], + "openjdk_build_number": 7, "distro_version": [ 11, 31, @@ -329,9 +329,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -348,9 +348,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -367,9 +367,9 @@ "java_version": [ 11, 0, - 5, - 10 + 5 ], + "openjdk_build_number": 10, "distro_version": [ 11, 35, @@ -386,9 +386,9 @@ "java_version": [ 11, 0, - 10, - 9 + 10 ], + "openjdk_build_number": 9, "distro_version": [ 11, 45, @@ -405,9 +405,9 @@ "java_version": [ 12, 0, - 0, - 33 + 0 ], + "openjdk_build_number": 33, "distro_version": [ 12, 1, @@ -424,9 +424,9 @@ "java_version": [ 12, 0, - 1, - 12 + 1 ], + "openjdk_build_number": 12, "distro_version": [ 12, 2, @@ -443,9 +443,9 @@ "java_version": [ 12, 0, - 2, - 3 + 2 ], + "openjdk_build_number": 3, "distro_version": [ 12, 3, @@ -462,9 +462,9 @@ "java_version": [ 13, 0, - 0, - 33 + 0 ], + "openjdk_build_number": 33, "distro_version": [ 13, 27, @@ -481,9 +481,9 @@ "java_version": [ 13, 0, - 1, - 10 + 1 ], + "openjdk_build_number": 10, "distro_version": [ 13, 28, @@ -500,9 +500,9 @@ "java_version": [ 13, 0, - 2, - 6 + 2 ], + "openjdk_build_number": 6, "distro_version": [ 13, 29, @@ -519,9 +519,9 @@ "java_version": [ 13, 0, - 6, - 5 + 6 ], + "openjdk_build_number": 5, "distro_version": [ 13, 37, @@ -538,9 +538,9 @@ "java_version": [ 14, 0, - 0, - 36 + 0 ], + "openjdk_build_number": 36, "distro_version": [ 14, 27, @@ -557,9 +557,9 @@ "java_version": [ 14, 0, - 1, - 8 + 1 ], + "openjdk_build_number": 8, "distro_version": [ 14, 28, @@ -576,9 +576,9 @@ "java_version": [ 14, 0, - 2, - 12 + 2 ], + "openjdk_build_number": 12, "distro_version": [ 14, 29, @@ -595,9 +595,9 @@ "java_version": [ 15, 0, - 0, - 36 + 0 ], + "openjdk_build_number": 36, "distro_version": [ 15, 27, @@ -614,9 +614,9 @@ "java_version": [ 15, 0, - 1, - 8 + 1 ], + "openjdk_build_number": 8, "distro_version": [ 15, 28, @@ -633,9 +633,9 @@ "java_version": [ 15, 0, - 1, - 9 + 1 ], + "openjdk_build_number": 9, "distro_version": [ 15, 28, @@ -652,9 +652,9 @@ "java_version": [ 15, 0, - 2, - 7 + 2 ], + "openjdk_build_number": 7, "distro_version": [ 15, 29, @@ -671,9 +671,9 @@ "java_version": [ 17, 0, - 10, - 7 + 10 ], + "openjdk_build_number": 7, "distro_version": [ 17, 48, diff --git a/dist/setup/index.js b/dist/setup/index.js index b4eff3af..aa5c25f3 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -80691,8 +80691,14 @@ class ZuluDistribution extends base_installer_1.JavaBase { return __awaiter(this, void 0, void 0, function* () { const availableVersionsRaw = yield this.getAvailableVersions(); const availableVersions = availableVersionsRaw.map(item => { + // The Azul Metadata API reports the JDK build number separately from + // java_version (e.g. java_version=[17,0,7], openjdk_build_number=7). + // Append it so the resulting semver retains the build (e.g. 17.0.7+7). + const javaVersion = item.openjdk_build_number != null + ? [...item.java_version, item.openjdk_build_number] + : item.java_version; return { - version: (0, util_1.convertVersionToSemver)(item.java_version), + version: (0, util_1.convertVersionToSemver)(javaVersion), url: item.download_url, zuluVersion: (0, util_1.convertVersionToSemver)(item.distro_version) }; diff --git a/src/distributions/zulu/installer.ts b/src/distributions/zulu/installer.ts index 622c3d34..caf03910 100644 --- a/src/distributions/zulu/installer.ts +++ b/src/distributions/zulu/installer.ts @@ -30,8 +30,15 @@ export class ZuluDistribution extends JavaBase { ): Promise { const availableVersionsRaw = await this.getAvailableVersions(); const availableVersions = availableVersionsRaw.map(item => { + // The Azul Metadata API reports the JDK build number separately from + // java_version (e.g. java_version=[17,0,7], openjdk_build_number=7). + // Append it so the resulting semver retains the build (e.g. 17.0.7+7). + const javaVersion = + item.openjdk_build_number != null + ? [...item.java_version, item.openjdk_build_number] + : item.java_version; return { - version: convertVersionToSemver(item.java_version), + version: convertVersionToSemver(javaVersion), url: item.download_url, zuluVersion: convertVersionToSemver(item.distro_version) }; diff --git a/src/distributions/zulu/models.ts b/src/distributions/zulu/models.ts index 92808cd5..36d369e0 100644 --- a/src/distributions/zulu/models.ts +++ b/src/distributions/zulu/models.ts @@ -6,6 +6,7 @@ export interface IZuluVersions { download_url: string; java_version: Array; distro_version: Array; + openjdk_build_number: number; latest: boolean; availability_type: string; }