mirror of
				https://github.com/actions/setup-node.git
				synced 2025-11-01 00:23:59 +08:00 
			
		
		
		
	Fix: windows arm64 setup (#1126)
* Add condition to ensure ZIP extraction targets only Windows ARM64 official archives * Bumps micromatch from 4.0.5 to 4.0.8
This commit is contained in:
		
							
								
								
									
										8
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							| @@ -93883,7 +93883,7 @@ class BaseDistribution { | |||||||
|                 } |                 } | ||||||
|                 throw err; |                 throw err; | ||||||
|             } |             } | ||||||
|             const toolPath = yield this.extractArchive(downloadPath, info); |             const toolPath = yield this.extractArchive(downloadPath, info, true); | ||||||
|             core.info('Done'); |             core.info('Done'); | ||||||
|             return toolPath; |             return toolPath; | ||||||
|         }); |         }); | ||||||
| @@ -93933,7 +93933,7 @@ class BaseDistribution { | |||||||
|             return toolPath; |             return toolPath; | ||||||
|         }); |         }); | ||||||
|     } |     } | ||||||
|     extractArchive(downloadPath, info) { |     extractArchive(downloadPath, info, isOfficialArchive) { | ||||||
|         return __awaiter(this, void 0, void 0, function* () { |         return __awaiter(this, void 0, void 0, function* () { | ||||||
|             //
 |             //
 | ||||||
|             // Extract
 |             // Extract
 | ||||||
| @@ -93948,7 +93948,7 @@ class BaseDistribution { | |||||||
|                 // on Windows runners without PowerShell Core.
 |                 // on Windows runners without PowerShell Core.
 | ||||||
|                 //
 |                 //
 | ||||||
|                 // For default PowerShell Windows it should contain extension type to unpack it.
 |                 // For default PowerShell Windows it should contain extension type to unpack it.
 | ||||||
|                 if (extension === '.zip') { |                 if (extension === '.zip' && isOfficialArchive) { | ||||||
|                     const renamedArchive = `${downloadPath}.zip`; |                     const renamedArchive = `${downloadPath}.zip`; | ||||||
|                     fs_1.default.renameSync(downloadPath, renamedArchive); |                     fs_1.default.renameSync(downloadPath, renamedArchive); | ||||||
|                     extPath = yield tc.extractZip(renamedArchive); |                     extPath = yield tc.extractZip(renamedArchive); | ||||||
| @@ -94186,7 +94186,7 @@ class OfficialBuilds extends base_distribution_1.default { | |||||||
|                     core.info(`Acquiring ${versionInfo.resolvedVersion} - ${versionInfo.arch} from ${versionInfo.downloadUrl}`); |                     core.info(`Acquiring ${versionInfo.resolvedVersion} - ${versionInfo.arch} from ${versionInfo.downloadUrl}`); | ||||||
|                     downloadPath = yield tc.downloadTool(versionInfo.downloadUrl, undefined, this.nodeInfo.auth); |                     downloadPath = yield tc.downloadTool(versionInfo.downloadUrl, undefined, this.nodeInfo.auth); | ||||||
|                     if (downloadPath) { |                     if (downloadPath) { | ||||||
|                         toolPath = yield this.extractArchive(downloadPath, versionInfo); |                         toolPath = yield this.extractArchive(downloadPath, versionInfo, false); | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|                 else { |                 else { | ||||||
|   | |||||||
							
								
								
									
										8
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										8
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -4429,12 +4429,12 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/micromatch": { |     "node_modules/micromatch": { | ||||||
|       "version": "4.0.5", |       "version": "4.0.8", | ||||||
|       "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", |       "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", | ||||||
|       "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", |       "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", | ||||||
|       "dev": true, |       "dev": true, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "braces": "^3.0.2", |         "braces": "^3.0.3", | ||||||
|         "picomatch": "^2.3.1" |         "picomatch": "^2.3.1" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
|   | |||||||
| @@ -150,7 +150,7 @@ export default abstract class BaseDistribution { | |||||||
|       throw err; |       throw err; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     const toolPath = await this.extractArchive(downloadPath, info); |     const toolPath = await this.extractArchive(downloadPath, info, true); | ||||||
|     core.info('Done'); |     core.info('Done'); | ||||||
|  |  | ||||||
|     return toolPath; |     return toolPath; | ||||||
| @@ -210,7 +210,8 @@ export default abstract class BaseDistribution { | |||||||
|  |  | ||||||
|   protected async extractArchive( |   protected async extractArchive( | ||||||
|     downloadPath: string, |     downloadPath: string, | ||||||
|     info: INodeVersionInfo | null |     info: INodeVersionInfo | null, | ||||||
|  |     isOfficialArchive?: boolean | ||||||
|   ) { |   ) { | ||||||
|     // |     // | ||||||
|     // Extract |     // Extract | ||||||
| @@ -225,7 +226,7 @@ export default abstract class BaseDistribution { | |||||||
|       // on Windows runners without PowerShell Core. |       // on Windows runners without PowerShell Core. | ||||||
|       // |       // | ||||||
|       // For default PowerShell Windows it should contain extension type to unpack it. |       // For default PowerShell Windows it should contain extension type to unpack it. | ||||||
|       if (extension === '.zip') { |       if (extension === '.zip' && isOfficialArchive) { | ||||||
|         const renamedArchive = `${downloadPath}.zip`; |         const renamedArchive = `${downloadPath}.zip`; | ||||||
|         fs.renameSync(downloadPath, renamedArchive); |         fs.renameSync(downloadPath, renamedArchive); | ||||||
|         extPath = await tc.extractZip(renamedArchive); |         extPath = await tc.extractZip(renamedArchive); | ||||||
|   | |||||||
| @@ -88,7 +88,11 @@ export default class OfficialBuilds extends BaseDistribution { | |||||||
|         ); |         ); | ||||||
|  |  | ||||||
|         if (downloadPath) { |         if (downloadPath) { | ||||||
|           toolPath = await this.extractArchive(downloadPath, versionInfo); |           toolPath = await this.extractArchive( | ||||||
|  |             downloadPath, | ||||||
|  |             versionInfo, | ||||||
|  |             false | ||||||
|  |           ); | ||||||
|         } |         } | ||||||
|       } else { |       } else { | ||||||
|         core.info( |         core.info( | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Priya Gupta
					Priya Gupta