feat: support private mirrors

This commit is contained in:
Marco Ippolito
2025-03-06 10:52:23 +01:00
parent 40337cb8f7
commit 8f2ef77ada
14 changed files with 281 additions and 42 deletions

View File

@@ -84,7 +84,7 @@ export default class OfficialBuilds extends BaseDistribution {
downloadPath = await tc.downloadTool(
versionInfo.downloadUrl,
undefined,
this.nodeInfo.auth
this.nodeInfo.mirror ? this.nodeInfo.mirrorToken : this.nodeInfo.auth
);
if (downloadPath) {
@@ -176,8 +176,9 @@ export default class OfficialBuilds extends BaseDistribution {
return version;
}
protected getDistributionUrl(): string {
return `https://nodejs.org/dist`;
protected getDistributionUrl(mirror: string): string {
const url = mirror || 'https://nodejs.org';
return `${url}/dist`;
}
private getManifest(): Promise<tc.IToolRelease[]> {
@@ -185,7 +186,7 @@ export default class OfficialBuilds extends BaseDistribution {
return tc.getManifestFromRepo(
'actions',
'node-versions',
this.nodeInfo.auth,
this.nodeInfo.mirror ? this.nodeInfo.mirrorToken : this.nodeInfo.auth,
'main'
);
}