|
- from config.config import source_host, source_project, target_host, target_project, source_user, source_pwd, \
- target_user, target_pwd
- from business.get_milestone import get_milestone
- from business.get_issue_tags import get_issue_tags
- from business.insert_issue_tags import insert_tag
- from base_api.login_api import LoginApi
- from business.get_issue_ids import get_issue_ids
- from business.get_issue_detail import get_issue_detail
- from business.get_issue_journal import get_issue_journals
- from business.insert_issue import insert_issue
- from business.insert_milestone import insert_milestone
- from business.insert_issue_journal import insert_issue_journal
-
- # ---------------------初始化准备------------------------------------------------------------------
- source_cookies = LoginApi(source_host).login_api(source_user, source_pwd).cookies
-
- target_cookies = LoginApi(target_host).login_api(target_user, target_pwd).cookies
-
- # --------------------------------------获取源仓库所有的疑修ID---------------------------------------------
- issue_ids = get_issue_ids(source_host, source_project)
-
- # -------------------------------------逐个疑修获取并同步到目标仓库---------------------------------------------
- for issue_id in issue_ids:
- # 获取当前疑修详情
- source_issue = get_issue_detail(host=source_host, project=source_project, issue_id=issue_id)
- issue_detail = source_issue.get("issue_detail")
- # --------------- 处理里程碑------------------
- # 当前issue所属里程碑
- milestone = issue_detail.get("milestone", None)
- # 获取源仓库的里程碑
- source_milestones = get_milestone(source_host, source_project)
- # 目标仓库的里程碑
- target_milestones = get_milestone(target_host, target_project)
-
- insert_milestone(issue_milestone=milestone, source_milestones=source_milestones,
- target_milestones=target_milestones, target_host=target_host, target_project=target_project,
- target_cookies=target_cookies)
-
- # --------------- 处理项目标记------------------
- # 当前issue所属里程碑
- tags = issue_detail.get("tags", None)
- # 获取源仓库的里程碑
- source_tags = get_issue_tags(source_host, source_project, source_cookies)
- # 目标仓库的里程碑
- target_tags = get_issue_tags(target_host, target_project, target_cookies)
-
- insert_tag(issue_tags=tags, source_tags=source_tags,
- target_tags=target_tags, target_host=target_host, target_project=target_project,
- target_cookies=target_cookies)
-
- # --------------- 创建疑修------------------
- new_issue_id = insert_issue(source_issue=source_issue, target_host=target_host,
- target_project=target_project, target_cookies=target_cookies)
-
- # --------------- 创建疑修评论------------------
- # 获取源仓库的疑修评论信息
- source_issue_journal = get_issue_journals(host=source_host, project=source_project, issue_id=issue_id)
- insert_issue_journal(issue_id=new_issue_id, source_issue_journal=source_issue_journal, target_host=target_host,
- target_project=target_project, target_cookies=target_cookies)
|