mirror of https://github.com/actions/setup-go.git
fix error with toolcache
This commit is contained in:
parent
9f0eac3260
commit
11e0301e1d
|
@ -63234,7 +63234,18 @@ function getGo(versionSpec, checkLatest, auth, arch = os_1.default.arch()) {
|
|||
if (versionSpec === utils_1.StableReleaseAlias.Stable ||
|
||||
versionSpec === utils_1.StableReleaseAlias.OldStable) {
|
||||
manifest = yield getManifest(auth);
|
||||
versionSpec = yield resolveStableVersionInput(versionSpec, arch, osPlat, manifest);
|
||||
let stableVersion = yield resolveStableVersionInput(versionSpec, arch, osPlat, manifest);
|
||||
if (!stableVersion) {
|
||||
const dlUrl = 'https://golang.org/dl/?mode=json&include=all';
|
||||
let candidates = yield module.exports.getVersionsDist(dlUrl);
|
||||
if (!candidates) {
|
||||
throw new Error(`golang download url did not return results`);
|
||||
}
|
||||
const fixedCandidates = candidates.map(item => {
|
||||
return Object.assign(Object.assign({}, item), { version: makeSemver(item.version) });
|
||||
});
|
||||
stableVersion = yield resolveStableVersionInput(versionSpec, arch, osPlat, fixedCandidates);
|
||||
}
|
||||
}
|
||||
if (checkLatest) {
|
||||
core.info('Attempting to resolve the latest version from the manifest...');
|
||||
|
@ -63400,13 +63411,6 @@ function findMatch(versionSpec, arch = os_1.default.arch()) {
|
|||
if (!candidates) {
|
||||
throw new Error(`golang download url did not return results`);
|
||||
}
|
||||
if (versionSpec === utils_1.StableReleaseAlias.Stable ||
|
||||
versionSpec === utils_1.StableReleaseAlias.OldStable) {
|
||||
const fixedCandidates = candidates.map(item => {
|
||||
return Object.assign(Object.assign({}, item), { version: makeSemver(item.version) });
|
||||
});
|
||||
versionSpec = yield resolveStableVersionInput(versionSpec, archFilter, platFilter, fixedCandidates);
|
||||
}
|
||||
let goFile;
|
||||
for (let i = 0; i < candidates.length; i++) {
|
||||
let candidate = candidates[i];
|
||||
|
@ -63480,7 +63484,6 @@ function parseGoVersionFile(versionFilePath) {
|
|||
}
|
||||
exports.parseGoVersionFile = parseGoVersionFile;
|
||||
function resolveStableVersionInput(versionSpec, arch, platform, manifest) {
|
||||
var _a;
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
const releases = manifest
|
||||
.map(item => {
|
||||
|
@ -63493,16 +63496,13 @@ function resolveStableVersionInput(versionSpec, arch, platform, manifest) {
|
|||
.filter(item => !!item && !semver.prerelease(item));
|
||||
if (versionSpec === utils_1.StableReleaseAlias.Stable) {
|
||||
core.info(`stable version resolved as ${releases[0]}`);
|
||||
return (_a = releases[0]) !== null && _a !== void 0 ? _a : versionSpec;
|
||||
return releases[0];
|
||||
}
|
||||
else {
|
||||
const versions = releases.map(release => `${semver.major(release)}.${semver.minor(release)}`);
|
||||
const uniqueVersions = Array.from(new Set(versions));
|
||||
const oldstableVersion = releases.find(item => item.startsWith(uniqueVersions[1]));
|
||||
core.info(`oldstable version resolved as ${oldstableVersion}`);
|
||||
if (!oldstableVersion) {
|
||||
return versionSpec;
|
||||
}
|
||||
return oldstableVersion;
|
||||
}
|
||||
});
|
||||
|
|
|
@ -44,12 +44,36 @@ export async function getGo(
|
|||
versionSpec === StableReleaseAlias.OldStable
|
||||
) {
|
||||
manifest = await getManifest(auth);
|
||||
versionSpec = await resolveStableVersionInput(
|
||||
let stableVersion = await resolveStableVersionInput(
|
||||
versionSpec,
|
||||
arch,
|
||||
osPlat,
|
||||
manifest
|
||||
);
|
||||
|
||||
if (!stableVersion) {
|
||||
const dlUrl: string = 'https://golang.org/dl/?mode=json&include=all';
|
||||
let candidates:
|
||||
| IGoVersion[]
|
||||
| null = await module.exports.getVersionsDist(dlUrl);
|
||||
if (!candidates) {
|
||||
throw new Error(`golang download url did not return results`);
|
||||
}
|
||||
|
||||
const fixedCandidates = candidates.map(item => {
|
||||
return {
|
||||
...item,
|
||||
version: makeSemver(item.version)
|
||||
};
|
||||
});
|
||||
|
||||
stableVersion = await resolveStableVersionInput(
|
||||
versionSpec,
|
||||
arch,
|
||||
osPlat,
|
||||
fixedCandidates
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (checkLatest) {
|
||||
|
@ -267,24 +291,6 @@ export async function findMatch(
|
|||
throw new Error(`golang download url did not return results`);
|
||||
}
|
||||
|
||||
if (
|
||||
versionSpec === StableReleaseAlias.Stable ||
|
||||
versionSpec === StableReleaseAlias.OldStable
|
||||
) {
|
||||
const fixedCandidates = candidates.map(item => {
|
||||
return {
|
||||
...item,
|
||||
version: makeSemver(item.version)
|
||||
};
|
||||
});
|
||||
versionSpec = await resolveStableVersionInput(
|
||||
versionSpec,
|
||||
archFilter,
|
||||
platFilter,
|
||||
fixedCandidates
|
||||
);
|
||||
}
|
||||
|
||||
let goFile: IGoVersionFile | undefined;
|
||||
for (let i = 0; i < candidates.length; i++) {
|
||||
let candidate: IGoVersion = candidates[i];
|
||||
|
@ -378,7 +384,7 @@ export async function resolveStableVersionInput(
|
|||
arch: string,
|
||||
platform: string,
|
||||
manifest: tc.IToolRelease[] | IGoVersion[]
|
||||
): Promise<string> {
|
||||
) {
|
||||
const releases = manifest
|
||||
.map(item => {
|
||||
const index = item.files.findIndex(
|
||||
|
@ -394,7 +400,7 @@ export async function resolveStableVersionInput(
|
|||
if (versionSpec === StableReleaseAlias.Stable) {
|
||||
core.info(`stable version resolved as ${releases[0]}`);
|
||||
|
||||
return releases[0] ?? versionSpec;
|
||||
return releases[0];
|
||||
} else {
|
||||
const versions = releases.map(
|
||||
release => `${semver.major(release)}.${semver.minor(release)}`
|
||||
|
@ -407,10 +413,6 @@ export async function resolveStableVersionInput(
|
|||
|
||||
core.info(`oldstable version resolved as ${oldstableVersion}`);
|
||||
|
||||
if (!oldstableVersion) {
|
||||
return versionSpec;
|
||||
}
|
||||
|
||||
return oldstableVersion;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue