def make_issue()

in src/plugins/scanners/github-issues.py [0:0]


def make_issue(source, issue, people):

    key = str(issue['number'])
    dhash = make_hash(source, issue)

    closed_date = issue.get('closed_at', None)

    owner_email = people[issue['user']['login']]['email']

    issue_closer = owner_email
    if 'closed_by' in issue:
        issue_closer = people[issue['closed_by']['login']]
    # Is this an issue ro a pull request?
    itype = "issue"
    if 'pull_request' in issue:
        itype = "pullrequest"
    labels = []
    for l in issue.get('labels', []):
        labels.append(l['name'])
    return {
        'id': dhash,
        'key': key,
        'issuetype': itype,
        'organisation': source['organisation'],
        'sourceID': source['sourceID'],
        'url': issue['html_url'],
        'status': issue['state'],
        'labels': labels,
        'created': format_date(issue['created_at'], epoch=True),
        'closed': format_date(closed_date, epoch=True),
        'issueCloser': issue_closer,
        'createdDate': format_date(issue['created_at']),
        'closedDate': format_date(closed_date),
        'changeDate': format_date(closed_date
                                  if closed_date
                                  else issue['updated_at']),
        'assignee': owner_email,
        'issueCreator': owner_email,
        'comments': issue['comments'],
        'title': issue['title']
    }