diff options
author | Rafael G. Martins <rafael@rafaelmartins.eng.br> | 2010-06-03 20:39:40 -0300 |
---|---|---|
committer | Rafael G. Martins <rafael@rafaelmartins.eng.br> | 2010-06-03 20:39:40 -0300 |
commit | c51ba60c8826cc86748400edf41a8edb17be64f5 (patch) | |
tree | 6d705a99ab371cd21a553f2bbb1dd8f082eadacc /scripts | |
parent | Initial import of scripts/tinderbox.py (diff) | |
download | g-octave-c51ba60c8826cc86748400edf41a8edb17be64f5.tar.gz g-octave-c51ba60c8826cc86748400edf41a8edb17be64f5.tar.bz2 g-octave-c51ba60c8826cc86748400edf41a8edb17be64f5.zip |
started the automated bug report engine for the tinderbox script
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/tinderbox.py | 45 |
1 files changed, 38 insertions, 7 deletions
diff --git a/scripts/tinderbox.py b/scripts/tinderbox.py index 3bddf67..e0f863c 100755 --- a/scripts/tinderbox.py +++ b/scripts/tinderbox.py @@ -12,6 +12,8 @@ :license: GPL-2, see LICENSE for more details. """ +TRAC_URL="http://g-octave.rafaelmartins.eng.br/" + import sys import os @@ -35,14 +37,17 @@ current_dir = os.path.dirname(os.path.realpath(__file__)) if os.path.exists(os.path.join(current_dir, '..', 'g_octave')): sys.path.insert(0, os.path.join(current_dir, '..')) +import csv import subprocess +import urllib +import urllib2 from g_octave import config, description_tree, ebuild, fetch, overlay def build_package(pkgatom): proc = subprocess.call([ 'emerge', - '--nodeps', + #'--nodeps', '--nospinner', '--verbose', '--oneshot', @@ -58,15 +63,40 @@ def remove_packages(pkglist): proc = subprocess.call([ 'emerge', '--unmerge', - pkglist - ]) + ] + pkglist) return proc == os.EX_OK def bug_report(pkgatom): - pass - - + + def get_trac_bugs(pkgatom): + query_params = [ + ('format', 'csv'), + ('component', 'ebuilds'), + ('summary', '~' + pkgatom), + ('col', [ + 'id', + 'summary', + 'status', + ]) + ] + query = 'query?' + urllib.urlencode(query_params, True) + results = [] + try: + fp = csv.reader(urllib2.urlopen(TRAC_URL + query)) + result = list(fp) + keys = result[0] + for i in range(1, len(result)): + tmp = {} + for j in range(len(keys)): + tmp[keys[j]] = result[i][j] + results.append(tmp) + return results + except: + sys.exit('Failed to get the bugs list from trac: ' + TRAC_URL) + + print get_trac_bugs(pkgatom) + def main(argv): fetch.check_db_cache() conf = config.Config() @@ -97,4 +127,5 @@ def main(argv): if __name__ == '__main__': - sys.exit(main(sys.argv)) + #sys.exit(main(sys.argv)) + bug_report('g-octave/image-1.0.0') |