You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@community.apache.org by hu...@apache.org on 2019/08/04 14:41:07 UTC

svn commit: r1864386 - in /comdev/reporter.apache.org/trunk/site: getjson.py wizard/kibble.py

Author: humbedooh
Date: Sun Aug  4 14:41:07 2019
New Revision: 1864386

URL: http://svn.apache.org/viewvc?rev=1864386&view=rev
Log:
Allow JIRA data to be pulled via kibble

Modified:
    comdev/reporter.apache.org/trunk/site/getjson.py
    comdev/reporter.apache.org/trunk/site/wizard/kibble.py

Modified: comdev/reporter.apache.org/trunk/site/getjson.py
URL: http://svn.apache.org/viewvc/comdev/reporter.apache.org/trunk/site/getjson.py?rev=1864386&r1=1864385&r2=1864386&view=diff
==============================================================================
--- comdev/reporter.apache.org/trunk/site/getjson.py (original)
+++ comdev/reporter.apache.org/trunk/site/getjson.py Sun Aug  4 14:41:07 2019
@@ -381,7 +381,10 @@ if re.match(r"^[-a-zA-Z0-9_.]+$", user):
         try:
             xenv = os.environ.copy()
             del xenv['SCRIPT_NAME']
-            txt = subprocess.check_output(('%s/site/wizard/kibble.py' % RAOHOME_FULL, oproject), env = xenv)
+            cmd = ('%s/site/wizard/kibble.py' % RAOHOME_FULL, oproject)
+            if jdata and oproject in jdata:
+                cmd += tuple(jdata[oproject][2])
+            txt = subprocess.check_output(cmd, env = xenv)
             kibble = json.loads(txt)
         except:
             pass

Modified: comdev/reporter.apache.org/trunk/site/wizard/kibble.py
URL: http://svn.apache.org/viewvc/comdev/reporter.apache.org/trunk/site/wizard/kibble.py?rev=1864386&r1=1864385&r2=1864386&view=diff
==============================================================================
--- comdev/reporter.apache.org/trunk/site/wizard/kibble.py (original)
+++ comdev/reporter.apache.org/trunk/site/wizard/kibble.py Sun Aug  4 14:41:07 2019
@@ -15,9 +15,12 @@ TOKEN = open('%s/data/kibble-token.txt'
 def main():
     form = cgi.FieldStorage()
     project = form.getvalue('project')
+    jira = []
     if not project:
         if len(sys.argv) > 1:
             project = sys.argv[1]
+            for j in sys.argv[2:]:
+                jira.append(j)
         else:    
             project = 'nosuchproject'
     
@@ -72,6 +75,38 @@ def main():
         isc_change = '%u%%' % int((isc_after - isc_before) / (isc_before or 1) * 100)
         
         
+        # JIRA ??
+        # Issues/PRs
+        jio_before = 0
+        jic_before = 0
+        jio_after = 0
+        jic_after = 0
+        for j in jira:
+            issues = requests.post('https://demo.kibble.apache.org/api/issue/issues',
+                      headers = {
+                        'Content-Type': 'application/json',
+                        'Kibble-Token': TOKEN,
+                      },
+                      json = {
+                        "quick":True,
+                        "interval": "week",
+                        "subfilter":"/browse/" + j
+                        }
+                     ).json();
+            after = [x for x in issues['timeseries'] if x['date'] > BEFORE]
+            before = [x for x in issues['timeseries'] if x['date'] <= BEFORE]
+        
+            for month in before:
+                jio_before += month.get('issues opened', 0)
+                jic_before += month.get('issues closed', 0)
+            for month in after:
+                jio_after += month.get('issues opened', 0)
+                jic_after += month.get('issues closed', 0)
+                
+        jio_change = '%u%%' % int((jio_after - jio_before) / (jio_before or 1) * 100)
+        jic_change = '%u%%' % int((jic_after - jic_before) / (jic_before or 1) * 100)
+        
+        
         # Commits
         commits = requests.post('https://demo.kibble.apache.org/api/code/commits',
                   headers = {
@@ -165,6 +200,20 @@ def main():
                     'closed': isc_change,
                 }
             },
+            'jira': {
+                'before': {
+                    'opened': jio_before,
+                    'closed': jic_before,
+                },
+                'after': {
+                    'opened': jio_after,
+                    'closed': jic_after,
+                },
+                'change': {
+                    'opened': jio_change,
+                    'closed': jic_change,
+                }
+            },
             'commits' : {
                 'before': {
                     'commits': cmt_before,