qpid-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ai...@apache.org
Subject svn commit: r679762 - in /incubator/qpid/trunk/qpid/review: ./ agenda.py jiraRSS2wiki.xsl svnlog2wiki.xsl
Date Fri, 25 Jul 2008 11:18:20 GMT
Author: aidan
Date: Fri Jul 25 04:18:20 2008
New Revision: 679762

URL: http://svn.apache.org/viewvc?rev=679762&view=rev
Log:
Add xslt magic for creating code review agenda, and add wrapper script

Added:
    incubator/qpid/trunk/qpid/review/
    incubator/qpid/trunk/qpid/review/agenda.py   (with props)
    incubator/qpid/trunk/qpid/review/jiraRSS2wiki.xsl
    incubator/qpid/trunk/qpid/review/svnlog2wiki.xsl

Added: incubator/qpid/trunk/qpid/review/agenda.py
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/review/agenda.py?rev=679762&view=auto
==============================================================================
--- incubator/qpid/trunk/qpid/review/agenda.py (added)
+++ incubator/qpid/trunk/qpid/review/agenda.py Fri Jul 25 04:18:20 2008
@@ -0,0 +1,65 @@
+#!/usr/bin/env python
+#
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+import sys, re
+from popen2 import popen2, popen3
+from optparse import OptionParser
+
+prereqs = ["tr", "svn", "xsltproc", "sed", "grep", "wget"]
+
+svncmd = "svn log https://svn.apache.org/repos/asf/incubator/qpid --xml -r %s:HEAD | tr '\n\r|'
'  -' | xsltproc svnlog2wiki.xsl - | grep r | sed -e 's/^ *//' | sed -e 's/\(QPID-[0-9]*\)/\[\1
| https:\/\/issues.apache.org\/jira\/browse\/\1 \]/g'"
+
+jiracmd = "wget -q -O - http://issues.apache.org/jira/sr/jira.issueviews:searchrequest-xml/12312564/SearchRequest-12312564.xml?tempMax=1000
| tr '[]|' '()-' | xsltproc jiraRSS2wiki.xsl - | grep '|' | sed -e 's/^ *//'"
+
+
+def get_commits(revision):
+    (stdout, stdin) = popen2(svncmd % revision)
+    return stdout.read()
+
+def get_jiras():
+    (stdout, stdin) = popen2(jiracmd)
+    return stdout.read()
+
+def main():
+    parser = OptionParser()
+    parser.add_option("-r", "--revision", dest="revision", action="store",
+                      type="string",
+                      help="The first revision to generate logs for")
+
+    (options, args) = parser.parse_args()
+
+    # Check that we have what's necessary
+
+    notfound = re.compile('^which')
+    for cmd in prereqs:
+        (stdout, stdin, stderr) = popen3('which %s' % cmd)
+        if (notfound.match(stderr.read())):
+            parser.error ("Could not find command %s, try [apt-get|yum] install %s" %
+                          (cmd, cmd))
+            
+    if (options.revision == None):
+        parser.error("svn revision must be specified")
+
+    print(get_commits(options.revision))
+    print "=== Jiras==="
+    print(get_jiras())
+
+if __name__ == "__main__":
+    main()

Propchange: incubator/qpid/trunk/qpid/review/agenda.py
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/qpid/trunk/qpid/review/jiraRSS2wiki.xsl
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/review/jiraRSS2wiki.xsl?rev=679762&view=auto
==============================================================================
--- incubator/qpid/trunk/qpid/review/jiraRSS2wiki.xsl (added)
+++ incubator/qpid/trunk/qpid/review/jiraRSS2wiki.xsl Fri Jul 25 04:18:20 2008
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+    <xsl:output method="text"></xsl:output>
+    <xsl:template match="/">        
+        || Key || Component(s) || Affects Version/s|| Summary || Status || Assignee || Reporter
|| Review Comments ||       
+        <xsl:apply-templates select="rss/channel/item"></xsl:apply-templates>
+    </xsl:template>
+    <xsl:template match="item">
+        | [<xsl:value-of select="key"/> |  <![CDATA[https://issues.apache.org/jira/browse/]]><xsl:value-of
select="key"/> ] | <xsl:apply-templates select="component"/>  |  <xsl:apply-templates
select="version"/> | <xsl:value-of select="title"/> | <xsl:value-of select="status"/>
| <xsl:value-of select="assignee"/> | <xsl:value-of select="reporter"/> | |
+    </xsl:template>
+    <xsl:template match="component">
+<xsl:value-of select="."/><xsl:if test="following-sibling::node()[name() = 'component']">,
</xsl:if>        
+    </xsl:template>
+    <xsl:template match="version">
+        <xsl:value-of select="."/><xsl:if test="following-sibling::node()[name()
= 'version']">, </xsl:if>        
+    </xsl:template>
+</xsl:stylesheet>

Added: incubator/qpid/trunk/qpid/review/svnlog2wiki.xsl
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/review/svnlog2wiki.xsl?rev=679762&view=auto
==============================================================================
--- incubator/qpid/trunk/qpid/review/svnlog2wiki.xsl (added)
+++ incubator/qpid/trunk/qpid/review/svnlog2wiki.xsl Fri Jul 25 04:18:20 2008
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+    <xsl:output method="text"></xsl:output>
+    <xsl:template match="/">        
+|| revision || committer || date || comment || ||       
+<xsl:apply-templates select="log/logentry"></xsl:apply-templates>
+    </xsl:template>
+    <xsl:template match="logentry">
+        | [r<xsl:value-of select="@revision"/> |  <![CDATA[http://svn.apache.org/viewvc/?view=rev&revision=]]><xsl:value-of
select="@revision"/> ] | <xsl:value-of select="author"/>  |  <xsl:value-of select="substring(
date, 1, 10 )"/> | <xsl:value-of select="substring(msg, 1, 200)"/><xsl:if test="string-length(
msg ) > 200"> ... </xsl:if> | |
+    </xsl:template>
+</xsl:stylesheet>



Mime
View raw message