#!/usr/bin/python from subprocess import check_output import json, re, datetime import time jd = json.JSONDecoder() def jira_query(query): jira_url = "http://eneaissues.enea.com" fields = "key,summary" query = query.replace(" ", "+") cmd = ["curl", "-s", "-D-", "-u", "rest_reader:jira123", "-X", "GET", "-H", "Content-Type: application/json", jira_url + "/rest/api/2/search?jql=" + query + "&fields=" + fields ] tmp = check_output(cmd).splitlines() tmp = jd.decode(tmp[-1]) return tmp["issues"] conditions = ("project=LXCR", "issueType=bug", "resolution=Unresolved", 'affectedversion="Enea Linux 6"' ) bugs = [] time_str = time.strftime("%Y-%m-%d, %H:%M:%S (%Z)") for issue in jira_query(" and ".join(conditions)): bugs.append((issue["key"], issue["fields"]["summary"])) print '' print '' print '
' print ' Extracted from Jira' print print ' ' print ' This section lists open bugs in Jira. Extracted at %s.' % time_str print ' ' print print ' Jira query: (%s)' % "\n and ".join(conditions) print print ' ' print ' ' print ' ' print print ' ' print print ' ' print ' ' print ' Summary' print print ' Enea Ref' print ' ' print ' ' print print ' ', if bugs: for bug in sorted(bugs): print print ' ' print ' %s' % bug[1] print print ' %s' % bug[0] print ' ' else: print ' ' print ' ' print ' No issues found' print ' ' print ' ' print ' ' print ' ' print ' ' if bugs: print ' Number of open bugs: %d' % len(bugs) print '
'