Update dist scripts

This commit is contained in:
Markus Hoffrogge 2026-07-13 21:51:25 +02:00
parent deb6c2277d
commit 31f766242e
2 changed files with 45 additions and 42 deletions

View File

@ -95845,6 +95845,7 @@ const INPUT_SERVER_USERNAME = 'server-username';
const INPUT_SERVER_PASSWORD = 'server-password';
const INPUT_SETTINGS_PATH = 'settings-path';
const INPUT_OVERWRITE_SETTINGS = 'overwrite-settings';
const INPUT_ADD_TOOLCHAIN_ONLY = 'add-toolchain-only';
const INPUT_GPG_PRIVATE_KEY = 'gpg-private-key';
const INPUT_GPG_PASSPHRASE = 'gpg-passphrase';
const INPUT_DEFAULT_GPG_PRIVATE_KEY = (/* unused pure expression or super */ null && (undefined));

86
dist/setup/index.js vendored
View File

@ -73290,6 +73290,7 @@ const INPUT_SERVER_USERNAME = 'server-username';
const INPUT_SERVER_PASSWORD = 'server-password';
const INPUT_SETTINGS_PATH = 'settings-path';
const INPUT_OVERWRITE_SETTINGS = 'overwrite-settings';
const INPUT_ADD_TOOLCHAIN_ONLY = 'add-toolchain-only';
const INPUT_GPG_PRIVATE_KEY = 'gpg-private-key';
const INPUT_GPG_PASSPHRASE = 'gpg-passphrase';
const INPUT_DEFAULT_GPG_PRIVATE_KEY = undefined;
@ -127263,14 +127264,12 @@ async function verifyPackageSignature(archivePath, signatureUrl, publicKeyConten
async function configureAuthentication() {
async function configureAuthentication(overwriteSettings) {
const id = getInput(INPUT_SERVER_ID);
const username = getInput(INPUT_SERVER_USERNAME);
const password = getInput(INPUT_SERVER_PASSWORD);
const settingsDirectory = getInput(INPUT_SETTINGS_PATH) ||
external_path_.join(external_os_.homedir(), M2_DIR);
const overwriteSettings = util_getBooleanInput(INPUT_OVERWRITE_SETTINGS, true);
const gpgPrivateKey = getInput(INPUT_GPG_PRIVATE_KEY) ||
INPUT_DEFAULT_GPG_PRIVATE_KEY;
const gpgPassphrase = getInput(INPUT_GPG_PASSPHRASE) ||
@ -127351,13 +127350,11 @@ async function write(directory, settings, overwriteSettings) {
async function configureToolchains(version, distributionName, jdkHome, toolchainId) {
async function configureToolchains(version, distributionName, jdkHome, addToolchain, toolchainId) {
const vendor = getInput(INPUT_MVN_TOOLCHAIN_VENDOR) || distributionName;
const id = toolchainId || `${vendor}_${version}`;
const settingsDirectory = getInput(INPUT_SETTINGS_PATH) ||
external_path_.join(external_os_.homedir(), M2_DIR);
const overwriteSettings = util_getBooleanInput(INPUT_OVERWRITE_SETTINGS, true);
await createToolchainsSettings({
jdkInfo: {
version,
@ -127366,17 +127363,17 @@ async function configureToolchains(version, distributionName, jdkHome, toolchain
jdkHome
},
settingsDirectory,
overwriteSettings
addToolchain
});
}
async function createToolchainsSettings({ jdkInfo, settingsDirectory, overwriteSettings }) {
async function createToolchainsSettings({ jdkInfo, settingsDirectory, addToolchain }) {
info(`Creating ${MVN_TOOLCHAINS_FILE} for JDK version ${jdkInfo.version} from ${jdkInfo.vendor}`);
// when an alternate m2 location is specified use only that location (no .m2 directory)
// otherwise use the home/.m2/ path
await mkdirP(settingsDirectory);
const originalToolchains = await readExistingToolchainsFile(settingsDirectory);
const updatedToolchains = generateToolchainDefinition(originalToolchains, jdkInfo.version, jdkInfo.vendor, jdkInfo.id, jdkInfo.jdkHome);
await writeToolchainsFileToDisk(settingsDirectory, updatedToolchains, overwriteSettings);
await writeToolchainsFileToDisk(settingsDirectory, updatedToolchains, addToolchain);
}
// only exported for testing purposes
function generateToolchainDefinition(original, version, vendor, id, jdkHome) {
@ -127458,10 +127455,10 @@ async function readExistingToolchainsFile(directory) {
}
return '';
}
async function writeToolchainsFileToDisk(directory, settings, overwriteSettings) {
async function writeToolchainsFileToDisk(directory, settings, addToolchain) {
const location = external_path_.join(directory, MVN_TOOLCHAINS_FILE);
const settingsExists = external_fs_namespaceObject.existsSync(location);
if (settingsExists && overwriteSettings) {
if (settingsExists && addToolchain) {
info(`Overwriting existing file ${location}`);
}
else if (!settingsExists) {
@ -133669,7 +133666,9 @@ async function run() {
const cache = getInput(INPUT_CACHE);
const cacheDependencyPath = getInput(INPUT_CACHE_DEPENDENCY_PATH);
const checkLatest = util_getBooleanInput(INPUT_CHECK_LATEST, false);
const setDefault = util_getBooleanInput(INPUT_SET_DEFAULT, true);
const addToolchainOnly = util_getBooleanInput(INPUT_ADD_TOOLCHAIN_ONLY, false);
const setDefault = util_getBooleanInput(INPUT_SET_DEFAULT, !addToolchainOnly);
const overwriteSettings = util_getBooleanInput(INPUT_OVERWRITE_SETTINGS, !addToolchainOnly);
const verifySignature = util_getBooleanInput(INPUT_VERIFY_SIGNATURE, false);
const verifySignaturePublicKey = getInput(INPUT_VERIFY_SIGNATURE_PUBLIC_KEY) || undefined;
let toolchainIds = getMultilineInput(INPUT_MVN_TOOLCHAIN_ID);
@ -133697,15 +133696,17 @@ async function run() {
throw new Error('distribution input is required when not specified in the version file');
}
const installerInputsOptions = {
architecture,
packageType,
checkLatest,
setDefault,
verifySignature,
verifySignaturePublicKey,
distributionName,
jdkFile,
toolchainIds
architecture: architecture,
packageType: packageType,
checkLatest: checkLatest,
setDefault: setDefault,
overwriteSettings: overwriteSettings,
addToolchainOnly: addToolchainOnly,
verifySignature: verifySignature,
verifySignaturePublicKey: verifySignaturePublicKey,
distributionName: distributionName,
jdkFile: jdkFile,
toolchainIds: toolchainIds
};
await installVersion(versionInfo.version, installerInputsOptions);
}
@ -133715,15 +133716,17 @@ async function run() {
throw new Error('distribution input is required');
}
const installerInputsOptions = {
architecture,
packageType,
checkLatest,
setDefault,
verifySignature,
verifySignaturePublicKey,
distributionName,
jdkFile,
toolchainIds
architecture: architecture,
packageType: packageType,
checkLatest: checkLatest,
setDefault: setDefault,
overwriteSettings: overwriteSettings,
addToolchainOnly: addToolchainOnly,
verifySignature: verifySignature,
verifySignaturePublicKey: verifySignaturePublicKey,
distributionName: distributionName,
jdkFile: jdkFile,
toolchainIds: toolchainIds
};
for (const [index, version] of versions.entries()) {
await installVersion(version, installerInputsOptions, index);
@ -133732,7 +133735,7 @@ async function run() {
endGroup();
const matchersPath = external_path_.join(external_path_.dirname((0,external_url_.fileURLToPath)(import.meta.url)), '..', '..', '.github');
info(`##[add-matcher]${external_path_.join(matchersPath, 'java.json')}`);
await configureAuthentication();
await configureAuthentication(overwriteSettings);
configureMavenArgs();
if (cache && isCacheFeatureAvailable()) {
await restore(cache, cacheDependencyPath);
@ -133752,29 +133755,28 @@ function getJdkFileInput() {
return jdkFile || deprecatedJdkFile;
}
async function installVersion(version, options, toolchainId = 0) {
const { distributionName, jdkFile, architecture, packageType, checkLatest, setDefault, verifySignature, verifySignaturePublicKey, toolchainIds } = options;
const installerOptions = {
architecture,
packageType,
checkLatest,
setDefault,
verifySignature,
verifySignaturePublicKey,
architecture: options.architecture,
packageType: options.packageType,
checkLatest: options.checkLatest,
setDefault: options.setDefault,
verifySignature: options.verifySignature,
verifySignaturePublicKey: options.verifySignaturePublicKey,
version
};
const distribution = getJavaDistribution(distributionName, installerOptions, jdkFile);
const distribution = getJavaDistribution(options.distributionName, installerOptions, options.jdkFile);
if (!distribution) {
throw new Error(`No supported distribution was found for input ${distributionName}`);
throw new Error(`No supported distribution was found for input ${options.distributionName}`);
}
const result = await distribution.setupJava();
// When the `latest` alias is used, the literal input isn't a real version, so
// pass the resolved version to the toolchains configuration instead.
const isLatest = version.trim().toLowerCase() === 'latest';
const toolchainVersion = isLatest ? result.version : version;
await configureToolchains(toolchainVersion, distributionName, result.path, toolchainIds[toolchainId]);
await configureToolchains(toolchainVersion, options.distributionName, result.path, options.overwriteSettings || options.addToolchainOnly, options.toolchainIds[toolchainId]);
info('');
info('Java configuration:');
info(` Distribution: ${distributionName}`);
info(` Distribution: ${options.distributionName}`);
info(` Version: ${result.version}`);
info(` Path: ${result.path}`);
info('');