[Checkins] SVN: grokproject/trunk/grokproject/template/bootstrap.py Avoid duplicate messages when running generated bootstrap.py.
Uli Fouquet
uli at gnufix.de
Wed Sep 24 08:30:32 EDT 2008
Log message for revision 91421:
Avoid duplicate messages when running generated bootstrap.py.
Changed:
U grokproject/trunk/grokproject/template/bootstrap.py
-=-
Modified: grokproject/trunk/grokproject/template/bootstrap.py
===================================================================
--- grokproject/trunk/grokproject/template/bootstrap.py 2008-09-24 12:06:19 UTC (rev 91420)
+++ grokproject/trunk/grokproject/template/bootstrap.py 2008-09-24 12:30:32 UTC (rev 91421)
@@ -20,8 +20,20 @@
$Id: bootstrap.py 85041 2008-03-31 15:57:30Z andreasjung $
"""
-import os, shutil, sys, tempfile, urllib2
+import os, shutil, sys, tempfile, urllib2, logging
+def remove_old_logger_handlers():
+ # zc.buildout installs a new log stream on every call of
+ # main(). We remove any leftover handlers to avoid multiple output
+ # of same content (doubled lines etc.)
+ root_logger = logging.getLogger()
+ if 'zc.buildout' in root_logger.manager.loggerDict.keys():
+ logger = logging.getLogger('zc.buildout')
+ for handler in logger.handlers:
+ logger.removeHandler(handler)
+ return
+
+
tmpeggs = tempfile.mkdtemp()
try:
@@ -59,6 +71,7 @@
ws.require('zc.buildout')
import zc.buildout.buildout
zc.buildout.buildout.main(sys.argv[1:] + ['bootstrap'])
+remove_old_logger_handlers()
shutil.rmtree(tmpeggs)
# grokproject specific addition to standard bootstrap.py:
More information about the Checkins
mailing list