Adding branch reader and tests
							parent
							
								
									8c09e24d75
								
							
						
					
					
						commit
						1cfac08875
					
				|  | @ -250,12 +250,12 @@ class BuildParameters { | ||||||
|                 androidSdkManagerParameters, |                 androidSdkManagerParameters, | ||||||
|                 customParameters: input_1.default.customParameters, |                 customParameters: input_1.default.customParameters, | ||||||
|                 sshAgent: input_1.default.sshAgent, |                 sshAgent: input_1.default.sshAgent, | ||||||
|                 gitPrivateToken: input_1.default.gitPrivateToken, |                 gitPrivateToken: yield input_1.default.gitPrivateToken(), | ||||||
|                 chownFilesTo: input_1.default.chownFilesTo, |                 chownFilesTo: input_1.default.chownFilesTo, | ||||||
|                 cloudRunnerCluster: input_1.default.cloudRunnerCluster, |                 cloudRunnerCluster: input_1.default.cloudRunnerCluster, | ||||||
|                 awsBaseStackName: input_1.default.awsBaseStackName, |                 awsBaseStackName: input_1.default.awsBaseStackName, | ||||||
|                 kubeConfig: input_1.default.kubeConfig, |                 kubeConfig: input_1.default.kubeConfig, | ||||||
|                 githubToken: input_1.default.githubToken, |                 githubToken: yield input_1.default.githubToken(), | ||||||
|                 cloudRunnerMemory: input_1.default.cloudRunnerMemory, |                 cloudRunnerMemory: input_1.default.cloudRunnerMemory, | ||||||
|                 cloudRunnerCpu: input_1.default.cloudRunnerCpu, |                 cloudRunnerCpu: input_1.default.cloudRunnerCpu, | ||||||
|                 kubeVolumeSize: input_1.default.kubeVolumeSize, |                 kubeVolumeSize: input_1.default.kubeVolumeSize, | ||||||
|  | @ -264,7 +264,7 @@ class BuildParameters { | ||||||
|                 preBuildSteps: input_1.default.preBuildSteps, |                 preBuildSteps: input_1.default.preBuildSteps, | ||||||
|                 customBuildSteps: input_1.default.customBuildSteps, |                 customBuildSteps: input_1.default.customBuildSteps, | ||||||
|                 runNumber: input_1.default.runNumber, |                 runNumber: input_1.default.runNumber, | ||||||
|                 branch: input_1.default.branch, |                 branch: yield input_1.default.branch(), | ||||||
|                 githubRepo: input_1.default.githubRepo, |                 githubRepo: input_1.default.githubRepo, | ||||||
|                 logToFile: false, |                 logToFile: false, | ||||||
|                 remoteBuildCluster: input_1.default.cloudRunnerCluster, |                 remoteBuildCluster: input_1.default.cloudRunnerCluster, | ||||||
|  | @ -3443,7 +3443,8 @@ class ActionYamlReader { | ||||||
|         this.actionYamlParsed = yaml_1.default.parse(fs_1.default.readFileSync(`action.yml`).toString()); |         this.actionYamlParsed = yaml_1.default.parse(fs_1.default.readFileSync(`action.yml`).toString()); | ||||||
|     } |     } | ||||||
|     GetActionYamlValue(key) { |     GetActionYamlValue(key) { | ||||||
|         return this.actionYamlParsed.inputs[key]; |         var _a; | ||||||
|  |         return ((_a = this.actionYamlParsed.inputs[key]) === null || _a === void 0 ? void 0 : _a.description) || 'No description found in action.yml'; | ||||||
|     } |     } | ||||||
| } | } | ||||||
| exports.ActionYamlReader = ActionYamlReader; | exports.ActionYamlReader = ActionYamlReader; | ||||||
|  | @ -3495,16 +3496,37 @@ exports.GitRepoReader = GitRepoReader; | ||||||
| /***/ }), | /***/ }), | ||||||
| 
 | 
 | ||||||
