Gentoo Archives: gentoo-commits

From: "André Erdmann" <dywi@×××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/R_overlay:master commit in: roverlay/depres/, roverlay/recipe/
Date: Tue, 10 Jul 2012 07:14:03
Message-Id: 1341904430.aa475e12bacede830593094ed5553e6e433768c7.dywi@gentoo
1 commit: aa475e12bacede830593094ed5553e6e433768c7
2 Author: André Erdmann <dywi <AT> mailerd <DOT> de>
3 AuthorDate: Tue Jul 10 07:13:50 2012 +0000
4 Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
5 CommitDate: Tue Jul 10 07:13:50 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=aa475e12
7
8 create log dirs if necessary
9
10 modified: roverlay/depres/listeners.py
11 modified: roverlay/recipe/easylogger.py
12
13 ---
14 roverlay/depres/listeners.py | 10 +++++++++-
15 roverlay/recipe/easylogger.py | 6 +++++-
16 2 files changed, 14 insertions(+), 2 deletions(-)
17
18 diff --git a/roverlay/depres/listeners.py b/roverlay/depres/listeners.py
19 index 0815036..9d5b0fc 100644
20 --- a/roverlay/depres/listeners.py
21 +++ b/roverlay/depres/listeners.py
22 @@ -3,6 +3,7 @@
23 # Distributed under the terms of the GNU General Public License v2
24
25 import threading
26 +import os
27
28 from roverlay.depres import events
29 from roverlay.depres.depenv import DepEnv
30 @@ -32,7 +33,11 @@ class FileListener ( DependencyResolverListener ):
31 def _event ( self, event_type, to_write ):
32 """Writes to_write if event_type is accepted by self.listen_mask."""
33 if self.mask & event_type:
34 - if not self.fh: self.fh = open ( self._file, 'a' ) # or w?
35 + if not self.fh:
36 + fdir = os.path.dirname ( self._file )
37 + if not os.path.isdir ( fdir ):
38 + os.makedirs ( fdir )
39 + self.fh = open ( self._file, 'a' )
40 self.fh.write ( to_write + "\n" )
41 # when to close? with open (...) as fh:...?
42 # --- end of _event (...) ---
43 @@ -63,6 +68,9 @@ class SetFileListener ( DependencyResolverListener ):
44
45 def write ( self, sort_entries=True ):
46 try:
47 + fdir = os.path.dirname ( self._file )
48 + if not os.path.isdir ( fdir ):
49 + os.makedirs ( fdir )
50 fh = open ( self._file, 'w' )
51
52 if sort_entries:
53
54 diff --git a/roverlay/recipe/easylogger.py b/roverlay/recipe/easylogger.py
55 index 411397d..f1a497a 100644
56 --- a/roverlay/recipe/easylogger.py
57 +++ b/roverlay/recipe/easylogger.py
58 @@ -5,7 +5,7 @@
59 import sys
60 import logging
61 import logging.handlers
62 -import os.path
63 +import os
64
65 _STATUS = 0
66
67 @@ -97,6 +97,10 @@ def setup_file ( conf ):
68 # FIXME explain this in config (and make it available)
69 rotating = conf.get ( 'LOG.FILE.rotate', False )
70
71 + logdir = os.path.dirname ( logfile )
72 + if not os.path.isdir ( logdir ):
73 + os.makedirs ( logdir )
74 +
75 if rotating:
76 # using per-run log files