1+ # Copyright The IETF Trust 2016-2019, All Rights Reserved
12from __future__ import print_function , unicode_literals
23
34import os
@@ -78,7 +79,7 @@ def extract_from(file, dir, strict=True):
7879 modfile .rename (str (moddir / name ))
7980 model_list = [ n .replace ('"' ,'' ) for n in model_list ]
8081 except Exception as e :
81- print ("** Error when extracting from %s: %s" % (file , str (e )))
82+ self . stderr . write ("** Error when extracting from %s: %s" % (file , str (e )))
8283 sys .stdout = saved_stdout
8384 sys .stderr = saved_stderr
8485 #
@@ -103,24 +104,26 @@ def extract_from(file, dir, strict=True):
103104 if item .stat ().st_mtime > latest :
104105 latest = item .stat ().st_mtime
105106
106- print ("Extracting to %s ..." % moddir )
107+ if verbosity > 0 :
108+ self .stdout .write ("Extracting to %s ..." % moddir )
107109 for item in rfcdir .iterdir ():
108110 if item .is_file () and item .name .startswith ('rfc' ) and item .name .endswith ('.txt' ) and item .name [3 :- 4 ].isdigit ():
109111 if item .stat ().st_mtime > latest :
110112 model_list = extract_from (item , moddir )
111113 for name in model_list :
112114 if name .startswith ('ietf' ) or name .startswith ('iana' ):
113115 if verbosity > 1 :
114- print (" Extracted from %s: %s" % (item , name ))
115- else :
116- sys .stdout .write ('.' )
117- sys .stdout .flush ()
116+ self . stdout . write (" Extracted from %s: %s" % (item , name ))
117+ elif verbosity > 0 :
118+ self .stdout .write ('.' , ending = ' ' )
119+ self .stdout .flush ()
118120 else :
119121 modfile = moddir / name
120122 modfile .unlink ()
121123 if verbosity > 1 :
122- print (" Skipped module from %s: %s" % (item , name ))
123- print ("" )
124+ self .stdout .write (" Skipped module from %s: %s" % (item , name ))
125+ if verbosity > 0 :
126+ self .stdout .write ("" )
124127
125128 # Extract valid modules from drafts
126129
@@ -133,30 +136,33 @@ def active(item):
133136 moddir = Path (settings .SUBMIT_YANG_DRAFT_MODEL_DIR )
134137 if not moddir .exists ():
135138 moddir .mkdir (parents = True )
136- print ("Emptying %s ..." % moddir )
139+ if verbosity > 0 :
140+ self .stdout .write ("Emptying %s ..." % moddir )
137141 for item in moddir .iterdir ():
138142 item .unlink ()
139143
140- print ("Extracting to %s ..." % moddir )
144+ if verbosity > 0 :
145+ self .stdout .write ("Extracting to %s ..." % moddir )
141146 for item in draftdir .iterdir ():
142147 try :
143148 if item .is_file () and item .name .startswith ('draft' ) and item .name .endswith ('.txt' ) and active (item ):
144149 model_list = extract_from (item , moddir , strict = False )
145150 for name in model_list :
146151 if not name .startswith ('example' ):
147152 if verbosity > 1 :
148- print (" Extracted module from %s: %s" % (item , name ))
149- else :
150- sys .stdout .write ('.' )
151- sys .stdout .flush ()
153+ self . stdout . write (" Extracted module from %s: %s" % (item , name ))
154+ elif verbosity > 0 :
155+ self .stdout .write ('.' , ending = ' ' )
156+ self .stdout .flush ()
152157 else :
153158 modfile = moddir / name
154159 modfile .unlink ()
155160 if verbosity > 1 :
156- print (" Skipped module from %s: %s" % (item , name ))
161+ self . stdout . write (" Skipped module from %s: %s" % (item , name ))
157162 except UnicodeDecodeError as e :
158- sys .stderr .write ('\n Error: %s\n ' % (e , ))
159- sys .stderr .write (item .name )
160- sys .stderr .write ('\n ' )
161- print ("" )
163+ self .stderr .write ('\n Error: %s' % (e , ))
164+ self .stderr .write (item .name )
165+ self .stderr .write ('' )
166+ if verbosity > 0 :
167+ self .stdout .write ('' )
162168
0 commit comments