From 9c7c4cddf18f3d7e2fc8bbe849fd416052763f5a Mon Sep 17 00:00:00 2001 From: Ralph Bean Date: Apr 01 2019 19:14:44 +0000 Subject: Slightly more flexible duplicate handling. --- diff --git a/sync2jira/downstream.py b/sync2jira/downstream.py index 6cb14be..5070dbc 100644 --- a/sync2jira/downstream.py +++ b/sync2jira/downstream.py @@ -68,7 +68,7 @@ def _matching_jira_issue_query(client, issue, config, free=False): 'issueFunction in linkedIssuesOfRemote("%s")' % ( remote_link_title, issue.url) if free: - query += ' and status not in (Done, Dropped)' + query += ' and statusCategory != Done' results = client.search_issues(query) log.debug("Found %i results for query %r", len(results), query) return results @@ -208,7 +208,7 @@ def _close_as_duplicate(client, duplicate, keeper, config): transitions = client.transitions(duplicate) transitions = dict([(t['name'], t['id']) for t in transitions]) closed = None - preferences = ['Dropped', 'Done', ] + preferences = ['Dropped', 'Done', 'Closed', ] for preference in preferences: if preference in transitions: closed = transitions[preference] @@ -231,6 +231,8 @@ def _close_as_duplicate(client, duplicate, keeper, config): client.transition_issue(duplicate, closed) except Exception: log.exception("Failed to close %r", duplicate.permalink()) + else: + log.warn(" Unable to find close transition for %r" % duplicate.key) def close_duplicates(issue, config):