From 9135f916202244fad63dc5bc1fd27a112deab58f Mon Sep 17 00:00:00 2001 From: Jimmy Berry Date: Wed, 19 Apr 2017 14:55:42 -0500 Subject: [PATCH] unselect: filter superseded when using --cleanup. --- osclib/stagingapi.py | 5 +++-- osclib/unselect_command.py | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/osclib/stagingapi.py b/osclib/stagingapi.py index b69a649f..6add02d3 100644 --- a/osclib/stagingapi.py +++ b/osclib/stagingapi.py @@ -921,12 +921,13 @@ class StagingAPI(object): tobuild += int(repo['tobuild']) return final, tobuild - def project_status_requests(self, request_type): + def project_status_requests(self, request_type, filter_superseded=False): key = '{}_requests'.format(request_type) requests = [] for status in self.project_status(): for request in status[key]: - requests.append(str(request['number'])) + if not filter_superseded or request['superseded_by_id'] is None: + requests.append(str(request['number'])) return requests def days_since_last_freeze(self, project): diff --git a/osclib/unselect_command.py b/osclib/unselect_command.py index 3ae5651f..6faf5341 100644 --- a/osclib/unselect_command.py +++ b/osclib/unselect_command.py @@ -14,7 +14,7 @@ class UnselectCommand(object): """ if cleanup: - obsolete = self.api.project_status_requests('obsolete') + obsolete = self.api.project_status_requests('obsolete', filter_superseded=True) if len(obsolete) > 0: print('Cleanup {} obsolete requests'.format(len(obsolete))) packages += tuple(obsolete)