From 6def8ae1d07600555d6be023d8af33e3471a9d9c Mon Sep 17 00:00:00 2001 From: dongjie110 <17621827400@163.com> Date: Thu, 3 Mar 2022 11:37:31 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=81=B6=E5=8F=91=E6=80=A7=E8=AF=B7=E6=B1=82?= =?UTF-8?q?gitee=E6=8E=A5=E5=8F=A3=E5=A4=B1=E8=B4=A5=E9=97=AE=E9=A2=98?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E9=87=8D=E8=AF=95=E6=AC=A1=E6=95=B0?= =?UTF-8?q?=E3=80=822.=E5=A2=9E=E5=BC=BA=E5=90=91=E4=B8=BB=E5=8F=A4?= =?UTF-8?q?=E5=9F=8E=E6=8F=90=E4=BA=A4=E6=8B=A6=E6=88=AA=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/check_meta_service.py | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/core/check_meta_service.py b/core/check_meta_service.py index ea615e2..8d9c4f2 100644 --- a/core/check_meta_service.py +++ b/core/check_meta_service.py @@ -538,15 +538,18 @@ class CheckMetaPull(object): """ log.info("************************************** CHECK PR RULE**********************") failed_flag = [] + failed_msg = [] if release_manage: for change_file in pr_file: path_info = self._get_path_info(change_file) if path_info[1] in release_manage: log.error("check pr rule failed repository path:{}".format(change_file)) failed_flag.append('yes') + failed_msg.append(path_info[1]) else: log.info("check pr rule success repository path:{}".format(change_file)) if failed_flag: + log.error("you can not pull request in branch:{}".format(failed_msg)) raise SystemExit("*******PLEASE CHECK YOUR PR*******") else: log.error("get release management data failed,please check network and token**********************") @@ -580,10 +583,11 @@ class CheckMetaPull(object): sha_value = self._gitee_api_request(sha_api_url)['commit'].get('sha', '') if sha_value: api_url = "https://gitee.com/api/v5/repos/openeuler/release-management/git/trees/{}?access_token={}".format(sha_value, self.token) - release_manage_value = self._gitee_api_request(api_url)['tree'] - for current_file in release_manage_value: - if current_file['type'] == 'tree': - release_management_data.append(current_file['path']) + release_manage_value = self._gitee_api_request(api_url).get('tree','') + if release_manage_value: + for current_file in release_manage_value: + if current_file['type'] == 'tree': + release_management_data.append(current_file['path']) log.info("************************************** GET RELASE MANAGEMENT DATA**********************") return release_management_data @@ -591,9 +595,15 @@ class CheckMetaPull(object): """ gitee api interface """ - try: - response = requests.request(method='get', url=url) - response_value = response.json() - return response_value - except Exception as e: - log.error("error to request {}".format(url)) \ No newline at end of file + retries = 0 + while retries < 5: + log.info("try to request data from gitee {}".format(retries)) + response = requests.get(url,timeout=3) + if response.status_code == 200: + response_value = response.json() + return response_value + else: + retries += 1 + if retries == 5: + log.error("***************Get Request Data From Gitee ERROR***************") + raise SystemExit("*******error request data from gitee,please wait and retry*******") \ No newline at end of file -- Gitee