comparison bitten/queue.py @ 581:2cc06425117a

0.6dev: Handle any error accessing a repository node. Closes #416. Thanks to Andrea Tomasini for report and patch.
author osimons
date Mon, 13 Jul 2009 00:05:34 +0000
parents 90ec4de2df6b
children 87de4513bfdd
comparison
equal deleted inserted replaced
580:c66190747a9c 581:2cc06425117a
23 from itertools import ifilter 23 from itertools import ifilter
24 import logging 24 import logging
25 import re 25 import re
26 import time 26 import time
27 27
28 from trac.versioncontrol import NoSuchNode
29 from bitten.model import BuildConfig, TargetPlatform, Build, BuildStep 28 from bitten.model import BuildConfig, TargetPlatform, Build, BuildStep
30 29
31 __docformat__ = 'restructuredtext en' 30 __docformat__ = 'restructuredtext en'
32 31
33 log = logging.getLogger('bitten.queue') 32 log = logging.getLogger('bitten.queue')
48 env = config.env 47 env = config.env
49 if not db: 48 if not db:
50 db = env.get_db_cnx() 49 db = env.get_db_cnx()
51 try: 50 try:
52 node = repos.get_node(config.path) 51 node = repos.get_node(config.path)
53 except NoSuchNode, e: 52 except Exception, e:
54 env.log.warn('Node for configuration %r not found', config.name, 53 env.log.warn('Error accessing path %r for configuration %r',
55 exc_info=True) 54 config.path, config.name, exc_info=True)
56 return 55 return
57 56
58 for path, rev, chg in node.get_history(): 57 for path, rev, chg in node.get_history():
59 58
60 # Don't follow moves/copies 59 # Don't follow moves/copies
Copyright (C) 2012-2017 Edgewall Software