mirror of
				https://github.com/actions/setup-node.git
				synced 2025-10-31 08:04:00 +08:00 
			
		
		
		
	upgrade @action/cache to 3.0.4 to fix stuck issue (#573)
				
					
				
			This commit is contained in:
		
							
								
								
									
										128
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										128
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							| @@ -525,7 +525,13 @@ function resolvePaths(patterns) { | ||||
|                     .replace(new RegExp(`\\${path.sep}`, 'g'), '/'); | ||||
|                 core.debug(`Matched: ${relativeFile}`); | ||||
|                 // Paths are made relative so the tar entries are all relative to the root of the workspace.
 | ||||
|                 paths.push(`${relativeFile}`); | ||||
|                 if (relativeFile === '') { | ||||
|                     // path.relative returns empty string if workspace and file are equal
 | ||||
|                     paths.push('.'); | ||||
|                 } | ||||
|                 else { | ||||
|                     paths.push(`${relativeFile}`); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         catch (e_1_1) { e_1 = { error: e_1_1 }; } | ||||
| @@ -683,6 +689,7 @@ const util = __importStar(__nccwpck_require__(3837)); | ||||
| const utils = __importStar(__nccwpck_require__(1518)); | ||||
| const constants_1 = __nccwpck_require__(8840); | ||||
| const requestUtils_1 = __nccwpck_require__(3981); | ||||
| const abort_controller_1 = __nccwpck_require__(2557); | ||||
| /** | ||||
|  * Pipes the body of a HTTP response to a stream | ||||
|  * | ||||
| @@ -866,15 +873,24 @@ function downloadCacheStorageSDK(archiveLocation, archivePath, options) { | ||||
|             const fd = fs.openSync(archivePath, 'w'); | ||||
|             try { | ||||
|                 downloadProgress.startDisplayTimer(); | ||||
|                 const controller = new abort_controller_1.AbortController(); | ||||
|                 const abortSignal = controller.signal; | ||||
|                 while (!downloadProgress.isDone()) { | ||||
|                     const segmentStart = downloadProgress.segmentOffset + downloadProgress.segmentSize; | ||||
|                     const segmentSize = Math.min(maxSegmentSize, contentLength - segmentStart); | ||||
|                     downloadProgress.nextSegment(segmentSize); | ||||
|                     const result = yield client.downloadToBuffer(segmentStart, segmentSize, { | ||||
|                     const result = yield promiseWithTimeout(options.segmentTimeoutInMs || 3600000, client.downloadToBuffer(segmentStart, segmentSize, { | ||||
|                         abortSignal, | ||||
|                         concurrency: options.downloadConcurrency, | ||||
|                         onProgress: downloadProgress.onProgress() | ||||
|                     }); | ||||
|                     fs.writeFileSync(fd, result); | ||||
|                     })); | ||||
|                     if (result === 'timeout') { | ||||
|                         controller.abort(); | ||||
|                         throw new Error('Aborting cache download as the download time exceeded the timeout.'); | ||||
|                     } | ||||
|                     else if (Buffer.isBuffer(result)) { | ||||
|                         fs.writeFileSync(fd, result); | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|             finally { | ||||
| @@ -885,6 +901,16 @@ function downloadCacheStorageSDK(archiveLocation, archivePath, options) { | ||||
|     }); | ||||
| } | ||||
| exports.downloadCacheStorageSDK = downloadCacheStorageSDK; | ||||
| const promiseWithTimeout = (timeoutMs, promise) => __awaiter(void 0, void 0, void 0, function* () { | ||||
|     let timeoutHandle; | ||||
|     const timeoutPromise = new Promise(resolve => { | ||||
|         timeoutHandle = setTimeout(() => resolve('timeout'), timeoutMs); | ||||
|     }); | ||||
|     return Promise.race([promise, timeoutPromise]).then(result => { | ||||
|         clearTimeout(timeoutHandle); | ||||
|         return result; | ||||
|     }); | ||||
| }); | ||||
| //# sourceMappingURL=downloadUtils.js.map
 | ||||
| 
 | ||||
| /***/ }), | ||||
| @@ -1044,6 +1070,7 @@ const fs_1 = __nccwpck_require__(7147); | ||||
| const path = __importStar(__nccwpck_require__(1017)); | ||||
| const utils = __importStar(__nccwpck_require__(1518)); | ||||
| const constants_1 = __nccwpck_require__(8840); | ||||
| const IS_WINDOWS = process.platform === 'win32'; | ||||
| function getTarPath(args, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         switch (process.platform) { | ||||
| @@ -1091,26 +1118,43 @@ function getWorkingDirectory() { | ||||
|     var _a; | ||||
|     return (_a = process.env['GITHUB_WORKSPACE']) !== null && _a !== void 0 ? _a : process.cwd(); | ||||
| } | ||||
| // Common function for extractTar and listTar to get the compression method
 | ||||
| function getCompressionProgram(compressionMethod) { | ||||
|     // -d: Decompress.
 | ||||
|     // unzstd is equivalent to 'zstd -d'
 | ||||
|     // --long=#: Enables long distance matching with # bits. Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|     // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|     switch (compressionMethod) { | ||||
|         case constants_1.CompressionMethod.Zstd: | ||||
|             return [ | ||||
|                 '--use-compress-program', | ||||
|                 IS_WINDOWS ? 'zstd -d --long=30' : 'unzstd --long=30' | ||||
|             ]; | ||||
|         case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|             return ['--use-compress-program', IS_WINDOWS ? 'zstd -d' : 'unzstd']; | ||||
|         default: | ||||
|             return ['-z']; | ||||
|     } | ||||
| } | ||||
| function listTar(archivePath, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         const args = [ | ||||
|             ...getCompressionProgram(compressionMethod), | ||||
|             '-tf', | ||||
|             archivePath.replace(new RegExp(`\\${path.sep}`, 'g'), '/'), | ||||
|             '-P' | ||||
|         ]; | ||||
|         yield execTar(args, compressionMethod); | ||||
|     }); | ||||
| } | ||||
| exports.listTar = listTar; | ||||
| function extractTar(archivePath, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         // Create directory to extract tar into
 | ||||
|         const workingDirectory = getWorkingDirectory(); | ||||
|         yield io.mkdirP(workingDirectory); | ||||
|         // --d: Decompress.
 | ||||
|         // --long=#: Enables long distance matching with # bits. Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|         // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|         function getCompressionProgram() { | ||||
|             switch (compressionMethod) { | ||||
|                 case constants_1.CompressionMethod.Zstd: | ||||
|                     return ['--use-compress-program', 'zstd -d --long=30']; | ||||
|                 case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|                     return ['--use-compress-program', 'zstd -d']; | ||||
|                 default: | ||||
|                     return ['-z']; | ||||
|             } | ||||
|         } | ||||
|         const args = [ | ||||
|             ...getCompressionProgram(), | ||||
|             ...getCompressionProgram(compressionMethod), | ||||
|             '-xf', | ||||
|             archivePath.replace(new RegExp(`\\${path.sep}`, 'g'), '/'), | ||||
|             '-P', | ||||
| @@ -1129,15 +1173,19 @@ function createTar(archiveFolder, sourceDirectories, compressionMethod) { | ||||
|         fs_1.writeFileSync(path.join(archiveFolder, manifestFilename), sourceDirectories.join('\n')); | ||||
|         const workingDirectory = getWorkingDirectory(); | ||||
|         // -T#: Compress using # working thread. If # is 0, attempt to detect and use the number of physical CPU cores.
 | ||||
|         // zstdmt is equivalent to 'zstd -T0'
 | ||||
|         // --long=#: Enables long distance matching with # bits. Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|         // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|         // Long range mode is added to zstd in v1.3.2 release, so we will not use --long in older version of zstd.
 | ||||
|         function getCompressionProgram() { | ||||
|             switch (compressionMethod) { | ||||
|                 case constants_1.CompressionMethod.Zstd: | ||||
|                     return ['--use-compress-program', 'zstd -T0 --long=30']; | ||||
|                     return [ | ||||
|                         '--use-compress-program', | ||||
|                         IS_WINDOWS ? 'zstd -T0 --long=30' : 'zstdmt --long=30' | ||||
|                     ]; | ||||
|                 case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|                     return ['--use-compress-program', 'zstd -T0']; | ||||
|                     return ['--use-compress-program', IS_WINDOWS ? 'zstd -T0' : 'zstdmt']; | ||||
|                 default: | ||||
|                     return ['-z']; | ||||
|             } | ||||
| @@ -1159,32 +1207,6 @@ function createTar(archiveFolder, sourceDirectories, compressionMethod) { | ||||
|     }); | ||||
| } | ||||
| exports.createTar = createTar; | ||||
| function listTar(archivePath, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         // --d: Decompress.
 | ||||
|         // --long=#: Enables long distance matching with # bits.
 | ||||
|         // Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|         // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|         function getCompressionProgram() { | ||||
|             switch (compressionMethod) { | ||||
|                 case constants_1.CompressionMethod.Zstd: | ||||
|                     return ['--use-compress-program', 'zstd -d --long=30']; | ||||
|                 case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|                     return ['--use-compress-program', 'zstd -d']; | ||||
|                 default: | ||||
|                     return ['-z']; | ||||
|             } | ||||
|         } | ||||
|         const args = [ | ||||
|             ...getCompressionProgram(), | ||||
|             '-tf', | ||||
|             archivePath.replace(new RegExp(`\\${path.sep}`, 'g'), '/'), | ||||
|             '-P' | ||||
|         ]; | ||||
|         yield execTar(args, compressionMethod); | ||||
|     }); | ||||
| } | ||||
| exports.listTar = listTar; | ||||
| //# sourceMappingURL=tar.js.map
 | ||||
