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