Oops, release again

This commit is contained in:
Jordie 2022-02-03 22:08:39 +01:00
parent 0024d59b25
commit 085f4d9754
2 changed files with 2257 additions and 2075 deletions

184
dist/setup/index.js vendored
View file

@ -56140,6 +56140,7 @@ const installer_3 = __webpack_require__(584);
const installer_4 = __webpack_require__(439); const installer_4 = __webpack_require__(439);
const installer_5 = __webpack_require__(507); const installer_5 = __webpack_require__(507);
const installer_6 = __webpack_require__(196); const installer_6 = __webpack_require__(196);
const installer_7 = __webpack_require__(847);
var JavaDistribution; var JavaDistribution;
(function (JavaDistribution) { (function (JavaDistribution) {
JavaDistribution["Adopt"] = "adopt"; JavaDistribution["Adopt"] = "adopt";
@ -56150,6 +56151,7 @@ var JavaDistribution;
JavaDistribution["Liberica"] = "liberica"; JavaDistribution["Liberica"] = "liberica";
JavaDistribution["JdkFile"] = "jdkfile"; JavaDistribution["JdkFile"] = "jdkfile";
JavaDistribution["Microsoft"] = "microsoft"; JavaDistribution["Microsoft"] = "microsoft";
JavaDistribution["Semeru"] = "semeru";
})(JavaDistribution || (JavaDistribution = {})); })(JavaDistribution || (JavaDistribution = {}));
function getJavaDistribution(distributionName, installerOptions, jdkFile) { function getJavaDistribution(distributionName, installerOptions, jdkFile) {
switch (distributionName) { switch (distributionName) {
@ -56168,6 +56170,8 @@ function getJavaDistribution(distributionName, installerOptions, jdkFile) {
return new installer_5.LibericaDistributions(installerOptions); return new installer_5.LibericaDistributions(installerOptions);
case JavaDistribution.Microsoft: case JavaDistribution.Microsoft:
return new installer_6.MicrosoftDistributions(installerOptions); return new installer_6.MicrosoftDistributions(installerOptions);
case JavaDistribution.Semeru:
return new installer_7.SemeruDistribution(installerOptions);
default: default:
return null; return null;
} }
@ -88640,7 +88644,185 @@ Object.defineProperty(exports, "__esModule", { value: true });
/***/ }), /***/ }),
/* 846 */, /* 846 */,
/* 847 */, /* 847 */
/***/ (function(__unusedmodule, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.SemeruDistribution = void 0;
const base_installer_1 = __webpack_require__(83);
const semver_1 = __importDefault(__webpack_require__(876));
const util_1 = __webpack_require__(322);
const core = __importStar(__webpack_require__(470));
const tc = __importStar(__webpack_require__(139));
const fs_1 = __importDefault(__webpack_require__(747));
const path_1 = __importDefault(__webpack_require__(622));
class SemeruDistribution extends base_installer_1.JavaBase {
constructor(installerOptions) {
super('IBM_Semeru', installerOptions);
}
findPackageForDownload(version) {
return __awaiter(this, void 0, void 0, function* () {
if (this.architecture !== 'x64' &&
this.architecture !== 'x86' &&
this.architecture !== 'ppc64le' &&
this.architecture !== 'ppc64' &&
this.architecture !== 's390x' &&
this.architecture !== 'aarch64') {
throw new Error(`Unsupported architecture for IBM Semeru: ${this.architecture}, the following are supported: ` +
'x64, x86, ppc64le, ppc64, s390x, aarch64');
}
if (!this.stable) {
throw new Error('IBM Semeru does not provide builds for early access versions');
}
if (this.packageType !== 'jdk' && this.packageType !== 'jre') {
throw new Error('IBM Semeru only provide `jdk` and `jre` package types');
}
const availableVersionsRaw = yield this.getAvailableVersions();
const availableVersionsWithBinaries = availableVersionsRaw
.filter(item => item.binaries.length > 0)
.map(item => {
// normalize 17.0.0-beta+33.0.202107301459 to 17.0.0+33.0.202107301459 for earlier access versions
const formattedVersion = this.stable
? item.version_data.semver
: item.version_data.semver.replace('-beta+', '+');
return {
version: formattedVersion,
url: item.binaries[0].package.link
};
});
const satisfiedVersions = availableVersionsWithBinaries
.filter(item => util_1.isVersionSatisfies(version, item.version))
.sort((a, b) => {
return -semver_1.default.compareBuild(a.version, b.version);
});
const resolvedFullVersion = satisfiedVersions.length > 0 ? satisfiedVersions[0] : null;
if (!resolvedFullVersion) {
const availableOptions = availableVersionsWithBinaries.map(item => item.version).join(', ');
const availableOptionsMessage = availableOptions
? `\nAvailable versions: ${availableOptions}`
: '';
throw new Error(`Could not find satisfied version for SemVer '${version}'. ${availableOptionsMessage}`);
}
return resolvedFullVersion;
});
}
downloadTool(javaRelease) {
return __awaiter(this, void 0, void 0, function* () {
let javaPath;
let extractedJavaPath;
core.info(`Downloading Java ${javaRelease.version} (${this.distribution}) from ${javaRelease.url} ...`);
const javaArchivePath = yield tc.downloadTool(javaRelease.url);
core.info(`Extracting Java archive...`);
let extension = util_1.getDownloadArchiveExtension();
extractedJavaPath = yield util_1.extractJdkFile(javaArchivePath, extension);
const archiveName = fs_1.default.readdirSync(extractedJavaPath)[0];
const archivePath = path_1.default.join(extractedJavaPath, archiveName);
const version = this.getToolcacheVersionName(javaRelease.version);
javaPath = yield tc.cacheDir(archivePath, this.toolcacheFolderName, version, this.architecture);
return { version: javaRelease.version, path: javaPath };
});
}
get toolcacheFolderName() {
return super.toolcacheFolderName;
}
getAvailableVersions() {
return __awaiter(this, void 0, void 0, function* () {
const platform = this.getPlatformOption();
const arch = this.architecture;
const imageType = this.packageType;
const versionRange = encodeURI('[1.0,100.0]'); // retrieve all available versions
const releaseType = this.stable ? 'ga' : 'ea';
console.time('semeru-retrieve-available-versions');
const baseRequestArguments = [
`project=jdk`,
'vendor=ibm',
`heap_size=normal`,
'sort_method=DEFAULT',
'sort_order=DESC',
`os=${platform}`,
`architecture=${arch}`,
`image_type=${imageType}`,
`release_type=${releaseType}`,
`jvm_impl=openj9`
].join('&');
// need to iterate through all pages to retrieve the list of all versions
// Adoptium API doesn't provide way to retrieve the count of pages to iterate so infinity loop
let page_index = 0;
const availableVersions = [];
while (true) {
const requestArguments = `${baseRequestArguments}&page_size=20&page=${page_index}`;
const availableVersionsUrl = `https://api.adoptopenjdk.net/v3/assets/version/${versionRange}?${requestArguments}`;
if (core.isDebug() && page_index === 0) {
// url is identical except page_index so print it once for debug
core.debug(`Gathering available versions from '${availableVersionsUrl}'`);
}
const paginationPage = (yield this.http.getJson(availableVersionsUrl)).result;
if (paginationPage === null || paginationPage.length === 0) {
// break infinity loop because we have reached end of pagination
break;
}
availableVersions.push(...paginationPage);
page_index++;
}
if (core.isDebug()) {
core.startGroup('Print information about available IBM Semeru versions');
console.timeEnd('semeru-retrieve-available-versions');
console.log(`Available versions: [${availableVersions.length}]`);
console.log(availableVersions.map(item => item.version_data.semver).join(', '));
core.endGroup();
}
return availableVersions;
});
}
getPlatformOption() {
// Adoptium has own platform names so need to map them
switch (process.platform) {
case 'darwin':
return 'mac';
case 'win32':
return 'windows';
default:
return process.platform;
}
}
}
exports.SemeruDistribution = SemeruDistribution;
/***/ }),
/* 848 */, /* 848 */,
/* 849 */ /* 849 */
/***/ (function(__unusedmodule, exports, __webpack_require__) { /***/ (function(__unusedmodule, exports, __webpack_require__) {