left_nav_html=left_nav_html) log.info('Issues index now available at ' + desturl) if __name__ == '__main__': issues_count = {} bugs = Bugs().bugs notes = load_notes() issues = load_issues() iterate_over_notes(notes) iterate_over_issues(issues) try: index_issues(issues, OrderedDict([ ("Sum of packages' popcon scores", lambda l: sum(popcon.source_package(*l).values())), ("Sum of square-roots of packages' popcon scores", lambda l: int(sum(map(sqrt, popcon.source_package(*l).values())))), ("Number of packages", len), ])) except UnicodeDecodeError: pass purge_old_notes(notes) purge_old_issues(issues) gen_packages_html([Package(x) for x in notes]) for suite in SUITES: for arch in ARCHS: build_page('notes', suite, arch) build_page('no_notes', suite, arch) build_page('FTBFS', suite, arch)
if maintainer: global conn_udd if not conn_udd: conn_udd = start_udd_connection() c = conn_udd.cursor() query = "SELECT source FROM sources WHERE maintainer_email = '{}' " + \ "AND release = 'sid' AND component = 'main'" try: c.execute(query.format(maintainer)) pkgs = [x[0] for x in c.fetchall()] except IndexError: log.info('No packages maintained by ' + maintainer) sys.exit(0) finally: conn_udd.close() log.info('Packages maintained by ' + maintainer + ':') log.info('\t' + ', '.join(pkgs)) packages.extend(pkgs) c = conn_db.cursor() for package in packages: process_pkg(package, local_args.deactivate) gen_packages_html([Package(x) for x in packages], no_clean=True) build_page('notify') if local_args.deactivate: _good('Notifications disabled for ' + str(len(packages)) + ' package(s)') else: _good('Notifications enabled for ' + str(len(packages)) + ' package(s)')
'</b> issues.</p>' html += tab*2 + '<p>Notes are stored in <a href="https://anonscm.debian.org/cgit/reproducible/notes.git" target="_parent">notes.git</a> and are targeted at packages in \'unstable\'.</p>' title = 'Known issues related to reproducible builds' destfile = BASE + '/index_issues.html' desturl = REPRODUCIBLE_URL + '/index_issues.html' write_html_page(title=title, body=html, destfile=destfile) log.info('Issues index now available at ' + desturl) if __name__ == '__main__': all_pkgs = query_db('SELECT s.name, r.status, s.suite, s.architecture ' + 'FROM results AS r JOIN sources AS s ON r.package_id=s.id ' + 'ORDER BY s.name') issues_count = {} bugs = get_bugs() notes = load_notes() issues = load_issues() iterate_over_notes(notes) iterate_over_issues(issues) index_issues(issues) purge_old_notes(notes) purge_old_issues(issues) gen_packages_html([Package(x) for x in notes]) for suite in SUITES: for arch in ARCHS: if arch == 'armhf' and suite != 'unstable': continue build_page('notes', suite, arch) build_page('no_notes', suite, arch) build_page('FTBFS', suite, arch)
global conn_udd if not conn_udd: conn_udd = start_udd_connection() c = conn_udd.cursor() query = "SELECT source FROM sources WHERE maintainer_email = '{}' " + \ "AND release = 'sid' AND component = 'main'" try: c.execute(query.format(maintainer)) pkgs = [x[0] for x in c.fetchall()] except IndexError: log.info('No packages maintained by ' + maintainer) sys.exit(0) finally: conn_udd.close() log.info('Packages maintained by ' + maintainer + ':') log.info('\t' + ', '.join(pkgs)) packages.extend(pkgs) c = conn_db.cursor() for package in packages: process_pkg(package, local_args.deactivate) gen_packages_html([Package(x) for x in packages], no_clean=True) build_page('notify') if local_args.deactivate: _good('Notifications disabled for ' + str(len(packages)) + ' package(s)') else: _good('Notifications enabled for ' + str(len(packages)) + ' package(s)')