32
32
33
33
from tools .utils import delete_dir_files , mkdir , copy_file
34
34
35
+ rel_log = logging .getLogger ("Importer" )
35
36
cherry_pick_re = re .compile (
36
37
'\s*\(cherry picked from commit (([0-9]|[a-f]|[A-F])+)\)' )
37
38
@@ -54,6 +55,11 @@ def __call__(self, parser, namespace, values, option_string=None):
54
55
setattr (namespace , self .dest , fn )
55
56
56
57
58
+ class SetLogLevel (argparse .Action ):
59
+ def __call__ (self , parser , namespace , values , option_string = None ):
60
+ logging .basicConfig (level = values )
61
+
62
+
57
63
def del_file (name ):
58
64
"""
59
65
Delete the file in RTOS/CMSIS/features directory of mbed-os.
@@ -136,7 +142,7 @@ def get_curr_sha(repo_path):
136
142
rel_log .error ("Could not obtain latest SHA" )
137
143
sys .exit (1 )
138
144
139
- rel_log .info ("%s SHA = %s" , repo_path , sha )
145
+ rel_log .info ("%s SHA = %s" , repo_path , _sha )
140
146
return _sha
141
147
142
148
@@ -201,14 +207,15 @@ def normalize_commit_sha(sha_lst):
201
207
202
208
203
209
if __name__ == "__main__" :
204
-
205
210
parser = argparse .ArgumentParser (
206
211
description = __doc__ ,
207
212
formatter_class = argparse .RawDescriptionHelpFormatter )
208
213
209
214
parser .add_argument ('-l' , '--log-level' ,
210
215
help = "Level for providing logging output" ,
211
- default = 'INFO' )
216
+ choices = ['DEBUG' , 'INFO' , 'ERROR' ],
217
+ default = 'INFO' ,
218
+ action = SetLogLevel )
212
219
parser .add_argument ('-r' , '--repo-path' ,
213
220
help = "Git Repository to be imported" ,
214
221
required = True ,
@@ -218,17 +225,11 @@ def normalize_commit_sha(sha_lst):
218
225
required = True ,
219
226
action = StoreValidFile )
220
227
221
- args = parser .parse_args ()
222
- level = getattr (logging , args .log_level .upper ())
223
-
224
228
if ROOT not in abspath (os .curdir ):
225
229
parser .error ("This script must be run from the mbed-os directory "
226
230
"to work correctly." )
227
231
228
- # Set logging level
229
- logging .basicConfig (level = level )
230
- rel_log = logging .getLogger ("Importer" )
231
-
232
+ args = parser .parse_args ()
232
233
sha = get_curr_sha (args .repo_path )
233
234
repo_dir = os .path .basename (args .repo_path )
234
235
branch = 'feature_' + repo_dir + '_' + sha
0 commit comments