@@ -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 var _a, _b;
@@ -130045,8 +130048,18 @@ class JavaBase {
130045130048 }
130046130049 setJavaDefault(version, toolPath) {
130047130050 const majorVersion = version.split('.')[0];
130048- core.exportVariable('JAVA_HOME', toolPath);
130049- core.addPath(path_1.default.join(toolPath, 'bin'));
130051+ if (this.updateEnvJavaHome) {
130052+ core.exportVariable('JAVA_HOME', toolPath);
130053+ }
130054+ else {
130055+ core.info(`Skip updating env.JAVA_HOME according to ${constants_1.INPUT_UPDATE_JAVA_HOME}`);
130056+ }
130057+ if (this.addToEnvPath) {
130058+ core.addPath(path_1.default.join(toolPath, 'bin'));
130059+ }
130060+ else {
130061+ core.info(`Skip adding to env.PATH according to ${constants_1.INPUT_ADD_TO_PATH}`);
130062+ }
130050130063 core.setOutput('distribution', this.distribution);
130051130064 core.setOutput('path', toolPath);
130052130065 core.setOutput('version', version);
@@ -132462,6 +132475,10 @@ function run() {
132462132475 const cache = core.getInput(constants.INPUT_CACHE);
132463132476 const cacheDependencyPath = core.getInput(constants.INPUT_CACHE_DEPENDENCY_PATH);
132464132477 const checkLatest = (0, util_1.getBooleanInput)(constants.INPUT_CHECK_LATEST, false);
132478+ const updateToolchainsOnly = (0, util_1.getBooleanInput)(constants.INPUT_UPDATE_TOOLCHAINS_ONLY, false);
132479+ const overwriteSettings = (0, util_1.getBooleanInput)(constants.INPUT_OVERWRITE_SETTINGS, !updateToolchainsOnly);
132480+ const updateEnvJavaHome = (0, util_1.getBooleanInput)(constants.INPUT_UPDATE_JAVA_HOME, !updateToolchainsOnly);
132481+ const addToEnvPath = (0, util_1.getBooleanInput)(constants.INPUT_ADD_TO_PATH, !updateToolchainsOnly);
132465132482 let toolchainIds = core.getMultilineInput(constants.INPUT_MVN_TOOLCHAIN_ID);
132466132483 core.startGroup('Installed distributions');
132467132484 if (versions.length !== toolchainIds.length) {
@@ -132476,7 +132493,11 @@ function run() {
132476132493 checkLatest,
132477132494 distributionName,
132478132495 jdkFile,
132479- toolchainIds
132496+ toolchainIds,
132497+ updateToolchainsOnly,
132498+ overwriteSettings,
132499+ updateEnvJavaHome,
132500+ addToEnvPath
132480132501 };
132481132502 if (!versions.length) {
132482132503 core.debug('java-version input is empty, looking for java-version-file input');
@@ -132494,7 +132515,7 @@ function run() {
132494132515 core.endGroup();
132495132516 const matchersPath = path.join(__dirname, '..', '..', '.github');
132496132517 core.info(`##[add-matcher]${path.join(matchersPath, 'java.json')}`);
132497- yield auth.configureAuthentication();
132518+ yield auth.configureAuthentication(overwriteSettings );
132498132519 if (cache && (0, util_1.isCacheFeatureAvailable)()) {
132499132520 yield (0, cache_1.restore)(cache, cacheDependencyPath);
132500132521 }
@@ -132507,19 +132528,21 @@ function run() {
132507132528run();
132508132529function installVersion(version, options, toolchainId = 0) {
132509132530 return __awaiter(this, void 0, void 0, function* () {
132510- const { distributionName, jdkFile, architecture, packageType, checkLatest, toolchainIds } = options;
132531+ const { distributionName, jdkFile, architecture, packageType, checkLatest, toolchainIds, updateToolchainsOnly, overwriteSettings, updateEnvJavaHome, addToEnvPath } = options;
132511132532 const installerOptions = {
132533+ version,
132512132534 architecture,
132513132535 packageType,
132514132536 checkLatest,
132515- version
132537+ updateEnvJavaHome,
132538+ addToEnvPath
132516132539 };
132517132540 const distribution = (0, distribution_factory_1.getJavaDistribution)(distributionName, installerOptions, jdkFile);
132518132541 if (!distribution) {
132519132542 throw new Error(`No supported distribution was found for input ${distributionName}`);
132520132543 }
132521132544 const result = yield distribution.setupJava();
132522- yield toolchains.configureToolchains(version, distributionName, result.path, toolchainIds[toolchainId]);
132545+ yield toolchains.configureToolchains(version, distributionName, result.path, overwriteSettings || updateToolchainsOnly, toolchainIds[toolchainId]);
132523132546 core.info('');
132524132547 core.info('Java configuration:');
132525132548 core.info(` Distribution: ${distributionName}`);
@@ -132577,15 +132600,13 @@ const path = __importStar(__nccwpck_require__(71017));
132577132600const core = __importStar(__nccwpck_require__(42186));
132578132601const io = __importStar(__nccwpck_require__(47351));
132579132602const constants = __importStar(__nccwpck_require__(69042));
132580- const util_1 = __nccwpck_require__(92629);
132581132603const xmlbuilder2_1 = __nccwpck_require__(70151);
132582- function configureToolchains(version, distributionName, jdkHome, toolchainId) {
132604+ function configureToolchains(version, distributionName, jdkHome, updateToolchains, toolchainId) {
132583132605 return __awaiter(this, void 0, void 0, function* () {
132584132606 const vendor = core.getInput(constants.INPUT_MVN_TOOLCHAIN_VENDOR) || distributionName;
132585132607 const id = toolchainId || `${vendor}_${version}`;
132586132608 const settingsDirectory = core.getInput(constants.INPUT_SETTINGS_PATH) ||
132587132609 path.join(os.homedir(), constants.M2_DIR);
132588- const overwriteSettings = (0, util_1.getBooleanInput)(constants.INPUT_OVERWRITE_SETTINGS, true);
132589132610 yield createToolchainsSettings({
132590132611 jdkInfo: {
132591132612 version,
@@ -132594,20 +132615,20 @@ function configureToolchains(version, distributionName, jdkHome, toolchainId) {
132594132615 jdkHome
132595132616 },
132596132617 settingsDirectory,
132597- overwriteSettings
132618+ updateToolchains
132598132619 });
132599132620 });
132600132621}
132601132622exports.configureToolchains = configureToolchains;
132602- function createToolchainsSettings({ jdkInfo, settingsDirectory, overwriteSettings }) {
132623+ function createToolchainsSettings({ jdkInfo, settingsDirectory, updateToolchains }) {
132603132624 return __awaiter(this, void 0, void 0, function* () {
132604- core.info(`Creating ${constants.MVN_TOOLCHAINS_FILE} for JDK version ${jdkInfo.version} from ${jdkInfo.vendor}`);
132625+ core.info(`Adding a toolchain entry in ${constants.MVN_TOOLCHAINS_FILE} for JDK version ${jdkInfo.version} from ${jdkInfo.vendor}`);
132605132626 // when an alternate m2 location is specified use only that location (no .m2 directory)
132606132627 // otherwise use the home/.m2/ path
132607132628 yield io.mkdirP(settingsDirectory);
132608132629 const originalToolchains = yield readExistingToolchainsFile(settingsDirectory);
132609132630 const updatedToolchains = generateToolchainDefinition(originalToolchains, jdkInfo.version, jdkInfo.vendor, jdkInfo.id, jdkInfo.jdkHome);
132610- yield writeToolchainsFileToDisk(settingsDirectory, updatedToolchains, overwriteSettings );
132631+ yield writeToolchainsFileToDisk(settingsDirectory, updatedToolchains, updateToolchains );
132611132632 });
132612132633}
132613132634exports.createToolchainsSettings = createToolchainsSettings;
@@ -132673,18 +132694,18 @@ function readExistingToolchainsFile(directory) {
132673132694 return '';
132674132695 });
132675132696}
132676- function writeToolchainsFileToDisk(directory, settings, overwriteSettings ) {
132697+ function writeToolchainsFileToDisk(directory, settings, updateToolchains ) {
132677132698 return __awaiter(this, void 0, void 0, function* () {
132678132699 const location = path.join(directory, constants.MVN_TOOLCHAINS_FILE);
132679- const settingsExists = fs.existsSync(location);
132680- if (settingsExists && overwriteSettings ) {
132681- core.info(`Overwriting existing file ${location}`);
132700+ const toolchainsExists = fs.existsSync(location);
132701+ if (toolchainsExists && updateToolchains ) {
132702+ core.info(`Updating existing file ${location}`);
132682132703 }
132683- else if (!settingsExists ) {
132684- core.info(`Writing to ${location}`);
132704+ else if (!toolchainsExists ) {
132705+ core.info(`Creating file ${location}`);
132685132706 }
132686132707 else {
132687- core.info(`Skipping generation of ${location} because file already exists and overwriting is not enabled`);
132708+ core.info(`Skipping update of ${location} since file already exists and updating is not enabled`);
132688132709 return;
132689132710 }
132690132711 return fs.writeFileSync(location, settings, {
0 commit comments