From 239161f43708b3fee5d029ede6db3677a863790f Mon Sep 17 00:00:00 2001 From: wangchong1995924 <15229716099@163.com> Date: Sat, 20 Feb 2021 11:44:31 +0800 Subject: [PATCH] add sync after check_all --- config/config.ini | 4 ++++ core/gitee_to_obs.py | 29 ++++++++++++++++++++++------- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/config/config.ini b/config/config.ini index c480d14..c35cf6e 100644 --- a/config/config.ini +++ b/config/config.ini @@ -3,6 +3,7 @@ master = True openEuler-20.03-LTS = True openEuler-20.03-LTS-Next = True openEuler-20.09 = True +openEuler-21.03 = True openEuler-20.03-LTS-SP1 = True [ignore_repo] name = ci_check build @@ -14,6 +15,7 @@ openEuler-20.09 = openEuler:20.09 openEuler:20.09:Epol openEuler-20.03-LTS = openEuler:20.03:LTS openEuler-20.03-LTS-SP1 = openEuler:20.03:LTS:SP1 openEuler:20.03:LTS:SP1:Epol openEuler-20.03-LTS-Next = openEuler:20.03:LTS:Next openEuler:20.03:LTS:Next:Epol +openEuler-21.03 = openEuler:21.03 openEuler:21.03:Epol openEuler:21.03:Extras [gitee_repository] community = https://gitee.com/openeuler/community obs_meta = https://gitee.com/src-openeuler/obs_meta @@ -30,6 +32,8 @@ openEuler-20.03-LTS-Next = openEuler:20.03:LTS:selfbuild:BaseOS/openeuler_20.03_ openEuler-20.03-LTS-Next-Epol = openEuler:20.03:LTS:selfbuild:BaseOS/openeuler_20.03_lts_next_epol_aarch64 openEuler:20.03:LTS:selfbuild:BaseOS/openeuler_20.03_lts_next_epol_x86_64 openEuler-20.09 = openEuler:20.09:selfbuild:BaseOS/openEuler_20.09_aarch64 openEuler:20.09:selfbuild:BaseOS/openEuler_20.09_x86_64 openEuler-20.09-Epol = openEuler:20.09:selfbuild:BaseOS/openEuler_20.09_epol_aarch64 openEuler:20.09:selfbuild:BaseOS/openEuler_20.09_epol_x86_64 +openEuler-21.03 = openEuler:21.03:selfbuild:BaseOS/openeuler_21.03_standard_aarch64 openEuler:21.03:selfbuild:BaseOS/openeuler_21.03_standard_x86_64 +openEuler-21.03-Epol = openEuler:21.03:selfbuild:BaseOS/openeuler_21.03_epol_aarch64 openEuler:21.03:selfbuild:BaseOS/openeuler_21.03_epol_x86_64 [obs_project_root_path] # all obs projects path and where store all packages of all obs projects path = /srv/obs/build diff --git a/core/gitee_to_obs.py b/core/gitee_to_obs.py index a5499c4..8ddcc09 100644 --- a/core/gitee_to_obs.py +++ b/core/gitee_to_obs.py @@ -66,7 +66,6 @@ class SYNCCode(object): self.kwargs['source_server_port']) par = ParserConfigIni() self.obs_pkg_rpms_url = par.get_repos_dict()["obs_pkg_rpms"] - self._write_date_to_file() def _write_date_to_file(self): """ @@ -84,7 +83,7 @@ class SYNCCode(object): cmd2 = "cd %s && git pull && git add * && git commit -m 'update date for pkg %s' && git push"\ % (self.obs_pkg_prms_files_dir, self.repository) if os.system(cmd2) != 0: - log.error("fail to update file to %s") + log.error("fail to update file to %s" % self.repository) except AttributeError as e: log.error(e) finally: @@ -207,6 +206,7 @@ class SYNCCode(object): """ if not self.pkgs: if self.repository and not self.project: + self._write_date_to_file() self._pre_sync_code() if not self.repository and self.project: cmd = "osc ls %s" % self.project @@ -222,17 +222,21 @@ class SYNCCode(object): raise SystemExit('please check you arguments') else: for pkg in self.pkgs: - self.repository = pkg - log.info(pkg.replace('\n', '')) - self.repository = pkg.replace('\n', '') - if self.repository: - self._pre_sync_code() + if "\n" in pkg: + self.repository = pkg.replace('\n', '') + else: + self.repository = pkg + self._write_date_to_file() + self._get_latest_gitee_pull() + self._gitee_pr_to_obs(self.project) + class CheckCode(object): """ Make sure that the codes for gitee and obs are the same """ def __init__(self, **kwargs): + self.kwargs = kwargs self.project = kwargs["project"] self.branch = kwargs["branch"] cmd = "osc list %s" % self.project @@ -351,6 +355,17 @@ class CheckCode(object): pool.putRequest(req) pool.wait() log.info("codes not same between gitee and obs:%s" % self.not_same_packages) + self.sync_code() + + def sync_code(self): + """ + sync not_same_packages code + """ + if self.not_same_packages: + log.info("Start synchronization code...") + self.kwargs['pkglist'] = self.not_same_packages + sy = SYNCCode(**self.kwargs) + sy.sync_code_to_obs() if __name__ == "__main__": -- Gitee