def perform(self, packages, cleanup, message): """ Remove request from staging project :param packages: packages/requests to delete from staging projects """ if cleanup: obsolete = self.api.project_status_requests( 'obsolete', self.filter_obsolete) if len(obsolete) > 0: print('Cleanup {} obsolete requests'.format(len(obsolete))) packages += tuple(obsolete) affected_projects = set() for request, request_project in RequestFinder.find_staged_sr( packages, self.api).items(): staging_project = request_project['staging'] affected_projects.add(staging_project) print('Unselecting "{}" from "{}"'.format(request, staging_project)) self.api.rm_from_prj(staging_project, request_id=request) req = get_request(self.api.apiurl, str(request)) if message: self.api.add_ignored_request(request, message) self.comment.add_comment(request_id=str(request), comment=message) elif req.state.name in ('new', 'review'): print( ' Consider marking the request ignored to let others know not to restage.' ) # Notify everybody about the changes for prj in affected_projects: self.api.update_status_or_deactivate(prj, 'unselect')
def perform(self, packages, move=False, by_dp=False, split=False): """ Perform the list command """ if len(packages): requests = set() if move: items = RequestFinder.find_staged_sr(packages, self.api).items() print(items) for request, request_project in items: staging_project = request_project['staging'] self.api.rm_from_prj(staging_project, request_id=request) self.api.add_review(request, by_group=self.api.cstaging_group, msg='Please recheck') else: items = RequestFinder.find_sr(packages, self.api).items() for request, request_project in items: requests.add(request) self.create_new_adi(requests, split=split) else: self.check_adi_projects() if self.api.is_user_member_of(self.api.user, self.api.cstaging_group): self.create_new_adi((), by_dp=by_dp, split=split)
def perform(self, packages): """ Remove request from staging project :param packages: packages/requests to delete from staging projects """ affected_projects = set() for request, request_project in RequestFinder.find_staged_sr(packages, self.api).items(): staging_project = request_project["staging"] affected_projects.add(staging_project) msg = 'Unselecting "{}" from "{}"'.format(request, staging_project) print(msg) self.api.rm_from_prj(staging_project, request_id=request) self.api.add_review(request, by_group=self.api.cstaging_group, msg="Please recheck") # Notify everybody about the changes for prj in affected_projects: self.api.update_status_comments(prj, "unselect")
def perform(self, packages): """ Remove request from staging project :param packages: packages/requests to delete from staging projects """ affected_projects = set() for request, request_project in RequestFinder.find_staged_sr(packages, self.api).items(): staging_project = request_project['staging'] affected_projects.add(staging_project) msg = 'Unselecting "{}" from "{}"'.format(request, staging_project) print(msg) self.api.rm_from_prj(staging_project, request_id=request, msg='Removing from {}, re-evaluation needed'.format(staging_project)) self.api.add_review(request, by_group=self.api.cstaging_group, msg='Requesting new staging review') # Notify everybody about the changes for prj in affected_projects: self.api.update_status_comments(prj, 'unselect')
def perform(self, packages): """ Remove request from staging project :param packages: packages/requests to delete from staging projects """ affected_projects = set() for request, request_project in RequestFinder.find_staged_sr( packages, self.api).items(): staging_project = request_project['staging'] affected_projects.add(staging_project) msg = 'Unselecting "{}" from "{}"'.format(request, staging_project) print(msg) self.api.rm_from_prj(staging_project, request_id=request) self.api.add_review(request, by_group=self.api.cstaging_group, msg='Please recheck') # Notify everybody about the changes for prj in affected_projects: self.api.update_status_comments(prj, 'unselect')
def perform(self, packages, cleanup=False): """ Remove request from staging project :param packages: packages/requests to delete from staging projects """ if cleanup: obsolete = self.api.project_status_requests( 'obsolete', self.filter_obsolete) if len(obsolete) > 0: print('Cleanup {} obsolete requests'.format(len(obsolete))) packages += tuple(obsolete) ignored_requests = self.api.get_ignored_requests() affected_projects = set() for request, request_project in RequestFinder.find_staged_sr( packages, self.api).items(): staging_project = request_project['staging'] affected_projects.add(staging_project) msg = 'Unselecting "{}" from "{}"'.format(request, staging_project) print(msg) self.api.rm_from_prj( staging_project, request_id=request, msg='Removing from {}, re-evaluation needed'.format( staging_project)) self.api.add_review(request, by_group=self.api.cstaging_group, msg='Requesting new staging review') req = get_request(self.api.apiurl, str(request)) if req.state.name in ( 'new', 'review') and request not in ignored_requests: print( ' Consider marking the request ignored to let others know not to restage.' ) # Notify everybody about the changes for prj in affected_projects: self.api.update_status_or_deactivate(prj, 'unselect')
def perform(self, packages, move=False, by_dp=False, split=False): """ Perform the list command """ if len(packages): requests = set() if move: items = RequestFinder.find_staged_sr(packages, self.api).items() print(items) for request, request_project in items: staging_project = request_project['staging'] self.api.rm_from_prj(staging_project, request_id=request) self.api.add_review(request, by_group=self.api.cstaging_group, msg='Please recheck') else: items = RequestFinder.find_sr(packages, self.api).items() for request, request_project in items: requests.add(request) self.create_new_adi(requests, split=split) else: self.check_adi_projects() if self.api.is_user_member_of(self.api.user, self.api.cstaging_group): self.create_new_adi((), by_dp=by_dp, split=split)