| /***/ 44990: | /***/ 44990: | ||||||
| /***/ ((__unused_webpack_module, exports) => { | /***/ (function(__unused_webpack_module, exports, __webpack_require__) { | ||||||
| 
 | 
 | ||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
|  | var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||||||
|  |     function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||||||
|  |     return new (P || (P = Promise))(function (resolve, reject) { | ||||||
|  |         function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||||||
|  |         function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||||||
|  |         function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||||||
|  |         step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||||||
|  |     }); | ||||||
|  | }; | ||||||
|  | var __importDefault = (this && this.__importDefault) || function (mod) { | ||||||
|  |     return (mod && mod.__esModule) ? mod : { "default": mod }; | ||||||
|  | }; | ||||||
| Object.defineProperty(exports, "__esModule", ({ value: true })); | Object.defineProperty(exports, "__esModule", ({ value: true })); | ||||||
| exports.GithubCliReader = void 0; | exports.GithubCliReader = void 0; | ||||||
|  | const assert_1 = __importDefault(__webpack_require__(42357)); | ||||||
|  | const system_1 = __importDefault(__webpack_require__(62177)); | ||||||
| class GithubCliReader { | class GithubCliReader { | ||||||
|     static GetGitHubAuthToken() { |     static GetGitHubAuthToken() { | ||||||
|         // `gh auth status -t`
 |         return __awaiter(this, void 0, void 0, function* () { | ||||||
|         return ''; |             try { | ||||||
|  |                 assert_1.default(yield system_1.default.run(`gh -v`)); | ||||||
|  |                 return yield system_1.default.run(`gh auth status -t`); | ||||||
|  |             } | ||||||
|  |             catch (_a) { | ||||||
|  |                 return false; | ||||||
|  |             } | ||||||
|  |         }); | ||||||
|     } |     } | ||||||
| } | } | ||||||
| exports.GithubCliReader = GithubCliReader; | exports.GithubCliReader = GithubCliReader; | ||||||
|  | @ -3517,6 +3539,15 @@ exports.GithubCliReader = GithubCliReader; | ||||||
| 
 | 
 | ||||||
| "use strict"; | "use strict"; | ||||||
| 
 | 
 | ||||||
|  | var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||||||
|  |     function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||||||
|  |     return new (P || (P = Promise))(function (resolve, reject) { | ||||||
|  |         function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||||||
|  |         function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||||||
|  |         function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||||||
|  |         step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||||||
|  |     }); | ||||||
|  | }; | ||||||
| var __importDefault = (this && this.__importDefault) || function (mod) { | var __importDefault = (this && this.__importDefault) || function (mod) { | ||||||
|     return (mod && mod.__esModule) ? mod : { "default": mod }; |     return (mod && mod.__esModule) ? mod : { "default": mod }; | ||||||
| }; | }; | ||||||
|  | @ -3559,29 +3590,31 @@ class Input { | ||||||
|     static get githubRepo() { |     static get githubRepo() { | ||||||
|         return Input.getInput('GITHUB_REPOSITORY') || git_repo_1.GitRepoReader.GetRemote() || 'game-ci/unity-builder'; |         return Input.getInput('GITHUB_REPOSITORY') || git_repo_1.GitRepoReader.GetRemote() || 'game-ci/unity-builder'; | ||||||
|     } |     } | ||||||
|     static get branch() { |     static branch() { | ||||||
|         if (Input.getInput(`REMOTE_BUILDER_CACHE`)) { |         return __awaiter(this, void 0, void 0, function* () { | ||||||
|             return Input.getInput(`REMOTE_BUILDER_CACHE`); |             if (Input.getInput(`REMOTE_BUILDER_CACHE`)) { | ||||||
|         } |                 return Input.getInput(`REMOTE_BUILDER_CACHE`); | ||||||
|         else if (Input.getInput(`GITHUB_REF`)) { |             } | ||||||
|             return Input.getInput(`GITHUB_REF`) |             else if (Input.getInput(`GITHUB_REF`)) { | ||||||
|                 .split('/') |                 return Input.getInput(`GITHUB_REF`) | ||||||
|                 .map((x) => { |                     .split('/') | ||||||
|                 x = x[0].toUpperCase() + x.slice(1); |                     .map((x) => { | ||||||
|                 return x; |                     x = x[0].toUpperCase() + x.slice(1); | ||||||
|             }) |                     return x; | ||||||
|                 .join(''); |                 }) | ||||||
|         } |                     .join(''); | ||||||
|         else if (Input.getInput('branch')) { |             } | ||||||
|             return Input.getInput('branch'); |             else if (Input.getInput('branch')) { | ||||||
|         } |                 return Input.getInput('branch'); | ||||||
|         else if (github_cli_1.GithubCliReader.GetGitHubAuthToken()) { |             } | ||||||
|             return github_cli_1.GithubCliReader.GetGitHubAuthToken(); |             else if (yield git_repo_1.GitRepoReader.GetBranch()) { | ||||||
|         } |                 return yield git_repo_1.GitRepoReader.GetBranch(); | ||||||
|         else { |             } | ||||||
|             return 'remote-builder/unified-providers'; |             else { | ||||||
|         } |                 return 'remote-builder/unified-providers'; | ||||||
|         //
 |             } | ||||||
|  |             //
 | ||||||
|  |         }); | ||||||
|     } |     } | ||||||
|     static get gitSha() { |     static get gitSha() { | ||||||
|         if (Input.getInput(`GITHUB_SHA`)) { |         if (Input.getInput(`GITHUB_SHA`)) { | ||||||
|  | @ -3660,8 +3693,15 @@ class Input { | ||||||
|     static get sshAgent() { |     static get sshAgent() { | ||||||
|         return Input.getInput('sshAgent') || ''; |         return Input.getInput('sshAgent') || ''; | ||||||
|     } |     } | ||||||
|     static get gitPrivateToken() { |     static githubToken() { | ||||||
|         return core.getInput('gitPrivateToken') || github_cli_1.GithubCliReader.GetGitHubAuthToken() || ''; |         return __awaiter(this, void 0, void 0, function* () { | ||||||
|  |             return Input.getInput('githubToken') || (yield github_cli_1.GithubCliReader.GetGitHubAuthToken()) || ''; | ||||||
|  |         }); | ||||||
|  |     } | ||||||
|  |     static gitPrivateToken() { | ||||||
|  |         return __awaiter(this, void 0, void 0, function* () { | ||||||
|  |             return core.getInput('gitPrivateToken') || (yield github_cli_1.GithubCliReader.GetGitHubAuthToken()) || ''; | ||||||
|  |         }); | ||||||
|     } |     } | ||||||
|     static get chownFilesTo() { |     static get chownFilesTo() { | ||||||
|         return Input.getInput('chownFilesTo') || ''; |         return Input.getInput('chownFilesTo') || ''; | ||||||
|  | @ -3684,9 +3724,6 @@ class Input { | ||||||
|     static get kubeConfig() { |     static get kubeConfig() { | ||||||
|         return Input.getInput('kubeConfig') || ''; |         return Input.getInput('kubeConfig') || ''; | ||||||
|     } |     } | ||||||
|     static get githubToken() { |  | ||||||
|         return Input.getInput('githubToken') || ''; |  | ||||||
|     } |  | ||||||
|     static get cloudRunnerMemory() { |     static get cloudRunnerMemory() { | ||||||
|         return Input.getInput('cloudRunnerMemory') || '750M'; |         return Input.getInput('cloudRunnerMemory') || '750M'; | ||||||
|     } |     } | ||||||
|  |  | ||||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							|  | @ -79,12 +79,12 @@ class BuildParameters { | ||||||
|       androidSdkManagerParameters, |       androidSdkManagerParameters, | ||||||
|       customParameters: Input.customParameters, |       customParameters: Input.customParameters, | ||||||
|       sshAgent: Input.sshAgent, |       sshAgent: Input.sshAgent, | ||||||
|       gitPrivateToken: Input.gitPrivateToken, |       gitPrivateToken: await Input.gitPrivateToken(), | ||||||
|       chownFilesTo: Input.chownFilesTo, |       chownFilesTo: Input.chownFilesTo, | ||||||
|       cloudRunnerCluster: Input.cloudRunnerCluster, |       cloudRunnerCluster: Input.cloudRunnerCluster, | ||||||
|       awsBaseStackName: Input.awsBaseStackName, |       awsBaseStackName: Input.awsBaseStackName, | ||||||
|       kubeConfig: Input.kubeConfig, |       kubeConfig: Input.kubeConfig, | ||||||
|       githubToken: Input.githubToken, |       githubToken: await Input.githubToken(), | ||||||
|       cloudRunnerMemory: Input.cloudRunnerMemory, |       cloudRunnerMemory: Input.cloudRunnerMemory, | ||||||
|       cloudRunnerCpu: Input.cloudRunnerCpu, |       cloudRunnerCpu: Input.cloudRunnerCpu, | ||||||
|       kubeVolumeSize: Input.kubeVolumeSize, |       kubeVolumeSize: Input.kubeVolumeSize, | ||||||
|  | @ -93,7 +93,7 @@ class BuildParameters { | ||||||
|       preBuildSteps: Input.preBuildSteps, |       preBuildSteps: Input.preBuildSteps, | ||||||
|       customBuildSteps: Input.customBuildSteps, |       customBuildSteps: Input.customBuildSteps, | ||||||
|       runNumber: Input.runNumber, |       runNumber: Input.runNumber, | ||||||
|       branch: Input.branch, |       branch: await Input.branch(), | ||||||
|       githubRepo: Input.githubRepo, |       githubRepo: Input.githubRepo, | ||||||
|       logToFile: false, |       logToFile: false, | ||||||
|       remoteBuildCluster: Input.cloudRunnerCluster, |       remoteBuildCluster: Input.cloudRunnerCluster, | ||||||
|  |  | ||||||
|  | @ -7,6 +7,6 @@ export class ActionYamlReader { | ||||||
|     this.actionYamlParsed = YAML.parse(fs.readFileSync(`action.yml`).toString()); |     this.actionYamlParsed = YAML.parse(fs.readFileSync(`action.yml`).toString()); | ||||||
|   } |   } | ||||||
|   public GetActionYamlValue(key: string) { |   public GetActionYamlValue(key: string) { | ||||||
|     return this.actionYamlParsed.inputs[key]; |     return this.actionYamlParsed.inputs[key]?.description || 'No description found in action.yml'; | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -0,0 +1,9 @@ | ||||||
|  | import { GithubCliReader } from './github-cli'; | ||||||
|  | import * as core from '@actions/core'; | ||||||
|  | 
 | ||||||
|  | describe(`github cli`, () => { | ||||||
|  |   it(`returns`, async () => { | ||||||
|  |     const token = await GithubCliReader.GetGitHubAuthToken(); | ||||||
|  |     core.info(token); | ||||||
|  |   }); | ||||||
|  | }); | ||||||
|  | @ -1,6 +1,13 @@ | ||||||
|  | import assert from 'assert'; | ||||||
|  | import System from '../system'; | ||||||
|  | 
 | ||||||
| export class GithubCliReader { | export class GithubCliReader { | ||||||
|   static GetGitHubAuthToken() { |   static async GetGitHubAuthToken() { | ||||||
|     // `gh auth status -t`
 |     try { | ||||||
|     return ''; |       assert(await System.run(`gh -v`)); | ||||||
|  |       return await System.run(`gh auth status -t`); | ||||||
|  |     } catch { | ||||||
|  |       return false; | ||||||
|  |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -44,7 +44,7 @@ class Input { | ||||||
|   static get githubRepo(): string { |   static get githubRepo(): string { | ||||||
|     return Input.getInput('GITHUB_REPOSITORY') || GitRepoReader.GetRemote() || 'game-ci/unity-builder'; |     return Input.getInput('GITHUB_REPOSITORY') || GitRepoReader.GetRemote() || 'game-ci/unity-builder'; | ||||||
|   } |   } | ||||||
|   static get branch() { |   static async branch() { | ||||||
|     if (Input.getInput(`REMOTE_BUILDER_CACHE`)) { |     if (Input.getInput(`REMOTE_BUILDER_CACHE`)) { | ||||||
|       return Input.getInput(`REMOTE_BUILDER_CACHE`); |       return Input.getInput(`REMOTE_BUILDER_CACHE`); | ||||||
|     } else if (Input.getInput(`GITHUB_REF`)) { |     } else if (Input.getInput(`GITHUB_REF`)) { | ||||||
|  | @ -57,8 +57,8 @@ class Input { | ||||||
|         .join(''); |         .join(''); | ||||||
|     } else if (Input.getInput('branch')) { |     } else if (Input.getInput('branch')) { | ||||||
|       return Input.getInput('branch'); |       return Input.getInput('branch'); | ||||||
|     } else if (GithubCliReader.GetGitHubAuthToken()) { |     } else if (await GitRepoReader.GetBranch()) { | ||||||
|       return GithubCliReader.GetGitHubAuthToken(); |       return await GitRepoReader.GetBranch(); | ||||||
|     } else { |     } else { | ||||||
|       return 'remote-builder/unified-providers'; |       return 'remote-builder/unified-providers'; | ||||||
|     } |     } | ||||||
|  | @ -163,8 +163,12 @@ class Input { | ||||||
|     return Input.getInput('sshAgent') || ''; |     return Input.getInput('sshAgent') || ''; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   static get gitPrivateToken() { |   static async githubToken() { | ||||||
|     return core.getInput('gitPrivateToken') || GithubCliReader.GetGitHubAuthToken() || ''; |     return Input.getInput('githubToken') || (await GithubCliReader.GetGitHubAuthToken()) || ''; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   static async gitPrivateToken() { | ||||||
|  |     return core.getInput('gitPrivateToken') || (await GithubCliReader.GetGitHubAuthToken()) || ''; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   static get chownFilesTo() { |   static get chownFilesTo() { | ||||||
|  | @ -195,10 +199,6 @@ class Input { | ||||||
|     return Input.getInput('kubeConfig') || ''; |     return Input.getInput('kubeConfig') || ''; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   static get githubToken() { |  | ||||||
|     return Input.getInput('githubToken') || ''; |  | ||||||
|   } |  | ||||||
| 
 |  | ||||||
|   static get cloudRunnerMemory() { |   static get cloudRunnerMemory() { | ||||||
|     return Input.getInput('cloudRunnerMemory') || '750M'; |     return Input.getInput('cloudRunnerMemory') || '750M'; | ||||||
|   } |   } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue