From 53ca090a6e4c67d0a12fd0444d6b5733e408d838 Mon Sep 17 00:00:00 2001 From: Max Lin Date: Tue, 18 Aug 2015 18:57:49 +0800 Subject: [PATCH 1/4] check rdiff before creating SR --- fcc_submitter.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/fcc_submitter.py b/fcc_submitter.py index 746d0820..0c0a8669 100755 --- a/fcc_submitter.py +++ b/fcc_submitter.py @@ -109,6 +109,12 @@ class FccSubmitter(object): src_project = self.factory # submit from Factory only dst_project = self.to_prj + # do a rdiff before create SR, if return empty might be frozenlink not updated yet + diff = osc.core.server_diff(self.apiurl, src_project, package, None, dst_project, package, None) + if not diff: + logging.info("%s/%s have no diff with %s/%s, frozenlink not updated yet?"%(src_project, package, dst_project, package)) + return None + msg = 'Automatic request from %s by F-C-C Submitter' % src_project res = osc.core.create_submit_request(self.apiurl, src_project, @@ -155,7 +161,7 @@ class FccSubmitter(object): else: logging.info("%d - Preparing submit %s to %s"%(i, package, self.to_prj)) res = self.create_submitrequest(package) - if res: + if res and res is not None: logging.info('Created request %s for %s' % (res, package)) # add review by package devel_prj, devel_pkg = self.get_devel_project(package) From d6e1b0f810642b85b5c6d22aa7c39a0da2dc4204 Mon Sep 17 00:00:00 2001 From: Max Lin Date: Tue, 18 Aug 2015 19:18:56 +0800 Subject: [PATCH 2/4] add the skip list against devel project --- fcc_submitter.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/fcc_submitter.py b/fcc_submitter.py index 0c0a8669..b91d717c 100755 --- a/fcc_submitter.py +++ b/fcc_submitter.py @@ -49,6 +49,8 @@ class FccSubmitter(object): self.submit_limit = int(submit_limit) self.apiurl = osc.conf.config['apiurl'] self.debug = osc.conf.config['debug'] + # the skip list against devel project + self.skip_devel_project_list = [] def get_source_packages(self, project, expand=False): """Return the list of packages in a project.""" @@ -160,12 +162,17 @@ class FccSubmitter(object): logging.debug("There is a request to %s / %s already, skip!"%(package, self.to_prj)) else: logging.info("%d - Preparing submit %s to %s"%(i, package, self.to_prj)) + # get devel project + devel_prj, devel_pkg = self.get_devel_project(package) + # check devel project does not in the skip list + if devel_prj in self.skip_devel_project_list: + logging.info('%s is in the skip list, do not submit.' % devel_prj) + continue res = self.create_submitrequest(package) if res and res is not None: logging.info('Created request %s for %s' % (res, package)) # add review by package - devel_prj, devel_pkg = self.get_devel_project(package) - logging.info("adding review by %s/%s"%(devel_prj, devel_pkg)) + logging.info("Adding review by %s/%s"%(devel_prj, devel_pkg)) self.add_review(res, devel_prj, devel_pkg) else: logging.error('Error occurred when creating submit request') From f33c39a3af689e45e0db2ab9b444cc3625cb7141 Mon Sep 17 00:00:00 2001 From: Max Lin Date: Tue, 18 Aug 2015 19:19:53 +0800 Subject: [PATCH 3/4] add X11:Enlightenment:Factory to skip list as package maintainer prefer --- fcc_submitter.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fcc_submitter.py b/fcc_submitter.py index b91d717c..af4960d2 100755 --- a/fcc_submitter.py +++ b/fcc_submitter.py @@ -50,7 +50,9 @@ class FccSubmitter(object): self.apiurl = osc.conf.config['apiurl'] self.debug = osc.conf.config['debug'] # the skip list against devel project - self.skip_devel_project_list = [] + self.skip_devel_project_list = [ + 'X11:Enlightenment:Factory', + ] def get_source_packages(self, project, expand=False): """Return the list of packages in a project.""" From 98026b62559723e8328bbe16210c5d139a0411ad Mon Sep 17 00:00:00 2001 From: Max Lin Date: Tue, 18 Aug 2015 19:34:29 +0800 Subject: [PATCH 4/4] dump multi specs packages afterwards --- fcc_submitter.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/fcc_submitter.py b/fcc_submitter.py index af4960d2..9990cdaf 100755 --- a/fcc_submitter.py +++ b/fcc_submitter.py @@ -149,11 +149,14 @@ class FccSubmitter(object): # get souce packages from target target_packages = self.get_source_packages(self.to_prj) + ms_packages = [] # collect multi specs packages + for i in range(0, min(int(self.submit_limit), len(succeeded_packages))): package = succeeded_packages[i] multi_specs = self.check_multiple_specfiles(self.factory, package) if multi_specs is True: logging.info('%s in %s have multiple specs, skip for now and submit manually'%(package, 'openSUSE:Factory')) + ms_packages.append(package) continue # make sure the package non-exist in target yet ie. expand=False @@ -181,6 +184,14 @@ class FccSubmitter(object): else: logging.debug('%s is exist in %s, skip!'%(package, self.to_prj)) + # dump multi specs packages + print("Multi-specs packages:") + if ms_packages: + for pkg in ms_packages: + print pkg + else: + print 'None' + def main(args):