feat: create milestones on gitea
This commit is contained in:
		
							parent
							
								
									e26c9461b6
								
							
						
					
					
						commit
						2683d2cecf
					
				|  | @ -62,6 +62,13 @@ def create_issue_for_repos(repo_names: List[str], title: str, body: str) -> None | ||||||
|     tea.pot.create_issue_for_repos(repo_names, title, body) |     tea.pot.create_issue_for_repos(repo_names, title, body) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @app.command("create-milestones", help="create milestones on gitea") | ||||||
|  | def create_milestone_for_repos( | ||||||
|  |     repo_names: List[str], title: str, description: str, due_on: datetime | ||||||
|  | ) -> None: | ||||||
|  |     tea.pot.create_milestone_for_repos(repo_names, title, description, due_on) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| @app.command("check-issues", help="check the existence of issue by title on gitea") | @app.command("check-issues", help="check the existence of issue by title on gitea") | ||||||
| def check_exist_issue_by_title(repo_names: List[str], title: str) -> None: | def check_exist_issue_by_title(repo_names: List[str], title: str) -> None: | ||||||
|     echo("\n".join(tea.pot.check_exist_issue_by_title(repo_names, title))) |     echo("\n".join(tea.pot.check_exist_issue_by_title(repo_names, title))) | ||||||
|  |  | ||||||
|  | @ -110,6 +110,12 @@ class Teapot: | ||||||
|         for repo_name in repo_names: |         for repo_name in repo_names: | ||||||
|             self.gitea.create_issue(repo_name, title, body) |             self.gitea.create_issue(repo_name, title, body) | ||||||
| 
 | 
 | ||||||
|  |     def create_milestone_for_repos( | ||||||
|  |         self, repo_names: List[str], title: str, description: str, due_on: datetime | ||||||
|  |     ) -> None: | ||||||
|  |         for repo_name in repo_names: | ||||||
|  |             self.gitea.create_milestone(repo_name, title, description, due_on) | ||||||
|  | 
 | ||||||
|     def check_exist_issue_by_title( |     def check_exist_issue_by_title( | ||||||
|         self, repo_names: List[str], title: str |         self, repo_names: List[str], title: str | ||||||
|     ) -> List[str]: |     ) -> List[str]: | ||||||
|  |  | ||||||
|  | @ -1,3 +1,4 @@ | ||||||
|  | from datetime import datetime | ||||||
| from enum import Enum | from enum import Enum | ||||||
| from functools import lru_cache | from functools import lru_cache | ||||||
| from typing import Any, Callable, Dict, List, Optional, Tuple | from typing import Any, Callable, Dict, List, Optional, Tuple | ||||||
|  | @ -330,6 +331,23 @@ class Gitea: | ||||||
|             body={"title": title, "body": body, "assignees": assignees}, |             body={"title": title, "body": body, "assignees": assignees}, | ||||||
|         ) |         ) | ||||||
| 
 | 
 | ||||||
|  |     def create_milestone( | ||||||
|  |         self, | ||||||
|  |         repo_name: str, | ||||||
|  |         title: str, | ||||||
|  |         description: str, | ||||||
|  |         due_on: datetime, | ||||||
|  |     ) -> None: | ||||||
|  |         self.issue_api.issue_create_milestone( | ||||||
|  |             self.org_name, | ||||||
|  |             repo_name, | ||||||
|  |             body={ | ||||||
|  |                 "title": title, | ||||||
|  |                 "description": description, | ||||||
|  |                 "due_on": due_on.strftime("%Y-%m-%dT%H:%M:%S.%fZ"), | ||||||
|  |             }, | ||||||
|  |         ) | ||||||
|  | 
 | ||||||
|     def check_exist_issue_by_title(self, repo_name: str, title: str) -> bool: |     def check_exist_issue_by_title(self, repo_name: str, title: str) -> bool: | ||||||
|         for issue in list_all( |         for issue in list_all( | ||||||
|             self.issue_api.issue_list_issues, self.org_name, repo_name |             self.issue_api.issue_list_issues, self.org_name, repo_name | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user