# map crash database names to CrashDatabase implementations and URLs default = 'ubuntu' def get_oem_project(): '''Determine OEM project name from Distribution Channel Descriptor Return None if it cannot be determined or does not exist. ''' try: dcd = open('/var/lib/ubuntu_dist_channel').read() if dcd.startswith('canonical-oem-'): return dcd.split('-')[2] except IOError: return None databases = { 'ubuntu': { 'impl': 'launchpad', 'bug_pattern_url': 'http://people.canonical.com/~ubuntu-archive/bugpatterns/bugpatterns.xml', 'dupdb_url': 'http://people.canonical.com/~ubuntu-archive/apport-duplicates', 'distro': 'ubuntu', 'problem_types': ['Bug', 'Package', 'Crash'], 'escalation_tag': 'bugpattern-needed', 'escalated_tag': 'bugpattern-written', }, 'canonical-oem': { 'impl': 'launchpad', 'bug_pattern_url': 'http://people.canonical.com/~ubuntu-archive/bugpatterns/bugpatterns.xml', 'project': get_oem_project(), }, 'debug': { # for debugging 'impl': 'memory', 'bug_pattern_url': '/tmp/bugpatterns.xml', 'distro': 'debug' }, }