status-report-scripts pyGetReviewByFlags,1.2,1.3
Christian Iseli (c4chris)
fedora-extras-commits at redhat.com
Fri Apr 20 14:41:23 UTC 2007
Author: c4chris
Update of /cvs/fedora/status-report-scripts
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv9739
Modified Files:
pyGetReviewByFlags
Log Message:
Create several pages: NEW, ACCEPT, REVIEW, and REJECT. Show ticket count.
Index: pyGetReviewByFlags
===================================================================
RCS file: /cvs/fedora/status-report-scripts/pyGetReviewByFlags,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- pyGetReviewByFlags 19 Apr 2007 22:36:09 -0000 1.2
+++ pyGetReviewByFlags 20 Apr 2007 14:41:21 -0000 1.3
@@ -40,17 +40,40 @@
</head>
<body>
<div id="innerWrap">
- <p align="left" style='background-color: #99f;'>This is a cached copy of
+ <h1 style='background-color: #99f;'>This is a cached copy of
the package review tickets. It is intended to make interacting with
- bugzilla faster. It is updated every %s minutes.
- </p>
+ bugzilla faster<br/>
+ It is updated every %s minutes</h1>
<div id="content_here">
- <p style="background-color: #99f">Last Update: %s </p>
+ <h1 style="background-color: #99f">Last Update: %s </h1>
""" % (options.frequency, (datetime.datetime.today()))
-def runQuery(server, flag, f, openMsg):
+def runQuery(server, flag, f, openMsg, closeMsg):
+ querydata = {}
+ querydata['column_list'] = ['opendate', 'changeddate', 'bug_severity', 'alias', 'assigned_to', 'reporter', 'bug_status', 'resolution', 'component', 'blockedby', 'short_desc']
+ querydata['product'] = ['Fedora Extras']
+ querydata['component'] = ['Package Review']
+ querydata['field0-0-0'] = 'flagtypes.name'
+ if flag == " ":
+ querydata['bug_status'] = ["NEW", "ASSIGNED", "REOPENED", "NEEDINFO", "INVESTIGATE", "MODIFIED"]
+ querydata['type0-0-0'] = 'notregexp';
+ querydata['value0-0-0'] = 'fedora-review[-+?]'
+ else:
+ querydata['bug_status'] = ["NEW", "VERIFIED", "ASSIGNED", "REOPENED", "CLOSED", "NEEDINFO_ENG", "NEEDINFO", "INVESTIGATE", "MODIFIED", "ON_DEV", "UNCONFIRMED", "QA_READY", "ON_QA", "FAILS_QA", "NEEDINFO_REPORTER", "RELEASE_PENDING", "POST"]
+ querydata['type0-0-0'] = 'equals'
+ querydata['value0-0-0'] = "fedora-review" + flag
+ call = server.bugzilla.runQuery(querydata)
+ bugs = call['bugs']
+ closedCnt = 0
+ notClosedCnt = 0
+ for e in bugs:
+ if e['bug_status'] == "CLOSED":
+ closedCnt += 1
+ else:
+ notClosedCnt += 1
print >> f, """
-<p style="background-color: #99f">%s</p>
+<h1 style="background-color: #99f">%s<br/>
+There are %d tickets in this category</h1>
<table class="buglist" cellspacing="0" cellpadding="4" width="100%%">
<colgroup>
<col class="bz_id_column">
@@ -69,24 +92,61 @@
<td>Resolution</td>
<td>Summary</td>
</thead>
-""" % openMsg
- querydata = {}
- querydata['column_list'] = ['opendate', 'changeddate', 'bug_severity', 'alias', 'assigned_to', 'reporter', 'bug_status', 'resolution', 'component', 'blockedby', 'short_desc']
- querydata['product'] = ['Fedora Extras']
- querydata['component'] = ['Package Review']
- querydata['field0-0-0'] = 'flagtypes.name'
+""" % (openMsg, notClosedCnt)
+ cnt = 0
+ for e in bugs:
+ if e['bug_status'] == "CLOSED":
+ continue
+ cnt += 1
+ if (cnt % 2) == 1:
+ print >> f, '<tr class="bz_even bz_'
+ else:
+ print >> f, '<tr class="bz_odd bz_'
+ print >> f, e['bug_status'], ' onMouseOver="bug_over(this, 0);">', "\n"
+ print >> f, """
+<td>
+<a href="show_bug.cgi?id=%s">%s</a>
+</td><td><nobr>
+<span title="%s">%s</span>
+</nobr></td><td><nobr>
+<span title="%s">%s</span>
+</nobr></td><td><nobr>
+<span title="%s">%s</span>
+</nobr></td><td><nobr>
+<span title="%s">%s</span>
+</nobr></td><td><nobr>
+<span title="%s">%s</span>
+</nobr></td></tr>
+""" % (e['bug_id'], e['bug_id'], e['alias'], e['alias'], e['assigned_to'], e['assigned_to'], e['bug_status'], e['bug_status'], e['resolution'], e['resolution'], e['short_desc'], e['short_desc'])
+ print >> f, "</table>\n"
if flag == " ":
- querydata['bug_status'] = ["NEW", "ASSIGNED", "REOPENED", "NEEDINFO", "INVESTIGATE", "MODIFIED"]
- querydata['type0-0-0'] = 'notregexp';
- querydata['value0-0-0'] = 'fedora-review[-+?]'
- else:
- querydata['bug_status'] = ["NEW", "VERIFIED", "ASSIGNED", "REOPENED", "CLOSED", "NEEDINFO_ENG", "NEEDINFO", "INVESTIGATE", "MODIFIED", "ON_DEV", "UNCONFIRMED", "QA_READY", "ON_QA", "FAILS_QA", "NEEDINFO_REPORTER", "RELEASE_PENDING", "POST"]
- querydata['type0-0-0'] = 'equals'
- querydata['value0-0-0'] = "fedora-review" + flag
- call = server.bugzilla.runQuery(querydata)
- bugs = call['bugs']
+ return
+ print >> f, """
+<h1 style="background-color: #99f">%s<br/>
+There are %d tickets in this category</h1>
+<table class="buglist" cellspacing="0" cellpadding="4" width="100%%">
+<colgroup>
+<col class="bz_id_column">
+<col class="bz_alias_column">
+<col class="bz_assigned_to_column">
+<col class="bz_bug_status_column">
+<col class="bz_resolution_column">
+<col class="bz_short_short_desc_column">
+</colgroup>
+<thead>
+<tr align="left">
+<td>ID</td>
+<td>Alias</td>
+<td>Assignee</td>
+<td>Status</td>
+<td>Resolution</td>
+<td>Summary</td>
+</thead>
+""" % (closeMsg, closedCnt)
cnt = 0
for e in bugs:
+ if e['bug_status'] != "CLOSED":
+ continue
cnt += 1
if (cnt % 2) == 1:
print >> f, '<tr class="bz_even bz_'
@@ -119,7 +179,7 @@
print 'ERROR: %s: %s' % (strerr, fname)
sys.exit(1)
printHeader(f)
-runQuery(server, ' ', f, "Open ticket(s) with an empty flag")
+runQuery(server, ' ', f, "Open ticket(s) with an empty flag", "")
print >> f, """
</div></div>
</body>
@@ -127,35 +187,29 @@
"""
f.close()
-#for flag in ['+', '-', '?']:
-# if flag == ' ':
-# else:
-# print """
-#<p style="background-color: #99f">Ticket(s) with a '%s' flag</p>
-#<table class="buglist" cellspacing="0" cellpadding="4" width="100%%">
-#<colgroup>
-#<col class="bz_id_column">
-#<col class="bz_alias_column">
-#<col class="bz_assigned_to_column">
-#<col class="bz_bug_status_column">
-#<col class="bz_resolution_column">
-#<col class="bz_short_short_desc_column">
-#</colgroup>
-#<thead>
-#<tr align="left">
-#<td>ID</td>
-#<td>Alias</td>
-#<td>Assignee</td>
-#<td>Status</td>
-#<td>Resolution</td>
-#<td>Summary</td>
-#</thead>
-#""" % (flag)
-# runQuery(server, flag)
-# print "</table>\n"
-#print """
-# </div></div>
-# </body>
-#</html>
-#"""
+for flag in ['+', '-', '?']:
+ if flag == '+':
+ openMsg = "Accepted, but still open, tickets"
+ closeMsg = "Accepted tickets"
+ fname = os.path.join(options.dirname, "ACCEPT")
+ elif flag == '-':
+ openMsg = "Rejected, but still open, tickets"
+ closeMsg = "Rejected tickets"
+ fname = os.path.join(options.dirname, "REJECT")
+ else:
+ openMsg = "Tickets being reviewed"
+ closeMsg = "Tickets being reviewed, but closed (should not happen)"
+ fname = os.path.join(options.dirname, "REVIEW")
+ try:
+ f = open(fname, "w")
+ except IOError, (err, strerr):
+ print 'ERROR: %s: %s' % (strerr, fname)
+ sys.exit(1)
+ printHeader(f)
+ runQuery(server, flag, f, openMsg, closeMsg)
+ print >> f, """
+ </div></div>
+ </body>
+</html>
+"""
sys.exit(0)
More information about the fedora-extras-commits
mailing list