chore: change fallback message with mirrors

This commit is contained in:
Marco Ippolito 2025-03-27 14:29:32 +01:00
parent 8f2ef77ada
commit 40509ec001
No known key found for this signature in database
GPG Key ID: 27F5E38D5B0A215F
3 changed files with 49 additions and 6 deletions

View File

@ -282,6 +282,43 @@ describe('setup-node', () => {
expect(cnSpy).toHaveBeenCalledWith(`::add-path::${expPath}${osm.EOL}`);
});
it('falls back to a version from node dist from mirror', async () => {
os.platform = 'linux';
os.arch = 'x64';
// a version which is not in the manifest but is in node dist
const versionSpec = '11.15.0';
const mirror = 'https://my_mirror_url';
inputs['node-version'] = versionSpec;
inputs['always-auth'] = false;
inputs['token'] = 'faketoken';
inputs['mirror'] = mirror;
inputs['mirror-token'] = 'faketoken';
// ... but not in the local cache
findSpy.mockImplementation(() => '');
dlSpy.mockImplementation(async () => '/some/temp/path');
const toolPath = path.normalize('/cache/node/11.15.0/x64');
exSpy.mockImplementation(async () => '/some/other/temp/path');
cacheSpy.mockImplementation(async () => toolPath);
await main.run();
const expPath = path.join(toolPath, 'bin');
expect(getManifestSpy).toHaveBeenCalled();
expect(logSpy).toHaveBeenCalledWith(
`Attempting to download ${versionSpec}...`
);
expect(logSpy).toHaveBeenCalledWith(
`Not found in manifest. Falling back to download directly from ${mirror}`
);
expect(dlSpy).toHaveBeenCalled();
expect(exSpy).toHaveBeenCalled();
expect(cnSpy).toHaveBeenCalledWith(`::add-path::${expPath}${osm.EOL}`);
});
it('falls back to a version from node dist', async () => {
os.platform = 'linux';
os.arch = 'x64';

8
dist/setup/index.js vendored
View File

@ -97519,7 +97519,7 @@ class OfficialBuilds extends base_distribution_1.default {
}
setupNodeJs() {
return __awaiter(this, void 0, void 0, function* () {
var _a;
var _a, _b, _c;
let manifest;
let nodeJsVersions;
const osArch = this.translateArchToDistUrl(this.nodeInfo.arch);
@ -97564,7 +97564,7 @@ class OfficialBuilds extends base_distribution_1.default {
}
}
else {
core.info('Not found in manifest. Falling back to download directly from Node');
core.info(`Not found in manifest. Falling back to download directly from ${(_a = this.nodeInfo.mirror) !== null && _a !== void 0 ? _a : 'Node'}`);
}
}
catch (err) {
@ -97576,8 +97576,8 @@ class OfficialBuilds extends base_distribution_1.default {
else {
core.info(err.message);
}
core.debug((_a = err.stack) !== null && _a !== void 0 ? _a : 'empty stack');
core.info('Falling back to download directly from Node');
core.debug((_b = err.stack) !== null && _b !== void 0 ? _b : 'empty stack');
core.info(`Falling back to download directly from ${(_c = this.nodeInfo.mirror) !== null && _c !== void 0 ? _c : 'Node'}`);
}
if (!toolPath) {
toolPath = yield this.downloadDirectlyFromNode();

View File

@ -96,7 +96,9 @@ export default class OfficialBuilds extends BaseDistribution {
}
} else {
core.info(
'Not found in manifest. Falling back to download directly from Node'
`Not found in manifest. Falling back to download directly from ${
this.nodeInfo.mirror ?? 'Node'
}`
);
}
} catch (err) {
@ -112,7 +114,11 @@ export default class OfficialBuilds extends BaseDistribution {
core.info((err as Error).message);
}
core.debug((err as Error).stack ?? 'empty stack');
core.info('Falling back to download directly from Node');
core.info(
`Falling back to download directly from ${
this.nodeInfo.mirror ?? 'Node'
}`
);
}
if (!toolPath) {