mirror of https://github.com/actions/setup-go.git
				
				
				
			wrap with try, debugging errors
Signed-off-by: Anton Troshin <anton@diagrid.io>
This commit is contained in:
		
							parent
							
								
									896e2cbf0f
								
							
						
					
					
						commit
						c8eefa5dde
					
				|  | @ -235,22 +235,28 @@ async function cacheWindowsDir( | |||
|   // iterate through actual cache directory paths and make links if necessary
 | ||||
|   for (const cachePath of actualCacheDirectoryPaths) { | ||||
|     core.info(`Trying to link ${cachePath.defaultPath} to ${cachePath.actualPath}`); | ||||
|     if (!fs.existsSync(cachePath.actualPath)) { | ||||
|       core.info(`Creating directory ${cachePath.actualPath}`); | ||||
|       fs.mkdirSync(path.dirname(cachePath.actualPath), {recursive: true}); | ||||
|     } else { | ||||
|       core.info(`Directory ${cachePath.actualPath} already exists`); | ||||
|     } | ||||
|     // make sure the link is pointing to the actual cache directory
 | ||||
|     const symlinkTarget = fs.readlinkSync(cachePath.defaultPath); | ||||
|     core.info(`Symlink target: ${symlinkTarget}`); | ||||
|     if (symlinkTarget !== "") { | ||||
|       core.info(`Found link ${cachePath.defaultPath} => ${symlinkTarget}`); | ||||
|     } else { | ||||
|       fs.symlinkSync(cachePath.actualPath, cachePath.defaultPath, 'junction'); | ||||
|       core.info( | ||||
|         `Created link ${cachePath.defaultPath} => ${cachePath.actualPath}` | ||||
|       ); | ||||
|     try { | ||||
|       if (!fs.existsSync(cachePath.actualPath)) { | ||||
|         core.info(`Creating directory ${cachePath.actualPath}`); | ||||
|         fs.mkdirSync(path.dirname(cachePath.actualPath), {recursive: true}); | ||||
|       } else { | ||||
|         core.info(`Directory ${cachePath.actualPath} already exists`); | ||||
|       } | ||||
| 
 | ||||
|       // check if the default path is a symlink
 | ||||
|       const isSymlink = fs.lstatSync(cachePath.defaultPath).isSymbolicLink(); | ||||
|       if (isSymlink) { | ||||
|         core.info(`Default path is symlink ${cachePath.defaultPath} => ${fs.readlinkSync(cachePath.defaultPath)}`); | ||||
|       } else { | ||||
|         core.info(`Default path is not a symlink ${cachePath.defaultPath}`); | ||||
|         fs.symlinkSync(cachePath.actualPath, cachePath.defaultPath, 'junction'); | ||||
|         core.info( | ||||
|           `Created link ${cachePath.defaultPath} => ${cachePath.actualPath}` | ||||
|         ); | ||||
|       } | ||||
|     } catch (err) { | ||||
|       core.info(`Failed to link ${cachePath.defaultPath} to ${cachePath.actualPath}`); | ||||
|       core.info('Error: ' + err); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Anton Troshin
						Anton Troshin