| 
 | ||||
| /***/ }), | ||||
| @@ -1235,7 +1257,8 @@ function getDownloadOptions(copy) { | ||||
|     const result = { | ||||
|         useAzureSdk: true, | ||||
|         downloadConcurrency: 8, | ||||
|         timeoutInMs: 30000 | ||||
|         timeoutInMs: 30000, | ||||
|         segmentTimeoutInMs: 3600000 | ||||
|     }; | ||||
|     if (copy) { | ||||
|         if (typeof copy.useAzureSdk === 'boolean') { | ||||
| @@ -1247,10 +1270,21 @@ function getDownloadOptions(copy) { | ||||
|         if (typeof copy.timeoutInMs === 'number') { | ||||
|             result.timeoutInMs = copy.timeoutInMs; | ||||
|         } | ||||
|         if (typeof copy.segmentTimeoutInMs === 'number') { | ||||
|             result.segmentTimeoutInMs = copy.segmentTimeoutInMs; | ||||
|         } | ||||
|     } | ||||
|     const segmentDownloadTimeoutMins = process.env['SEGMENT_DOWNLOAD_TIMEOUT_MINS']; | ||||
|     if (segmentDownloadTimeoutMins && | ||||
|         !isNaN(Number(segmentDownloadTimeoutMins)) && | ||||
|         isFinite(Number(segmentDownloadTimeoutMins))) { | ||||
|         result.segmentTimeoutInMs = Number(segmentDownloadTimeoutMins) * 60 * 1000; | ||||
|     } | ||||
|     core.debug(`Use Azure SDK: ${result.useAzureSdk}`); | ||||
|     core.debug(`Download concurrency: ${result.downloadConcurrency}`); | ||||
|     core.debug(`Request timeout (ms): ${result.timeoutInMs}`); | ||||
|     core.debug(`Cache segment download timeout mins env var: ${process.env['SEGMENT_DOWNLOAD_TIMEOUT_MINS']}`); | ||||
|     core.debug(`Segment download timeout (ms): ${result.segmentTimeoutInMs}`); | ||||
|     return result; | ||||
| } | ||||
| exports.getDownloadOptions = getDownloadOptions; | ||||
|   | ||||
							
								
								
									
										128
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										128
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							| @@ -525,7 +525,13 @@ function resolvePaths(patterns) { | ||||
|                     .replace(new RegExp(`\\${path.sep}`, 'g'), '/'); | ||||
|                 core.debug(`Matched: ${relativeFile}`); | ||||
|                 // Paths are made relative so the tar entries are all relative to the root of the workspace.
 | ||||
|                 paths.push(`${relativeFile}`); | ||||
|                 if (relativeFile === '') { | ||||
|                     // path.relative returns empty string if workspace and file are equal
 | ||||
|                     paths.push('.'); | ||||
|                 } | ||||
|                 else { | ||||
|                     paths.push(`${relativeFile}`); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         catch (e_1_1) { e_1 = { error: e_1_1 }; } | ||||
| @@ -683,6 +689,7 @@ const util = __importStar(__nccwpck_require__(3837)); | ||||
| const utils = __importStar(__nccwpck_require__(1518)); | ||||
| const constants_1 = __nccwpck_require__(8840); | ||||
| const requestUtils_1 = __nccwpck_require__(3981); | ||||
| const abort_controller_1 = __nccwpck_require__(2557); | ||||
| /** | ||||
|  * Pipes the body of a HTTP response to a stream | ||||
|  * | ||||
| @@ -866,15 +873,24 @@ function downloadCacheStorageSDK(archiveLocation, archivePath, options) { | ||||
|             const fd = fs.openSync(archivePath, 'w'); | ||||
|             try { | ||||
|                 downloadProgress.startDisplayTimer(); | ||||
|                 const controller = new abort_controller_1.AbortController(); | ||||
|                 const abortSignal = controller.signal; | ||||
|                 while (!downloadProgress.isDone()) { | ||||
|                     const segmentStart = downloadProgress.segmentOffset + downloadProgress.segmentSize; | ||||
|                     const segmentSize = Math.min(maxSegmentSize, contentLength - segmentStart); | ||||
|                     downloadProgress.nextSegment(segmentSize); | ||||
|                     const result = yield client.downloadToBuffer(segmentStart, segmentSize, { | ||||
|                     const result = yield promiseWithTimeout(options.segmentTimeoutInMs || 3600000, client.downloadToBuffer(segmentStart, segmentSize, { | ||||
|                         abortSignal, | ||||
|                         concurrency: options.downloadConcurrency, | ||||
|                         onProgress: downloadProgress.onProgress() | ||||
|                     }); | ||||
|                     fs.writeFileSync(fd, result); | ||||
|                     })); | ||||
|                     if (result === 'timeout') { | ||||
|                         controller.abort(); | ||||
|                         throw new Error('Aborting cache download as the download time exceeded the timeout.'); | ||||
|                     } | ||||
|                     else if (Buffer.isBuffer(result)) { | ||||
|                         fs.writeFileSync(fd, result); | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|             finally { | ||||
| @@ -885,6 +901,16 @@ function downloadCacheStorageSDK(archiveLocation, archivePath, options) { | ||||
|     }); | ||||
| } | ||||
| exports.downloadCacheStorageSDK = downloadCacheStorageSDK; | ||||
| const promiseWithTimeout = (timeoutMs, promise) => __awaiter(void 0, void 0, void 0, function* () { | ||||
|     let timeoutHandle; | ||||
|     const timeoutPromise = new Promise(resolve => { | ||||
|         timeoutHandle = setTimeout(() => resolve('timeout'), timeoutMs); | ||||
|     }); | ||||
|     return Promise.race([promise, timeoutPromise]).then(result => { | ||||
|         clearTimeout(timeoutHandle); | ||||
|         return result; | ||||
|     }); | ||||
| }); | ||||
| //# sourceMappingURL=downloadUtils.js.map
 | ||||
| 
 | ||||
| /***/ }), | ||||
| @@ -1044,6 +1070,7 @@ const fs_1 = __nccwpck_require__(7147); | ||||
| const path = __importStar(__nccwpck_require__(1017)); | ||||
| const utils = __importStar(__nccwpck_require__(1518)); | ||||
| const constants_1 = __nccwpck_require__(8840); | ||||
| const IS_WINDOWS = process.platform === 'win32'; | ||||
| function getTarPath(args, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         switch (process.platform) { | ||||
| @@ -1091,26 +1118,43 @@ function getWorkingDirectory() { | ||||
|     var _a; | ||||
|     return (_a = process.env['GITHUB_WORKSPACE']) !== null && _a !== void 0 ? _a : process.cwd(); | ||||
| } | ||||
| // Common function for extractTar and listTar to get the compression method
 | ||||
| function getCompressionProgram(compressionMethod) { | ||||
|     // -d: Decompress.
 | ||||
|     // unzstd is equivalent to 'zstd -d'
 | ||||
|     // --long=#: Enables long distance matching with # bits. Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|     // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|     switch (compressionMethod) { | ||||
|         case constants_1.CompressionMethod.Zstd: | ||||
|             return [ | ||||
|                 '--use-compress-program', | ||||
|                 IS_WINDOWS ? 'zstd -d --long=30' : 'unzstd --long=30' | ||||
|             ]; | ||||
|         case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|             return ['--use-compress-program', IS_WINDOWS ? 'zstd -d' : 'unzstd']; | ||||
|         default: | ||||
|             return ['-z']; | ||||
|     } | ||||
| } | ||||
| function listTar(archivePath, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         const args = [ | ||||
|             ...getCompressionProgram(compressionMethod), | ||||
|             '-tf', | ||||
|             archivePath.replace(new RegExp(`\\${path.sep}`, 'g'), '/'), | ||||
|             '-P' | ||||
|         ]; | ||||
|         yield execTar(args, compressionMethod); | ||||
|     }); | ||||
| } | ||||
| exports.listTar = listTar; | ||||
| function extractTar(archivePath, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         // Create directory to extract tar into
 | ||||
|         const workingDirectory = getWorkingDirectory(); | ||||
|         yield io.mkdirP(workingDirectory); | ||||
|         // --d: Decompress.
 | ||||
|         // --long=#: Enables long distance matching with # bits. Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|         // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|         function getCompressionProgram() { | ||||
|             switch (compressionMethod) { | ||||
|                 case constants_1.CompressionMethod.Zstd: | ||||
|                     return ['--use-compress-program', 'zstd -d --long=30']; | ||||
|                 case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|                     return ['--use-compress-program', 'zstd -d']; | ||||
|                 default: | ||||
|                     return ['-z']; | ||||
|             } | ||||
|         } | ||||
|         const args = [ | ||||
|             ...getCompressionProgram(), | ||||
|             ...getCompressionProgram(compressionMethod), | ||||
|             '-xf', | ||||
|             archivePath.replace(new RegExp(`\\${path.sep}`, 'g'), '/'), | ||||
|             '-P', | ||||
| @@ -1129,15 +1173,19 @@ function createTar(archiveFolder, sourceDirectories, compressionMethod) { | ||||
|         fs_1.writeFileSync(path.join(archiveFolder, manifestFilename), sourceDirectories.join('\n')); | ||||
|         const workingDirectory = getWorkingDirectory(); | ||||
|         // -T#: Compress using # working thread. If # is 0, attempt to detect and use the number of physical CPU cores.
 | ||||
|         // zstdmt is equivalent to 'zstd -T0'
 | ||||
|         // --long=#: Enables long distance matching with # bits. Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|         // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|         // Long range mode is added to zstd in v1.3.2 release, so we will not use --long in older version of zstd.
 | ||||
|         function getCompressionProgram() { | ||||
|             switch (compressionMethod) { | ||||
|                 case constants_1.CompressionMethod.Zstd: | ||||
|                     return ['--use-compress-program', 'zstd -T0 --long=30']; | ||||
|                     return [ | ||||
|                         '--use-compress-program', | ||||
|                         IS_WINDOWS ? 'zstd -T0 --long=30' : 'zstdmt --long=30' | ||||
|                     ]; | ||||
|                 case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|                     return ['--use-compress-program', 'zstd -T0']; | ||||
|                     return ['--use-compress-program', IS_WINDOWS ? 'zstd -T0' : 'zstdmt']; | ||||
|                 default: | ||||
|                     return ['-z']; | ||||
|             } | ||||
| @@ -1159,32 +1207,6 @@ function createTar(archiveFolder, sourceDirectories, compressionMethod) { | ||||
|     }); | ||||
| } | ||||
| exports.createTar = createTar; | ||||
| function listTar(archivePath, compressionMethod) { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         // --d: Decompress.
 | ||||
|         // --long=#: Enables long distance matching with # bits.
 | ||||
|         // Maximum is 30 (1GB) on 32-bit OS and 31 (2GB) on 64-bit.
 | ||||
|         // Using 30 here because we also support 32-bit self-hosted runners.
 | ||||
|         function getCompressionProgram() { | ||||
|             switch (compressionMethod) { | ||||
|                 case constants_1.CompressionMethod.Zstd: | ||||
|                     return ['--use-compress-program', 'zstd -d --long=30']; | ||||
|                 case constants_1.CompressionMethod.ZstdWithoutLong: | ||||
|                     return ['--use-compress-program', 'zstd -d']; | ||||
|                 default: | ||||
|                     return ['-z']; | ||||
|             } | ||||
|         } | ||||
|         const args = [ | ||||
|             ...getCompressionProgram(), | ||||
|             '-tf', | ||||
|             archivePath.replace(new RegExp(`\\${path.sep}`, 'g'), '/'), | ||||
|             '-P' | ||||
|         ]; | ||||
|         yield execTar(args, compressionMethod); | ||||
|     }); | ||||
| } | ||||
| exports.listTar = listTar; | ||||
| //# sourceMappingURL=tar.js.map
 | ||||
