From 31f766242e2373ba0731ac58e4622f2cf47973b9 Mon Sep 17 00:00:00 2001 From: Markus Hoffrogge Date: Mon, 13 Jul 2026 21:51:25 +0200 Subject: [PATCH] Update dist scripts --- dist/cleanup/index.js | 1 + dist/setup/index.js | 86 ++++++++++++++++++++++--------------------- 2 files changed, 45 insertions(+), 42 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 3e52658a..884531ac 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -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)); diff --git a/dist/setup/index.js b/dist/setup/index.js index b3e2cb67..ee62dea1 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -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('');