renovate
Version:
Automated dependency updates. Flexible so you don't need to be.
64 lines • 1.97 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.datasource = exports.defaultRegistryUrl = exports.pageSize = void 0;
exports.parsePackage = parsePackage;
const logger_1 = require("../../../logger");
const url_1 = require("../../../util/url");
// Api page size limit 50
exports.pageSize = 50;
exports.defaultRegistryUrl = 'https://api.adoptium.net/';
exports.datasource = 'java-version';
function parsePackage(packageName) {
const u = new URL(packageName, exports.defaultRegistryUrl);
const useSystem = u.searchParams.get('system') === 'true';
return {
imageType: getImageType((0, url_1.trimLeadingSlash)(u.pathname)),
architecture: u.searchParams.get('architecture') ?? getSystemArchitecture(useSystem),
os: u.searchParams.get('os') ?? getSystemOs(useSystem),
};
}
function getImageType(name) {
switch (name) {
case 'java-jre':
return 'jre';
default:
return 'jdk';
}
}
function getSystemArchitecture(useSystem) {
if (!useSystem) {
return null;
}
switch (process.arch) {
case 'ia32':
return 'x86';
case 'arm64':
return 'aarch64';
case 'arm':
case 'riscv64':
case 's390x':
case 'x64':
return process.arch;
default:
logger_1.logger.warn({ arch: process.arch }, 'Unknown system architecture, defaulting to null');
return null;
}
}
function getSystemOs(useSystem) {
if (!useSystem) {
return null;
}
switch (process.platform) {
case 'darwin':
return 'mac';
case 'win32':
return 'windows';
case 'aix':
case 'linux':
return process.platform;
default:
logger_1.logger.warn({ os: process.platform }, 'Unknown system OS, defaulting to null');
return null;
}
}
//# sourceMappingURL=common.js.map