Merge branch 'main' of https://github.com/akv-platform/setup-go into apply-reusable-workflows
This commit is contained in:
		
						commit
						5b3907ef5c
					
				| @ -93,6 +93,41 @@ describe('getCacheDirectoryPath', () => { | |||||||
|       .then(data => expect(data).toEqual(expectedResult)); |       .then(data => expect(data).toEqual(expectedResult)); | ||||||
|   }); |   }); | ||||||
| 
 | 
 | ||||||
|  |   it('should return path to the cache folder if one command return empty str', async () => { | ||||||
|  |     //Arrange
 | ||||||
|  |     getExecOutputSpy.mockImplementationOnce((commandLine: string) => { | ||||||
|  |       return new Promise<exec.ExecOutput>(resolve => { | ||||||
|  |         resolve({exitCode: 0, stdout: 'path/to/cache/folder', stderr: ''}); | ||||||
|  |       }); | ||||||
|  |     }); | ||||||
|  | 
 | ||||||
|  |     getExecOutputSpy.mockImplementationOnce((commandLine: string) => { | ||||||
|  |       return new Promise<exec.ExecOutput>(resolve => { | ||||||
|  |         resolve({exitCode: 0, stdout: '', stderr: ''}); | ||||||
|  |       }); | ||||||
|  |     }); | ||||||
|  | 
 | ||||||
|  |     const expectedResult = ['path/to/cache/folder']; | ||||||
|  | 
 | ||||||
|  |     //Act + Assert
 | ||||||
|  |     return cacheUtils | ||||||
|  |       .getCacheDirectoryPath(validPackageManager) | ||||||
|  |       .then(data => expect(data).toEqual(expectedResult)); | ||||||
|  |   }); | ||||||
|  | 
 | ||||||
|  |   it('should throw if the both commands return empty str', async () => { | ||||||
|  |     getExecOutputSpy.mockImplementation((commandLine: string) => { | ||||||
|  |       return new Promise<exec.ExecOutput>(resolve => { | ||||||
|  |         resolve({exitCode: 10, stdout: '', stderr: ''}); | ||||||
|  |       }); | ||||||
|  |     }); | ||||||
|  | 
 | ||||||
|  |     //Act + Assert
 | ||||||
|  |     expect(async () => { | ||||||
|  |       await cacheUtils.getCacheDirectoryPath(validPackageManager); | ||||||
|  |     }).rejects.toThrow(); | ||||||
|  |   }); | ||||||
|  | 
 | ||||||
