Mercurial > roundup-cc
view display_issues_demo.py @ 25:7161ce4e7ab1
The web-based display is dynamically generated.
* All graphs are passed in one object. All graphs are passed in one object. The
graphs are generated iteratiev and assigned a color.
* roundup_cc.py can count how many issues are in which state.
author | Magnus Schieder <mschieder@intevation.de> |
---|---|
date | Mon, 12 Nov 2018 18:03:26 +0100 |
parents | 89469aa41fe1 |
children | 761ee2351f58 |
line wrap: on
line source
#!/usr/bin/env python3 """ Fetch issues from a roundup-tracker and save them in a databse. author: Sascha L. Teichmann <sascha.teichmann@intevation.de> author: Bernhard Reiter <bernhard@intevation.de> author: Sean Engelhardt <sean.engelhardt@intevation.de> (c) 2010, 2015, 2018 by Intevation GmbH This is Free Software unter the terms of the GNU GENERAL PUBLIC LICENSE Version 3 or later. See http://www.gnu.org/licenses/gpl-3.0.txt for details """ import configparser import argparse from display_issues import * STATES = "unread, deferred, chatting, need_eg, in_progress, testing, done_cbb, resolved" parser = argparse.ArgumentParser() parser.add_argument("config_file", type=str, metavar="[config file]") args = parser.parse_args() config = configparser.ConfigParser() config.read(args.config_file) db = config.get("DB", "DatabaseFile") keywords = config.get("SEARCH", "Keywords", fallback="") status = config.get("SEARCH", "Status", fallback="") columns = config.get("SEARCH", "Columns", fallback="critical, urgent, bug, feature, wish") noPrio = config.get("SEARCH", "IncludeNoPrio", fallback=False) search = config.get("SEARCH", "Search", fallback="prio") if search == "status": if status == "": columns = STATES else: columns = status noPrio = False if noPrio: columns += ", None" cgitb.enable() # (optional) HTML traceback to browser #render_db_stats_as_html("./demo1.db", rcd.SELECT_ALL) render_db_stats_as_html(db, rcd.build_sql_select(columns).format("timestamp > date('now', '-2 month')"), columns, status, keywords)