def create_issue(gh_issue): "Create an Issue from a `github.Issue`." issue = Issue(key=str(gh_issue.number), title=gh_issue.title, state=gh_issue.state, opened=gh_issue.created_at, closed=gh_issue.closed_at, url=gh_issue.html_url) if gh_issue.assignee: issue.assignee = create_user(gh_issue.assignee) return issue.save()
def create_issue(jira_issue): "Creates a `githubsurvivor.models.Issue` from a `jira.resources.Issue`." fields = jira_issue.fields state = 'closed' if fields.resolution and fields.resolution.name in ('Finished', 'Fixed') else 'open' parse_date = lambda d: iso8601.parse_date(d) if d else None issue = Issue(key=jira_issue.key, title=fields.summary, state=state, opened=parse_date(fields.created), closed=parse_date(fields.resolutiondate), # TODO: we need the HTML URL, not the API URL url=jira_issue.self) if fields.assignee: issue.assignee = create_user(fields.assignee) return issue.save()