Skip to content

Commit 5d4f24a

Browse files
--ship url sharing fixed, added sym_follow to args
1 parent f90fe49 commit 5d4f24a

1 file changed

Lines changed: 12 additions & 8 deletions

File tree

core/warp.py

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,7 @@ def ship(src_ssh, src_path, recv_ssh, recv_path, options):
1111
receiver_cmd = ("ssh " + recv_ssh + " wdt" + options + " -directory " + recv_path)
1212
receiver_process = subprocess.Popen(receiver_cmd, stdout=subprocess.PIPE, shell=True)
1313
connection_url = str(receiver_process.stdout.readline().strip())[1:]
14-
sender_cmd = ("ssh " + src_ssh + " wdt" + options + "-connection_url=" + connection_url + " -directory " + src_path + " -")
15-
subprocess.Popen(sender_cmd, stdout=subprocess.PIPE, shell=True)
14+
os.system("echo " + connection_url + " | ssh " + src_ssh + ' wdt' + options + " -directory " + src_path + ' -')
1615

1716
def push(src_path, recv_ssh, recv_path, options):
1817
cmd = ("ssh " + recv_ssh + " wdt" + options + " -directory " + recv_path +
@@ -43,7 +42,8 @@ def build_options(ports, mbytes, interval, overwrite, custom_parms):
4342
num_ports = " -num_ports=" + str(args.threads)
4443
avg_mbytes = " -avg_mbytes_per_sec=" + str(args.throttle_speed)
4544
report_interval = " -progress_report_interval_millis=" + str(args.report_interval)
46-
overwrite = " -overwrite=" + str(args.overwrite)
45+
overwrite = " -overwrite=" + str(args.overwrite).lower()
46+
sym_links = " -follow_symlinks=" + str(args.follow_sym).lower()
4747
options = (num_ports + avg_mbytes + report_interval + overwrite + custom_parms)
4848
return options
4949

@@ -64,13 +64,16 @@ def run_macro(macro_name):
6464
########
6565
def start_recv_daemon(recv_path):
6666
import getpass, datetime
67-
receiver_cmd = ("wdt -run_as_daemon=true -overwrite=true -max_mbytes_per_sec=-1 -progress_report_interval_millis=-1 -directory " + recv_path)
67+
receiver_cmd = ("wdt -run_as_daemon=true" + options + " -directory " + recv_path)
6868
receiver_process = subprocess.Popen(receiver_cmd, stdout=subprocess.PIPE, shell=True)
6969
connection_url = str(receiver_process.stdout.readline().strip())[1:]
70+
7071
## generate a connection file containing meta data about the daemon
71-
meta_data = str("Recvier daemon started by " + getpass.getuser() + " in " + recv_path + " at " + str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")))
72+
meta_data = str("Recvier daemon started by " + getpass.getuser() + " in " + recv_path +
73+
" at " + str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")))
7274
connection_file = [meta_data, connection_url]
73-
export_path = (base_dir + "/pool/" + getpass.getuser() + "_" + str(datetime.datetime.now().strftime("%m_%d-%H:%M_%S")) + ".txt")
75+
export_path = (base_dir + "/pool/" + getpass.getuser() + "_" +
76+
str(datetime.datetime.now().strftime("%m_%d-%H:%M_%S")) + ".txt")
7477
os.system('cat > ' + export_path)
7578
export_list(export_path, connection_file)
7679
return export_path
@@ -85,8 +88,9 @@ def start_recv_daemon(recv_path):
8588
### optional arguments
8689
parser.add_argument("-tr", "--threads", default="8", metavar='INT', help="Set the number of threads/ports for WDT to use.")
8790
parser.add_argument("-ri", "--report_interval", default="3000", metavar='INT', help="Update interval in milliseconds for transfer report updates.")
88-
parser.add_argument("-ts", "--throttle_speed", default="110", metavar='INT', help=" Throttle the transfer to an average mbytes per second.")
89-
parser.add_argument("-ow", "--overwrite", default="false", metavar='BOOL', help="Allow the receiver to overwrite existing files in a directory.")
91+
parser.add_argument("-ts", "--throttle_speed", default="-1", metavar='INT', help=" Throttle the transfer to an average mbytes per second.")
92+
parser.add_argument("-ow", "--overwrite", action='store_true', help="Allow the receiver to overwrite existing files in a directory.")
93+
parser.add_argument("-sym", "--follow_sym", action='store_false', help="Let WDT follow symlinks during transfer.")
9094
parser.add_argument("-cp", "--custom_parms", default="", metavar="-CUSTOM_PARM value", help="Inject any additional parameters available in `wdt --help`.")
9195
### utilities
9296
parser.add_argument("-d", "--daemon", metavar='/DIR/FOR/DAEMON', help="Start a receiver daemon on a directory. Returns a connection url to ~/warp-cli/macros.")

0 commit comments

Comments
 (0)