mirror of
				https://github.com/actions/setup-dotnet.git
				synced 2025-10-31 16:03:45 +00:00 
			
		
		
		
	Fallback to global.json if no version specified
This commit is contained in:
		
							parent
							
								
									d6004ce18b
								
							
						
					
					
						commit
						3280df5864
					
				| @ -17,6 +17,7 @@ var __importStar = (this && this.__importStar) || function (mod) { | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| const core = __importStar(require("@actions/core")); | ||||
| const installer = __importStar(require("./installer")); | ||||
| const fs = __importStar(require("fs")); | ||||
| const path = __importStar(require("path")); | ||||
| function run() { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
| @ -25,7 +26,17 @@ function run() { | ||||
|             // Version is optional.  If supplied, install / use from the tool cache
 | ||||
|             // If not supplied then task is still used to setup proxy, auth, etc...
 | ||||
|             //
 | ||||
|             const version = core.getInput('version'); | ||||
|             let version = core.getInput('version'); | ||||
|             if (!version) { | ||||
|                 // Try to fall back to global.json
 | ||||
|                 const globalJsonPath = path.join(process.cwd(), 'global.json'); | ||||
|                 if (fs.existsSync(globalJsonPath)) { | ||||
|                     const globalJson = JSON.parse(fs.readFileSync(globalJsonPath, { encoding: 'utf8' })); | ||||
|                     if (globalJson.sdk && globalJson.sdk.version) { | ||||
|                         version = globalJson.sdk.version; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|             if (version) { | ||||
|                 const dotnetInstaller = new installer.DotnetCoreInstaller(version); | ||||
|                 yield dotnetInstaller.installDotnet(); | ||||
|  | ||||
| @ -1,5 +1,6 @@ | ||||
| import * as core from '@actions/core'; | ||||
| import * as installer from './installer'; | ||||
| import * as fs from 'fs'; | ||||
| import * as path from 'path'; | ||||
| 
 | ||||
| async function run() { | ||||
| @ -8,7 +9,20 @@ async function run() { | ||||
|     // Version is optional.  If supplied, install / use from the tool cache
 | ||||
|     // If not supplied then task is still used to setup proxy, auth, etc...
 | ||||
|     //
 | ||||
|     const version = core.getInput('version'); | ||||
|     let version = core.getInput('version'); | ||||
|     if (!version) { | ||||
|       // Try to fall back to global.json
 | ||||
|       const globalJsonPath = path.join(process.cwd(), 'global.json'); | ||||
|       if (fs.existsSync(globalJsonPath)) { | ||||
|         const globalJson = JSON.parse( | ||||
|           fs.readFileSync(globalJsonPath, {encoding: 'utf8'}) | ||||
|         ); | ||||
|         if (globalJson.sdk && globalJson.sdk.version) { | ||||
|           version = globalJson.sdk.version; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     if (version) { | ||||
|       const dotnetInstaller = new installer.DotnetCoreInstaller(version); | ||||
|       await dotnetInstaller.installDotnet(); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user