@@ -177,7 +177,8 @@ def _cmdline_login(cli_args: argparse.Namespace):
177177
178178 r = tcfl .servers .run_fn_on_each_server (
179179 servers , _login , credentials ,
180- serialize = cli_args .serialize , traces = cli_args .traces )
180+ parallelization_factor = cli_args .parallelization_factor ,
181+ traces = cli_args .traces )
181182 # r now is a dict keyed by server_name of tuples usernames,
182183 # exception
183184 logged_count = 0
@@ -216,7 +217,8 @@ def _cmdline_logout(cli_args: argparse.Namespace):
216217
217218 r = tcfl .servers .run_fn_on_each_server (
218219 servers , _logout , cli_args ,
219- serialize = cli_args .serialize , traces = cli_args .traces )
220+ parallelization_factor = cli_args .parallelization_factor ,
221+ traces = cli_args .traces )
220222 # r now is a dict keyed by server_name of tuples usernames,
221223 # exception
222224 for server_name , ( _ , e ) in r .items ():
@@ -258,7 +260,8 @@ def _cmdline_role_gain(cli_args: argparse.Namespace):
258260
259261 tcfl .servers .run_fn_on_each_server (
260262 servers , _user_role , cli_args , "gain" ,
261- serialize = cli_args .serialize , traces = cli_args .traces )
263+ parallelization_factor = cli_args .parallelization_factor ,
264+ traces = cli_args .traces )
262265
263266
264267def _cmdline_role_drop (cli_args : argparse .Namespace ):
@@ -269,7 +272,8 @@ def _cmdline_role_drop(cli_args: argparse.Namespace):
269272
270273 tcfl .servers .run_fn_on_each_server (
271274 servers , _user_role , cli_args , "drop" ,
272- serialize = cli_args .serialize , traces = cli_args .traces )
275+ parallelization_factor = cli_args .parallelization_factor ,
276+ traces = cli_args .traces )
273277
274278
275279
@@ -290,7 +294,8 @@ def _cmdline_user_list(cli_args: argparse.Namespace):
290294
291295 result = tcfl .servers .run_fn_on_each_server (
292296 tcfl .server_c .servers , _user_list , cli_args ,
293- serialize = cli_args .serialize , traces = cli_args .traces )
297+ parallelization_factor = cli_args .parallelization_factor ,
298+ traces = cli_args .traces )
294299
295300 # so now result is a dictionary of SERVER: ( DATA, EXCEPTION ),
296301 # where DATA is dictionaries of USERNAME: USERDATA
@@ -399,9 +404,14 @@ def cmdline_setup(arg_subparser):
399404 "AKA is the short name of the server (defaults to the sole "
400405 "host name, without the domain). Find it with 'tcf servers'" )
401406 ap .add_argument (
402- "--serialize" , action = "store_true" , default = False ,
407+ "--serialize" ,
408+ action = "store_const" , dest = "parellization_factor" , default = 1 ,
403409 help = "Serialize (don't parallelize) the operation on"
404- " multiple servers" )
410+ " multiple targets" )
411+ ap .add_argument (
412+ "--parallelization-factor" ,
413+ action = "store" , type = int , default = - 4 ,
414+ help = "(advanced) parallelization factor" )
405415 ap .add_argument (
406416 "username" , nargs = '?' , metavar = "USERNAME" ,
407417 action = "store" , default = None ,
@@ -434,9 +444,14 @@ def cmdline_setup_advanced(arg_subparser):
434444 help = "ID of user whose role is to be dropped"
435445 " (optional, defaults to yourself)" )
436446 ap .add_argument (
437- "--serialize" , action = "store_true" , default = False ,
447+ "--serialize" ,
448+ action = "store_const" , dest = "parellization_factor" , default = 1 ,
438449 help = "Serialize (don't parallelize) the operation on"
439- " multiple servers" )
450+ " multiple targets" )
451+ ap .add_argument (
452+ "--parallelization-factor" ,
453+ action = "store" , type = int , default = - 4 ,
454+ help = "(advanced) parallelization factor" )
440455 ap .add_argument (
441456 "role" , action = "store" ,
442457 help = "Role to gain" )
@@ -452,9 +467,14 @@ def cmdline_setup_advanced(arg_subparser):
452467 help = "ID of user whose role is to be dropped"
453468 " (optional, defaults to yourself)" )
454469 ap .add_argument (
455- "--serialize" , action = "store_true" , default = False ,
470+ "--serialize" ,
471+ action = "store_const" , dest = "parellization_factor" , default = 1 ,
456472 help = "Serialize (don't parallelize) the operation on"
457- " multiple servers" )
473+ " multiple targets" )
474+ ap .add_argument (
475+ "--parallelization-factor" ,
476+ action = "store" , type = int , default = - 4 ,
477+ help = "(advanced) parallelization factor" )
458478 ap .add_argument (
459479 "role" , action = "store" ,
460480 help = "Role to drop" )
@@ -467,9 +487,14 @@ def cmdline_setup_advanced(arg_subparser):
467487 "admin role privilege to list users others than your own)" )
468488 tcfl .ui_cli .args_verbosity_add (ap )
469489 ap .add_argument (
470- "--serialize" , action = "store_true" , default = False ,
490+ "--serialize" ,
491+ action = "store_const" , dest = "parellization_factor" , default = 1 ,
471492 help = "Serialize (don't parallelize) the operation on"
472493 " multiple targets" )
494+ ap .add_argument (
495+ "--parallelization-factor" ,
496+ action = "store" , type = int , default = - 4 ,
497+ help = "(advanced) parallelization factor" )
473498 ap .add_argument ("userid" , action = "store" ,
474499 default = None , nargs = "*" ,
475500 help = "Users to list (default all)" )
0 commit comments