mirror of
				https://github.com/actions/checkout.git
				synced 2025-10-31 19:23:59 +08:00 
			
		
		
		
	Fix: Checkout fail in self-hosted runners when faulty submodule are checked-in (#1196)
* Fix Self hosted runner issue wrt bad submodules - solution cleanup working space. * Fix format with npm run format output * Add mock implementation for new function submoduleStatus * Add 2 test cases for submodule status. * Codeql-Action Analyse revert v1 to v2 --------- Co-authored-by: Bassem Dghaidi <568794+Link-@users.noreply.github.com> Co-authored-by: sminnie <minnie@sankhe.com>
This commit is contained in:
		
							
								
								
									
										12
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							| @@ -765,6 +765,13 @@ class GitCommandManager { | ||||
|             yield this.execGit(args); | ||||
|         }); | ||||
|     } | ||||
|     submoduleStatus() { | ||||
|         return __awaiter(this, void 0, void 0, function* () { | ||||
|             const output = yield this.execGit(['submodule', 'status'], true); | ||||
|             core.debug(output.stdout); | ||||
|             return output.exitCode === 0; | ||||
|         }); | ||||
|     } | ||||
|     tagExists(pattern) { | ||||
|         return __awaiter(this, void 0, void 0, function* () { | ||||
|             const output = yield this.execGit(['tag', '--list', pattern]); | ||||
| @@ -1023,6 +1030,11 @@ function prepareExistingDirectory(git, repositoryPath, repositoryUrl, clean, ref | ||||
|                     } | ||||
|                 } | ||||
|                 core.endGroup(); | ||||
|                 // Check for submodules and delete any existing files if submodules are present | ||||
|                 if (!(yield git.submoduleStatus())) { | ||||
|                     remove = true; | ||||
|                     core.info('Bad Submodules found, removing existing files'); | ||||
|                 } | ||||
|                 // Clean | ||||
|                 if (clean) { | ||||
|                     core.startGroup('Cleaning the repository'); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 SKi
					SKi