@@ -129275,15 +129275,13 @@ const os = __importStar(__nccwpck_require__(22037));
129275129275const xmlbuilder2_1 = __nccwpck_require__(70151);
129276129276const constants = __importStar(__nccwpck_require__(69042));
129277129277const gpg = __importStar(__nccwpck_require__(23759));
129278- const util_1 = __nccwpck_require__(92629);
129279- function configureAuthentication() {
129278+ function configureAuthentication(overwriteSettings) {
129280129279 return __awaiter(this, void 0, void 0, function* () {
129281129280 const id = core.getInput(constants.INPUT_SERVER_ID);
129282129281 const username = core.getInput(constants.INPUT_SERVER_USERNAME);
129283129282 const password = core.getInput(constants.INPUT_SERVER_PASSWORD);
129284129283 const settingsDirectory = core.getInput(constants.INPUT_SETTINGS_PATH) ||
129285129284 path.join(os.homedir(), constants.M2_DIR);
129286- const overwriteSettings = (0, util_1.getBooleanInput)(constants.INPUT_OVERWRITE_SETTINGS, true);
129287129285 const gpgPrivateKey = core.getInput(constants.INPUT_GPG_PRIVATE_KEY) ||
129288129286 constants.INPUT_DEFAULT_GPG_PRIVATE_KEY;
129289129287 const gpgPassphrase = core.getInput(constants.INPUT_GPG_PASSPHRASE) ||
@@ -129579,7 +129577,7 @@ function isProbablyGradleDaemonProblem(packageManager, error) {
129579129577"use strict";
129580129578
129581129579Object.defineProperty(exports, "__esModule", ({ value: true }));
129582- exports.DISTRIBUTIONS_ONLY_MAJOR_VERSION = exports.INPUT_MVN_TOOLCHAIN_VENDOR = exports.INPUT_MVN_TOOLCHAIN_ID = exports.MVN_TOOLCHAINS_FILE = exports.MVN_SETTINGS_FILE = exports.M2_DIR = exports.STATE_GPG_PRIVATE_KEY_FINGERPRINT = exports.INPUT_JOB_STATUS = exports.INPUT_CACHE_DEPENDENCY_PATH = exports.INPUT_CACHE = exports.INPUT_DEFAULT_GPG_PASSPHRASE = exports.INPUT_DEFAULT_GPG_PRIVATE_KEY = exports.INPUT_GPG_PASSPHRASE = exports.INPUT_GPG_PRIVATE_KEY = exports.INPUT_OVERWRITE_SETTINGS = exports.INPUT_SETTINGS_PATH = exports.INPUT_SERVER_PASSWORD = exports.INPUT_SERVER_USERNAME = exports.INPUT_SERVER_ID = exports.INPUT_CHECK_LATEST = exports.INPUT_JDK_FILE = exports.INPUT_DISTRIBUTION = exports.INPUT_JAVA_PACKAGE = exports.INPUT_ARCHITECTURE = exports.INPUT_JAVA_VERSION_FILE = exports.INPUT_JAVA_VERSION = exports.MACOS_JAVA_CONTENT_POSTFIX = void 0;
129580+ exports.DISTRIBUTIONS_ONLY_MAJOR_VERSION = exports.INPUT_MVN_TOOLCHAIN_VENDOR = exports.INPUT_MVN_TOOLCHAIN_ID = exports.MVN_TOOLCHAINS_FILE = exports.MVN_SETTINGS_FILE = exports.M2_DIR = exports.STATE_GPG_PRIVATE_KEY_FINGERPRINT = exports.INPUT_JOB_STATUS = exports.INPUT_CACHE_DEPENDENCY_PATH = exports.INPUT_CACHE = exports.INPUT_DEFAULT_GPG_PASSPHRASE = exports.INPUT_DEFAULT_GPG_PRIVATE_KEY = exports.INPUT_GPG_PASSPHRASE = exports.INPUT_GPG_PRIVATE_KEY = exports.INPUT_ADD_TO_PATH = exports.INPUT_UPDATE_JAVA_HOME = exports.INPUT_UPDATE_TOOLCHAINS_ONLY = exports. INPUT_OVERWRITE_SETTINGS = exports.INPUT_SETTINGS_PATH = exports.INPUT_SERVER_PASSWORD = exports.INPUT_SERVER_USERNAME = exports.INPUT_SERVER_ID = exports.INPUT_CHECK_LATEST = exports.INPUT_JDK_FILE = exports.INPUT_DISTRIBUTION = exports.INPUT_JAVA_PACKAGE = exports.INPUT_ARCHITECTURE = exports.INPUT_JAVA_VERSION_FILE = exports.INPUT_JAVA_VERSION = exports.MACOS_JAVA_CONTENT_POSTFIX = void 0;
129583129581exports.MACOS_JAVA_CONTENT_POSTFIX = 'Contents/Home';
129584129582exports.INPUT_JAVA_VERSION = 'java-version';
129585129583exports.INPUT_JAVA_VERSION_FILE = 'java-version-file';
@@ -129593,6 +129591,9 @@ exports.INPUT_SERVER_USERNAME = 'server-username';
129593129591exports.INPUT_SERVER_PASSWORD = 'server-password';
129594129592exports.INPUT_SETTINGS_PATH = 'settings-path';
129595129593exports.INPUT_OVERWRITE_SETTINGS = 'overwrite-settings';
129594+ exports.INPUT_UPDATE_TOOLCHAINS_ONLY = 'update-toolchains-only';
129595+ exports.INPUT_UPDATE_JAVA_HOME = 'update-env-javahome';
129596+ exports.INPUT_ADD_TO_PATH = 'add-to-env-path';
129596129597exports.INPUT_GPG_PRIVATE_KEY = 'gpg-private-key';
129597129598exports.INPUT_GPG_PASSPHRASE = 'gpg-passphrase';
129598129599exports.INPUT_DEFAULT_GPG_PRIVATE_KEY = undefined;
@@ -129854,6 +129855,8 @@ class JavaBase {
129854129855 this.architecture = installerOptions.architecture || os_1.default.arch();
129855129856 this.packageType = installerOptions.packageType;
129856129857 this.checkLatest = installerOptions.checkLatest;
129858+ this.updateEnvJavaHome = installerOptions.updateEnvJavaHome;
129859+ this.addToEnvPath = installerOptions.addToEnvPath;
129857129860 }
129858129861 setupJava() {
129859129862 return __awaiter(this, void 0, void 0, function* () {
@@ -129978,8 +129981,18 @@ class JavaBase {
129978129981 }
129979129982 setJavaDefault(version, toolPath) {
129980129983 const majorVersion = version.split('.')[0];
129981- core.exportVariable('JAVA_HOME', toolPath);
129982- core.addPath(path_1.default.join(toolPath, 'bin'));
129984+ if (this.updateEnvJavaHome) {
129985+ core.exportVariable('JAVA_HOME', toolPath);
129986+ }
129987+ else {
129988+ core.info(`Skip updating env.JAVA_HOME according to ${constants_1.INPUT_UPDATE_JAVA_HOME}`);
129989+ }
129990+ if (this.addToEnvPath) {
129991+ core.addPath(path_1.default.join(toolPath, 'bin'));
129992+ }
129993+ else {
129994+ core.info(`Skip adding to env.PATH according to ${constants_1.INPUT_ADD_TO_PATH}`);
129995+ }
129983129996 core.setOutput('distribution', this.distribution);
129984129997 core.setOutput('path', toolPath);
129985129998 core.setOutput('version', version);
@@ -132353,6 +132366,10 @@ function run() {
132353132366 const cache = core.getInput(constants.INPUT_CACHE);
132354132367 const cacheDependencyPath = core.getInput(constants.INPUT_CACHE_DEPENDENCY_PATH);
132355132368 const checkLatest = (0, util_1.getBooleanInput)(constants.INPUT_CHECK_LATEST, false);
132369+ const updateToolchainsOnly = (0, util_1.getBooleanInput)(constants.INPUT_UPDATE_TOOLCHAINS_ONLY, false);
132370+ const overwriteSettings = (0, util_1.getBooleanInput)(constants.INPUT_OVERWRITE_SETTINGS, !updateToolchainsOnly);
132371+ const updateEnvJavaHome = (0, util_1.getBooleanInput)(constants.INPUT_UPDATE_JAVA_HOME, !updateToolchainsOnly);
132372+ const addToEnvPath = (0, util_1.getBooleanInput)(constants.INPUT_ADD_TO_PATH, !updateToolchainsOnly);
132356132373 let toolchainIds = core.getMultilineInput(constants.INPUT_MVN_TOOLCHAIN_ID);
132357132374 core.startGroup('Installed distributions');
132358132375 if (versions.length !== toolchainIds.length) {
@@ -132367,7 +132384,11 @@ function run() {
132367132384 checkLatest,
132368132385 distributionName,
132369132386 jdkFile,
132370- toolchainIds
132387+ toolchainIds,
132388+ updateToolchainsOnly,
132389+ overwriteSettings,
132390+ updateEnvJavaHome,
132391+ addToEnvPath
132371132392 };
132372132393 if (!versions.length) {
132373132394 core.debug('java-version input is empty, looking for java-version-file input');
@@ -132385,7 +132406,7 @@ function run() {
132385132406 core.endGroup();
132386132407 const matchersPath = path.join(__dirname, '..', '..', '.github');
132387132408 core.info(`##[add-matcher]${path.join(matchersPath, 'java.json')}`);
132388- yield auth.configureAuthentication();
132409+ yield auth.configureAuthentication(overwriteSettings );
132389132410 if (cache && (0, util_1.isCacheFeatureAvailable)()) {
132390132411 yield (0, cache_1.restore)(cache, cacheDependencyPath);
132391132412 }
@@ -132398,19 +132419,21 @@ function run() {
132398132419run();
132399132420function installVersion(version, options, toolchainId = 0) {
132400132421 return __awaiter(this, void 0, void 0, function* () {
132401- const { distributionName, jdkFile, architecture, packageType, checkLatest, toolchainIds } = options;
132422+ const { distributionName, jdkFile, architecture, packageType, checkLatest, toolchainIds, updateToolchainsOnly, overwriteSettings, updateEnvJavaHome, addToEnvPath } = options;
132402132423 const installerOptions = {
132424+ version,
132403132425 architecture,
132404132426 packageType,
132405132427 checkLatest,
132406- version
132428+ updateEnvJavaHome,
132429+ addToEnvPath
132407132430 };
132408132431 const distribution = (0, distribution_factory_1.getJavaDistribution)(distributionName, installerOptions, jdkFile);
132409132432 if (!distribution) {
132410132433 throw new Error(`No supported distribution was found for input ${distributionName}`);
132411132434 }
132412132435 const result = yield distribution.setupJava();
132413- yield toolchains.configureToolchains(version, distributionName, result.path, toolchainIds[toolchainId]);
132436+ yield toolchains.configureToolchains(version, distributionName, result.path, overwriteSettings || updateToolchainsOnly, toolchainIds[toolchainId]);
132414132437 core.info('');
132415132438 core.info('Java configuration:');
132416132439 core.info(` Distribution: ${distributionName}`);
@@ -132468,15 +132491,13 @@ const path = __importStar(__nccwpck_require__(71017));
132468132491const core = __importStar(__nccwpck_require__(42186));
132469132492const io = __importStar(__nccwpck_require__(47351));
132470132493const constants = __importStar(__nccwpck_require__(69042));
132471- const util_1 = __nccwpck_require__(92629);
132472132494const xmlbuilder2_1 = __nccwpck_require__(70151);
132473- function configureToolchains(version, distributionName, jdkHome, toolchainId) {
132495+ function configureToolchains(version, distributionName, jdkHome, updateToolchains, toolchainId) {
132474132496 return __awaiter(this, void 0, void 0, function* () {
132475132497 const vendor = core.getInput(constants.INPUT_MVN_TOOLCHAIN_VENDOR) || distributionName;
132476132498 const id = toolchainId || `${vendor}_${version}`;
132477132499 const settingsDirectory = core.getInput(constants.INPUT_SETTINGS_PATH) ||
132478132500 path.join(os.homedir(), constants.M2_DIR);
132479- const overwriteSettings = (0, util_1.getBooleanInput)(constants.INPUT_OVERWRITE_SETTINGS, true);
132480132501 yield createToolchainsSettings({
132481132502 jdkInfo: {
132482132503 version,
@@ -132485,20 +132506,20 @@ function configureToolchains(version, distributionName, jdkHome, toolchainId) {
132485132506 jdkHome
132486132507 },
132487132508 settingsDirectory,
132488- overwriteSettings
132509+ updateToolchains
132489132510 });
132490132511 });
132491132512}
132492132513exports.configureToolchains = configureToolchains;
132493- function createToolchainsSettings({ jdkInfo, settingsDirectory, overwriteSettings }) {
132514+ function createToolchainsSettings({ jdkInfo, settingsDirectory, updateToolchains }) {
132494132515 return __awaiter(this, void 0, void 0, function* () {
132495- core.info(`Creating ${constants.MVN_TOOLCHAINS_FILE} for JDK version ${jdkInfo.version} from ${jdkInfo.vendor}`);
132516+ core.info(`Adding a toolchain entry in ${constants.MVN_TOOLCHAINS_FILE} for JDK version ${jdkInfo.version} from ${jdkInfo.vendor}`);
132496132517 // when an alternate m2 location is specified use only that location (no .m2 directory)
132497132518 // otherwise use the home/.m2/ path
132498132519 yield io.mkdirP(settingsDirectory);
132499132520 const originalToolchains = yield readExistingToolchainsFile(settingsDirectory);
132500132521 const updatedToolchains = generateToolchainDefinition(originalToolchains, jdkInfo.version, jdkInfo.vendor, jdkInfo.id, jdkInfo.jdkHome);
132501- yield writeToolchainsFileToDisk(settingsDirectory, updatedToolchains, overwriteSettings );
132522+ yield writeToolchainsFileToDisk(settingsDirectory, updatedToolchains, updateToolchains );
132502132523 });
132503132524}
132504132525exports.createToolchainsSettings = createToolchainsSettings;
@@ -132564,18 +132585,18 @@ function readExistingToolchainsFile(directory) {
132564132585 return '';
132565132586 });
132566132587}
132567- function writeToolchainsFileToDisk(directory, settings, overwriteSettings ) {
132588+ function writeToolchainsFileToDisk(directory, settings, updateToolchains ) {
132568132589 return __awaiter(this, void 0, void 0, function* () {
132569132590 const location = path.join(directory, constants.MVN_TOOLCHAINS_FILE);
132570- const settingsExists = fs.existsSync(location);
132571- if (settingsExists && overwriteSettings ) {
132572- core.info(`Overwriting existing file ${location}`);
132591+ const toolchainsExists = fs.existsSync(location);
132592+ if (toolchainsExists && updateToolchains ) {
132593+ core.info(`Updating existing file ${location}`);
132573132594 }
132574- else if (!settingsExists ) {
132575- core.info(`Writing to ${location}`);
132595+ else if (!toolchainsExists ) {
132596+ core.info(`Creating file ${location}`);
132576132597 }
132577132598 else {
132578- core.info(`Skipping generation of ${location} because file already exists and overwriting is not enabled`);
132599+ core.info(`Skipping update of ${location} since file already exists and updating is not enabled`);
132579132600 return;
132580132601 }
132581132602 return fs.writeFileSync(location, settings, {
0 commit comments