|   it('should throw if the specified package name is invalid', async () => { |   it('should throw if the specified package name is invalid', async () => { | ||||||
|     getExecOutputSpy.mockImplementation((commandLine: string) => { |     getExecOutputSpy.mockImplementation((commandLine: string) => { | ||||||
|       return new Promise<exec.ExecOutput>(resolve => { |       return new Promise<exec.ExecOutput>(resolve => { | ||||||
| @ -162,7 +197,7 @@ describe('isCacheFeatureAvailable', () => { | |||||||
|     expect(functionResult).toBeFalsy(); |     expect(functionResult).toBeFalsy(); | ||||||
|   }); |   }); | ||||||
| 
 | 
 | ||||||
|   it('should throw when cache feature is unavailable and GHES is used', () => { |   it('should warn when cache feature is unavailable and GHES is used', () => { | ||||||
|     //Arrange
 |     //Arrange
 | ||||||
|     isFeatureAvailableSpy.mockImplementation(() => { |     isFeatureAvailableSpy.mockImplementation(() => { | ||||||
|       return false; |       return false; | ||||||
| @ -170,10 +205,11 @@ describe('isCacheFeatureAvailable', () => { | |||||||
| 
 | 
 | ||||||
|     process.env['GITHUB_SERVER_URL'] = 'https://nongithub.com'; |     process.env['GITHUB_SERVER_URL'] = 'https://nongithub.com'; | ||||||
| 
 | 
 | ||||||
|     let errorMessage = |     let warningMessage = | ||||||
|       'Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.'; |       'Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.'; | ||||||
| 
 | 
 | ||||||
|     //Act + Assert
 |     //Act + Assert
 | ||||||
|     expect(() => cacheUtils.isCacheFeatureAvailable()).toThrow(errorMessage); |     expect(cacheUtils.isCacheFeatureAvailable()).toBeFalsy(); | ||||||
|  |     expect(warningSpy).toHaveBeenCalledWith(warningMessage); | ||||||
|   }); |   }); | ||||||
| }); | }); | ||||||
|  | |||||||
							
								
								
									
										21
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							| @ -60457,12 +60457,12 @@ const getPackageManagerInfo = (packageManager) => __awaiter(void 0, void 0, void | |||||||
| }); | }); | ||||||
| exports.getPackageManagerInfo = getPackageManagerInfo; | exports.getPackageManagerInfo = getPackageManagerInfo; | ||||||
| const getCacheDirectoryPath = (packageManagerInfo) => __awaiter(void 0, void 0, void 0, function* () { | const getCacheDirectoryPath = (packageManagerInfo) => __awaiter(void 0, void 0, void 0, function* () { | ||||||
|     let pathList = yield Promise.all(packageManagerInfo.cacheFolderCommandList.map(command => exports.getCommandOutput(command))); |     const pathList = yield Promise.all(packageManagerInfo.cacheFolderCommandList.map(command => exports.getCommandOutput(command))); | ||||||
|     const emptyPaths = pathList.filter(item => !item); |     const cachePaths = pathList.filter(item => item); | ||||||
|     if (emptyPaths.length) { |     if (!cachePaths.length) { | ||||||
|         throw new Error(`Could not get cache folder paths.`); |         throw new Error(`Could not get cache folder paths.`); | ||||||
|     } |     } | ||||||
|     return pathList; |     return cachePaths; | ||||||
| }); | }); | ||||||
| exports.getCacheDirectoryPath = getCacheDirectoryPath; | exports.getCacheDirectoryPath = getCacheDirectoryPath; | ||||||
| function isGhes() { | function isGhes() { | ||||||
| @ -60471,16 +60471,15 @@ function isGhes() { | |||||||
| } | } | ||||||
| exports.isGhes = isGhes; | exports.isGhes = isGhes; | ||||||
| function isCacheFeatureAvailable() { | function isCacheFeatureAvailable() { | ||||||
|     if (!cache.isFeatureAvailable()) { |     if (cache.isFeatureAvailable()) { | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|     if (isGhes()) { |     if (isGhes()) { | ||||||
|             throw new Error('Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.'); |         core.warning('Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.'); | ||||||
|         } |  | ||||||
|         else { |  | ||||||
|             core.warning('The runner was not able to contact the cache service. Caching will be skipped'); |  | ||||||
|         } |  | ||||||
|         return false; |         return false; | ||||||
|     } |     } | ||||||
|     return true; |     core.warning('The runner was not able to contact the cache service. Caching will be skipped'); | ||||||
|  |     return false; | ||||||
| } | } | ||||||
| exports.isCacheFeatureAvailable = isCacheFeatureAvailable; | exports.isCacheFeatureAvailable = isCacheFeatureAvailable; | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										21
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							| @ -63130,12 +63130,12 @@ const getPackageManagerInfo = (packageManager) => __awaiter(void 0, void 0, void | |||||||
| }); | }); | ||||||
| exports.getPackageManagerInfo = getPackageManagerInfo; | exports.getPackageManagerInfo = getPackageManagerInfo; | ||||||
| const getCacheDirectoryPath = (packageManagerInfo) => __awaiter(void 0, void 0, void 0, function* () { | const getCacheDirectoryPath = (packageManagerInfo) => __awaiter(void 0, void 0, void 0, function* () { | ||||||
|     let pathList = yield Promise.all(packageManagerInfo.cacheFolderCommandList.map(command => exports.getCommandOutput(command))); |     const pathList = yield Promise.all(packageManagerInfo.cacheFolderCommandList.map(command => exports.getCommandOutput(command))); | ||||||
|     const emptyPaths = pathList.filter(item => !item); |     const cachePaths = pathList.filter(item => item); | ||||||
|     if (emptyPaths.length) { |     if (!cachePaths.length) { | ||||||
|         throw new Error(`Could not get cache folder paths.`); |         throw new Error(`Could not get cache folder paths.`); | ||||||
|     } |     } | ||||||
|     return pathList; |     return cachePaths; | ||||||
| }); | }); | ||||||
| exports.getCacheDirectoryPath = getCacheDirectoryPath; | exports.getCacheDirectoryPath = getCacheDirectoryPath; | ||||||
| function isGhes() { | function isGhes() { | ||||||
| @ -63144,16 +63144,15 @@ function isGhes() { | |||||||
| } | } | ||||||
| exports.isGhes = isGhes; | exports.isGhes = isGhes; | ||||||
| function isCacheFeatureAvailable() { | function isCacheFeatureAvailable() { | ||||||
|     if (!cache.isFeatureAvailable()) { |     if (cache.isFeatureAvailable()) { | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|     if (isGhes()) { |     if (isGhes()) { | ||||||
|             throw new Error('Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.'); |         core.warning('Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.'); | ||||||
|         } |  | ||||||
|         else { |  | ||||||
|             core.warning('The runner was not able to contact the cache service. Caching will be skipped'); |  | ||||||
|         } |  | ||||||
|         return false; |         return false; | ||||||
|     } |     } | ||||||
|     return true; |     core.warning('The runner was not able to contact the cache service. Caching will be skipped'); | ||||||
|  |     return false; | ||||||
| } | } | ||||||
| exports.isCacheFeatureAvailable = isCacheFeatureAvailable; | exports.isCacheFeatureAvailable = isCacheFeatureAvailable; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -34,19 +34,19 @@ export const getPackageManagerInfo = async (packageManager: string) => { | |||||||
| export const getCacheDirectoryPath = async ( | export const getCacheDirectoryPath = async ( | ||||||
|   packageManagerInfo: PackageManagerInfo |   packageManagerInfo: PackageManagerInfo | ||||||
| ) => { | ) => { | ||||||
|   let pathList = await Promise.all( |   const pathList = await Promise.all( | ||||||
|     packageManagerInfo.cacheFolderCommandList.map(command => |     packageManagerInfo.cacheFolderCommandList.map(command => | ||||||
|       getCommandOutput(command) |       getCommandOutput(command) | ||||||
|     ) |     ) | ||||||
|   ); |   ); | ||||||
| 
 | 
 | ||||||
|   const emptyPaths = pathList.filter(item => !item); |   const cachePaths = pathList.filter(item => item); | ||||||
| 
 | 
 | ||||||
|   if (emptyPaths.length) { |   if (!cachePaths.length) { | ||||||
|     throw new Error(`Could not get cache folder paths.`); |     throw new Error(`Could not get cache folder paths.`); | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   return pathList; |   return cachePaths; | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| export function isGhes(): boolean { | export function isGhes(): boolean { | ||||||
| @ -57,19 +57,19 @@ export function isGhes(): boolean { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export function isCacheFeatureAvailable(): boolean { | export function isCacheFeatureAvailable(): boolean { | ||||||
|   if (!cache.isFeatureAvailable()) { |   if (cache.isFeatureAvailable()) { | ||||||
|     if (isGhes()) { |     return true; | ||||||
|       throw new Error( |  | ||||||
|         'Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.' |  | ||||||
|       ); |  | ||||||
|     } else { |  | ||||||
|       core.warning( |  | ||||||
|         'The runner was not able to contact the cache service. Caching will be skipped' |  | ||||||
|       ); |  | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|  |   if (isGhes()) { | ||||||
|  |     core.warning( | ||||||
|  |       'Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.' | ||||||
|  |     ); | ||||||
|     return false; |     return false; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   return true; |   core.warning( | ||||||
|  |     'The runner was not able to contact the cache service. Caching will be skipped' | ||||||
|  |   ); | ||||||
|  |   return false; | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user