@plexus-interop/cli
Version:
Plexus Interop CLI tools
102 lines • 7.07 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
/**
* Copyright 2017-2020 Plexus Interop Deutsche Bank AG
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var path = require("path");
var os = require("os");
var files_1 = require("./files");
var download_1 = require("./download");
function downloadJre() {
var url = getJreDownloadUrl();
var downloadDir = getJreDownloadDir();
var title = 'JRE';
return download_1.downloadPackage(url, downloadDir, title, {
connection: 'keep-alive',
Cookie: 'gpw_e24=http://www.oracle.com/; oraclelicense=accept-securebackup-cookie'
});
}
exports.downloadJre = downloadJre;
function javaExecProvided() {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var execPath, execExists;
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, getJavaExecPath()];
case 1:
execPath = _a.sent();
return [4 /*yield*/, files_1.exists(execPath)];
case 2:
execExists = _a.sent();
if (execExists) {
return [2 /*return*/, execPath];
}
else {
throw new Error("Do not exist " + execPath);
}
return [2 /*return*/];
}
});
});
}
exports.javaExecProvided = javaExecProvided;
function getJreDownloadUrl() {
var platform = os.platform() + "-" + os.arch();
return process.env["PLEXUS_JRE_DOWNLOAD_URL_" + platform.toUpperCase()]
|| process.env.PLEXUS_JRE_DOWNLOAD_URL
|| getDefaultDownloadUrl(platform);
}
exports.getJreDownloadUrl = getJreDownloadUrl;
function getDefaultDownloadUrl(platform) {
switch (platform) {
case 'win32-ia32':
case 'win32-x32':
return 'http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jre-8u161-windows-i586.tar.gz';
case 'win32-x64':
return 'http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jre-8u161-windows-x64.tar.gz';
default:
throw new Error(platform + " is not supported");
}
}
function getJreBaseDir(downloadDir) {
var childs = files_1.getDirectories(downloadDir);
if (childs.length === 0) {
throw new Error('No JRE found');
}
return path.join(downloadDir, childs[0]);
}
exports.getJreBaseDir = getJreBaseDir;
function getJavaExecPath() {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var baseDir;
return tslib_1.__generator(this, function (_a) {
if (process.env.PLEXUS_CLI_JAVA_EXE_PATH) {
console.log("Using Java executable from env variable " + process.env.PLEXUS_CLI_JAVA_EXE_PATH);
return [2 /*return*/, process.env.PLEXUS_CLI_JAVA_EXE_PATH];
}
baseDir = getJreBaseDir(getJreDownloadDir());
return [2 /*return*/, path.join.apply(path, tslib_1.__spreadArrays([baseDir], getExePath()))];
});
});
}
exports.getJavaExecPath = getJavaExecPath;
function getExePath() {
return os.platform() === 'win32' ? ['bin', 'java.exe'] : ['bin', 'java'];
}
var getJreDownloadDir = function () { return path.join(files_1.getDistDir(), 'jre'); };
exports.getJavaGenLibPath = function () { return path.join(files_1.getDistDir(), 'lib', 'plexusgen.jar'); };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tb24vamF2YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCwyQkFBNkI7QUFDN0IsdUJBQXlCO0FBQ3pCLGlDQUE2RDtBQUM3RCx1Q0FBNkM7QUFFN0MsU0FBZ0IsV0FBVztJQUN2QixJQUFNLEdBQUcsR0FBRyxpQkFBaUIsRUFBRSxDQUFDO0lBQ2hDLElBQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUM7SUFDeEMsSUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLE9BQU8sMEJBQWUsQ0FBQyxHQUFHLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRTtRQUM1QyxVQUFVLEVBQUUsWUFBWTtRQUN4QixNQUFNLEVBQUUsMEVBQTBFO0tBQ3JGLENBQUMsQ0FBQztBQUNQLENBQUM7QUFSRCxrQ0FRQztBQUVELFNBQXNCLGdCQUFnQjs7Ozs7d0JBQ2pCLHFCQUFNLGVBQWUsRUFBRSxFQUFBOztvQkFBbEMsUUFBUSxHQUFHLFNBQXVCO29CQUNyQixxQkFBTSxjQUFNLENBQUMsUUFBUSxDQUFDLEVBQUE7O29CQUFuQyxVQUFVLEdBQUcsU0FBc0I7b0JBQ3pDLElBQUksVUFBVSxFQUFFO3dCQUNaLHNCQUFPLFFBQVEsRUFBQztxQkFDbkI7eUJBQU07d0JBQ0gsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBZ0IsUUFBVSxDQUFDLENBQUM7cUJBQy9DOzs7OztDQUNKO0FBUkQsNENBUUM7QUFFRCxTQUFnQixpQkFBaUI7SUFDN0IsSUFBTSxRQUFRLEdBQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUksQ0FBQztJQUNqRCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTJCLFFBQVEsQ0FBQyxXQUFXLEVBQUksQ0FBQztXQUNoRSxPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QjtXQUNuQyxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBTEQsOENBS0M7QUFFRCxTQUFTLHFCQUFxQixDQUFDLFFBQWdCO0lBQzNDLFFBQVEsUUFBUSxFQUFFO1FBQ2QsS0FBSyxZQUFZLENBQUM7UUFDbEIsS0FBSyxXQUFXO1lBQ1osT0FBTyxzSEFBc0gsQ0FBQztRQUNsSSxLQUFLLFdBQVc7WUFDWixPQUFPLHFIQUFxSCxDQUFDO1FBQ2pJO1lBQ0ksTUFBTSxJQUFJLEtBQUssQ0FBSSxRQUFRLHNCQUFtQixDQUFDLENBQUM7S0FDdkQ7QUFDTCxDQUFDO0FBRUQsU0FBZ0IsYUFBYSxDQUFDLFdBQW1CO0lBQzdDLElBQU0sTUFBTSxHQUFHLHNCQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0MsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ25DO0lBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBTkQsc0NBTUM7QUFFRCxTQUFzQixlQUFlOzs7O1lBQ2pDLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsRUFBRTtnQkFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2Q0FBMkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx3QkFBMEIsQ0FBQyxDQUFDO2dCQUMvRixzQkFBTyxPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUFrQyxFQUFDO2FBQ3pEO1lBQ0ssT0FBTyxHQUFHLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7WUFDbkQsc0JBQU8sSUFBSSxDQUFDLElBQUksT0FBVCxJQUFJLDBCQUFNLE9BQU8sR0FBSyxVQUFVLEVBQUUsSUFBRTs7O0NBQzlDO0FBUEQsMENBT0M7QUFFRCxTQUFTLFVBQVU7SUFDZixPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUM3RSxDQUFDO0FBRUQsSUFBTSxpQkFBaUIsR0FBRyxjQUFNLE9BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBVSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQTlCLENBQThCLENBQUM7QUFFbEQsUUFBQSxpQkFBaUIsR0FBRyxjQUFNLE9BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLGVBQWUsQ0FBQyxFQUEvQyxDQUErQyxDQUFDIn0=
;