forked from JOJ/Joint-Teapot
		
	feat: add example usage for ve482 p1 pre-check
This commit is contained in:
		
							parent
							
								
									3de4dccb79
								
							
						
					
					
						commit
						1d93ff7226
					
				
							
								
								
									
										51
									
								
								examples/ve482.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								examples/ve482.py
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,51 @@ | |||
| import glob | ||||
| import ntpath | ||||
| 
 | ||||
| from joint_teapot import Teapot, logger | ||||
| 
 | ||||
| 
 | ||||
| class MyTeapot(Teapot): | ||||
|     def ve482p1(self) -> None: | ||||
|         for repo_name in self.gitea.get_all_repo_names(): | ||||
|             if not repo_name.endswith("p1"): | ||||
|                 continue | ||||
|             faults = [] | ||||
|             succeed = self.checkout_to_repo_by_release_name(repo_name, "p1") | ||||
|             if succeed: | ||||
|                 contain_c_file = False | ||||
|                 contain_readme_file = False | ||||
|                 for fn in glob.glob(f"{self.git.repos_dir}/{repo_name}/*.*"): | ||||
|                     basename = ntpath.basename(fn) | ||||
|                     if basename.endswith(".c"): | ||||
|                         contain_c_file = True | ||||
|                     if basename.lower().startswith("readme"): | ||||
|                         contain_readme_file = True | ||||
|                 if not contain_c_file: | ||||
|                     faults.append( | ||||
|                         "no C file found in root directory in release p1, " | ||||
|                         "can not compile on JOJ" | ||||
|                     ) | ||||
|                 if not contain_readme_file: | ||||
|                     faults.append( | ||||
|                         "no README file found in root directory in release p1" | ||||
|                     ) | ||||
|             else: | ||||
|                 faults.append("no release named p1") | ||||
|             if faults: | ||||
|                 fault_string = "" | ||||
|                 for fault in faults: | ||||
|                     fault_string += f"- {fault}\n" | ||||
|                 logger.info("\n".join(("", repo_name, "", fault_string))) | ||||
|                 self.gitea.issue_api.issue_create_issue( | ||||
|                     self.gitea.org_name, | ||||
|                     repo_name, | ||||
|                     body={ | ||||
|                         "body": fault_string, | ||||
|                         "title": "p1 submission pre-check failed", | ||||
|                     }, | ||||
|                 ) | ||||
| 
 | ||||
| 
 | ||||
| if __name__ == "__main__": | ||||
|     teapot = MyTeapot() | ||||
|     teapot.ve482p1() | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user