From eee8bbb498dad16058d3ceeaba54e19beba16fe6 Mon Sep 17 00:00:00 2001 From: tkucherera Date: Wed, 27 Sep 2023 17:52:15 -0400 Subject: [PATCH] node rsync -s switch --- confluent_client/bin/nodersync | 12 ++++++++++-- confluent_client/doc/man/nodersync.ronn | 3 +++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/confluent_client/bin/nodersync b/confluent_client/bin/nodersync index ba95662c..8e125ee8 100755 --- a/confluent_client/bin/nodersync +++ b/confluent_client/bin/nodersync @@ -48,6 +48,8 @@ def run(): 'prompting if over the threshold') argparser.add_option('-l', '--loginname', type='str', help='Username to use when connecting, defaults to current user.') + argparser.add_option('-s', '--substitutename', + help='Use a different name other than the nodename for rsync') argparser.add_option('-f', '-c', '--count', type='int', default=168, help='Number of nodes to concurrently rsync') # among other things, FD_SETSIZE limits. Besides, spawning too many @@ -63,8 +65,14 @@ def run(): c = client.Command() cmdstr = ' '.join(args[:-1]) cmdstr = 'rsync -av --info=progress2 ' + cmdstr - if options.loginname: - cmdstr += ' {}@'.format(options.loginname) + '{node}:' + targpath + if options.loginname and options.substitutename: + cmdstr += ' {}@'.format(options.loginname) + '{node}' + '{}:'.format(options.substitutename) + targpath + elif options.loginname and not options.substitutename: + cmdstr += ' {}@'.format(options.loginname) + '{node}:' + targpath + elif options.substitutename and not options.loginname: + subname = options.substitutename + if '{' not in subname: + cmdstr += ' {node}' + '{}:'.format(options.substitutename) + targpath else: cmdstr += ' {node}:' + targpath diff --git a/confluent_client/doc/man/nodersync.ronn b/confluent_client/doc/man/nodersync.ronn index 582f79d9..c187215e 100644 --- a/confluent_client/doc/man/nodersync.ronn +++ b/confluent_client/doc/man/nodersync.ronn @@ -16,6 +16,9 @@ noderange. This will present progress as percentage for all nodes. Specify how many rsync executions to do concurrently. If noderange exceeds the count, then excess nodes will wait until one of the active count completes. + +* `-s`, `--substitutename`: + 'Use a different name other than the nodename for rsync' * `-m MAXNODES`, `--maxnodes=MAXNODES`: Specify a maximum number of nodes to run rsync to, prompting if over the