refactor: enhance logging and group setup for Go version installation

pull/789/head
priyagupta108 2 weeks ago
parent fba3fb4ead
commit be69e2303e

@ -100576,32 +100576,38 @@ async function run() {
const versionSpec = resolveVersionInput(); const versionSpec = resolveVersionInput();
setGoToolchain(); setGoToolchain();
const cache = getBooleanInput('cache'); const cache = getBooleanInput('cache');
core_info(`Setup go version spec ${versionSpec}`);
let arch = getInput('architecture'); let arch = getInput('architecture');
if (!arch) { if (!arch) {
arch = external_os_default().arch(); arch = external_os_default().arch();
} }
if (versionSpec) { if (versionSpec) {
const token = getInput('token'); startGroup(`Setup Go ${versionSpec}`);
const auth = !token ? undefined : `token ${token}`; try {
const checkLatest = getBooleanInput('check-latest'); core_info(`Setup go version spec ${versionSpec}`);
const goDownloadBaseUrl = getInput('go-download-base-url') || const token = getInput('token');
process.env['GO_DOWNLOAD_BASE_URL'] || const auth = !token ? undefined : `token ${token}`;
undefined; const checkLatest = getBooleanInput('check-latest');
if (goDownloadBaseUrl) { const goDownloadBaseUrl = getInput('go-download-base-url') ||
core_info(`Using custom Go download base URL: ${goDownloadBaseUrl}`); process.env['GO_DOWNLOAD_BASE_URL'] ||
} undefined;
const installDir = await getGo(versionSpec, checkLatest, auth, arch, goDownloadBaseUrl); if (goDownloadBaseUrl) {
const installDirVersion = external_path_default().basename(external_path_default().dirname(installDir)); core_info(`Using custom Go download base URL: ${goDownloadBaseUrl}`);
addPath(external_path_default().join(installDir, 'bin')); }
core_info('Added go to the path'); const installDir = await getGo(versionSpec, checkLatest, auth, arch, goDownloadBaseUrl);
const version = makeSemver(installDirVersion); const installDirVersion = external_path_default().basename(external_path_default().dirname(installDir));
// Go versions less than 1.9 require GOROOT to be set addPath(external_path_default().join(installDir, 'bin'));
if (node_modules_semver.lt(version, '1.9.0')) { core_info('Added go to the path');
core_info('Setting GOROOT for Go version < 1.9'); const version = makeSemver(installDirVersion);
exportVariable('GOROOT', installDir); // Go versions less than 1.9 require GOROOT to be set
} if (node_modules_semver.lt(version, '1.9.0')) {
core_info(`Successfully set up Go version ${versionSpec}`); core_info('Setting GOROOT for Go version < 1.9');
exportVariable('GOROOT', installDir);
}
core_info(`Successfully set up Go version ${versionSpec}`);
}
finally {
endGroup();
}
} }
else { else {
core_info('[warning]go-version input was not specified. The action will try to use pre-installed version.'); core_info('[warning]go-version input was not specified. The action will try to use pre-installed version.');

@ -21,7 +21,6 @@ export async function run() {
setGoToolchain(); setGoToolchain();
const cache = core.getBooleanInput('cache'); const cache = core.getBooleanInput('cache');
core.info(`Setup go version spec ${versionSpec}`);
let arch = core.getInput('architecture') as Architecture; let arch = core.getInput('architecture') as Architecture;
@ -30,41 +29,48 @@ export async function run() {
} }
if (versionSpec) { if (versionSpec) {
const token = core.getInput('token'); core.startGroup(`Setup Go ${versionSpec}`);
const auth = !token ? undefined : `token ${token}`; try {
core.info(`Setup go version spec ${versionSpec}`);
const checkLatest = core.getBooleanInput('check-latest'); const token = core.getInput('token');
const auth = !token ? undefined : `token ${token}`;
const goDownloadBaseUrl = const checkLatest = core.getBooleanInput('check-latest');
core.getInput('go-download-base-url') ||
process.env['GO_DOWNLOAD_BASE_URL'] ||
undefined;
if (goDownloadBaseUrl) { const goDownloadBaseUrl =
core.info(`Using custom Go download base URL: ${goDownloadBaseUrl}`); core.getInput('go-download-base-url') ||
} process.env['GO_DOWNLOAD_BASE_URL'] ||
undefined;
const installDir = await installer.getGo( if (goDownloadBaseUrl) {
versionSpec, core.info(`Using custom Go download base URL: ${goDownloadBaseUrl}`);
checkLatest, }
auth,
arch,
goDownloadBaseUrl
);
const installDirVersion = path.basename(path.dirname(installDir)); const installDir = await installer.getGo(
versionSpec,
checkLatest,
auth,
arch,
goDownloadBaseUrl
);
core.addPath(path.join(installDir, 'bin')); const installDirVersion = path.basename(path.dirname(installDir));
core.info('Added go to the path');
const version = installer.makeSemver(installDirVersion); core.addPath(path.join(installDir, 'bin'));
// Go versions less than 1.9 require GOROOT to be set core.info('Added go to the path');
if (semver.lt(version, '1.9.0')) {
core.info('Setting GOROOT for Go version < 1.9'); const version = installer.makeSemver(installDirVersion);
core.exportVariable('GOROOT', installDir); // Go versions less than 1.9 require GOROOT to be set
} if (semver.lt(version, '1.9.0')) {
core.info('Setting GOROOT for Go version < 1.9');
core.exportVariable('GOROOT', installDir);
}
core.info(`Successfully set up Go version ${versionSpec}`); core.info(`Successfully set up Go version ${versionSpec}`);
} finally {
core.endGroup();
}
} else { } else {
core.info( core.info(
'[warning]go-version input was not specified. The action will try to use pre-installed version.' '[warning]go-version input was not specified. The action will try to use pre-installed version.'

Loading…
Cancel
Save