| 
 | ||||
| /***/ }), | ||||
| @@ -1235,7 +1257,8 @@ function getDownloadOptions(copy) { | ||||
|     const result = { | ||||
|         useAzureSdk: true, | ||||
|         downloadConcurrency: 8, | ||||
|         timeoutInMs: 30000 | ||||
|         timeoutInMs: 30000, | ||||
|         segmentTimeoutInMs: 3600000 | ||||
|     }; | ||||
|     if (copy) { | ||||
|         if (typeof copy.useAzureSdk === 'boolean') { | ||||
| @@ -1247,10 +1270,21 @@ function getDownloadOptions(copy) { | ||||
|         if (typeof copy.timeoutInMs === 'number') { | ||||
|             result.timeoutInMs = copy.timeoutInMs; | ||||
|         } | ||||
|         if (typeof copy.segmentTimeoutInMs === 'number') { | ||||
|             result.segmentTimeoutInMs = copy.segmentTimeoutInMs; | ||||
|         } | ||||
|     } | ||||
|     const segmentDownloadTimeoutMins = process.env['SEGMENT_DOWNLOAD_TIMEOUT_MINS']; | ||||
|     if (segmentDownloadTimeoutMins && | ||||
|         !isNaN(Number(segmentDownloadTimeoutMins)) && | ||||
|         isFinite(Number(segmentDownloadTimeoutMins))) { | ||||
|         result.segmentTimeoutInMs = Number(segmentDownloadTimeoutMins) * 60 * 1000; | ||||
|     } | ||||
|     core.debug(`Use Azure SDK: ${result.useAzureSdk}`); | ||||
|     core.debug(`Download concurrency: ${result.downloadConcurrency}`); | ||||
|     core.debug(`Request timeout (ms): ${result.timeoutInMs}`); | ||||
|     core.debug(`Cache segment download timeout mins env var: ${process.env['SEGMENT_DOWNLOAD_TIMEOUT_MINS']}`); | ||||
|     core.debug(`Segment download timeout (ms): ${result.segmentTimeoutInMs}`); | ||||
|     return result; | ||||
| } | ||||
| exports.getDownloadOptions = getDownloadOptions; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Shude Li
					Shude Li