diff options
author | Will Woods <wwoods@redhat.com> | 2008-08-15 12:43:27 -0400 |
---|---|---|
committer | Will Woods <wwoods@redhat.com> | 2008-08-15 12:43:27 -0400 |
commit | d4f2581e5cb6fa11b9510c2e0a3ea6e52411fec4 (patch) | |
tree | 015528b4d969bdd650540416d4091164cf06a364 /bugzilla/rhbugzilla.py | |
parent | 0e070830f198a314fbedebd108de97c738636bd4 (diff) | |
download | python-bugzilla-d4f2581e5cb6fa11b9510c2e0a3ea6e52411fec4.tar.gz python-bugzilla-d4f2581e5cb6fa11b9510c2e0a3ea6e52411fec4.tar.xz python-bugzilla-d4f2581e5cb6fa11b9510c2e0a3ea6e52411fec4.zip |
Modify _updatedeps slightly (it wasn't being used by anything anyway) and implement it for bz32 and rhbz
Diffstat (limited to 'bugzilla/rhbugzilla.py')
-rw-r--r-- | bugzilla/rhbugzilla.py | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/bugzilla/rhbugzilla.py b/bugzilla/rhbugzilla.py index d19c863..984787b 100644 --- a/bugzilla/rhbugzilla.py +++ b/bugzilla/rhbugzilla.py @@ -185,11 +185,29 @@ class RHBugzilla(bugzilla.base.BugzillaBase): data: 'assigned_to','reporter','qa_contact','comment' returns: [$id, $mailresults]''' return self._proxy.bugzilla.changeAssignment(id,data) - def _updatedeps(self,id,deplist): - '''IMPLEMENT ME: update the deps (blocked/dependson) for the given bug. + def _updatedeps(self,id,blocked,dependson,action): + '''update the deps (blocked/dependson) for the given bug. + blocked/dependson: list of bug ids/aliases + action: 'add' or 'delete' + + RHBZ call: updateDepends($bug_id,$data,$username,$password,$nodependencyemail) - #data: 'blocked'=>id,'dependson'=>id,'action' => ('add','remove')''' - raise NotImplementedError + #data: 'blocked'=>id,'dependson'=>id,'action' => ('add','remove') + + RHBZ only does one bug at a time, so this method will loop through + the blocked/dependson lists. This may be slow. + ''' + r = [] + if action == 'delete': + action == 'remove' + data = {'id':id, 'action':action, 'blocked':'', 'dependson':''} + for b in blocked: + data['blocked'] = b + self._proxy.bugzilla.updateDepends(id,data) + data['blocked'] = '' + for d in dependson: + data['dependson'] = d + self._proxy.bugzilla.updateDepends(id,data) def _updatecc(self,id,cclist,action,comment='',nomail=False): '''Updates the CC list using the action and account list specified. cclist must be a list (not a tuple!) of addresses. |