@@ -51,29 +51,30 @@ def get_source_data(params, logger):
51
51
remote_source_files = [f"{ date .strftime ('%Y%m%d' )} .csv.gz" for date in dates ]
52
52
53
53
# Download source files
54
- with ssh .open_sftp () as sftp :
54
+ sftp = ssh .open_sftp ()
55
+ try :
56
+ sftp .stat (params ["common" ]["backup_dir" ])
57
+ except IOError :
58
+ logger .error ("Source backup directory does not exist on the remote server." )
59
+
60
+ sftp .chdir (params ["common" ]["backup_dir" ])
61
+
62
+ num_files_transferred = 0
63
+ for remote_file_name in remote_source_files :
64
+ callback_for_filename = functools .partial (print_callback , remote_file_name , logger , progress_chunks = [0 , 50 ])
65
+ local_file_path = path .join (params ["patch" ]["source_dir" ], remote_file_name )
55
66
try :
56
- sftp .stat (params [ "common" ][ "backup_dir" ] )
67
+ sftp .stat (remote_file_name )
57
68
except IOError :
58
- logger .error ("Source backup directory does not exist on the remote server." )
59
-
60
- sftp .chdir (params ["common" ]["backup_dir" ])
61
-
62
- num_files_transferred = 0
63
- for remote_file_name in remote_source_files :
64
- callback_for_filename = functools .partial (print_callback , remote_file_name , logger , progress_chunks = [0 , 50 ])
65
- local_file_path = path .join (params ["patch" ]["source_dir" ], remote_file_name )
66
- try :
67
- sftp .stat (remote_file_name )
68
- except IOError :
69
- logger .warning (
70
- "Source backup for this date does not exist on the remote server." ,
71
- missing_filename = remote_file_name ,
72
- )
73
- continue
74
- sftp .get (remote_file_name , local_file_path , callback = callback_for_filename )
75
- logger .info ("Transfer finished" , remote_file_name = remote_file_name , local_file_path = local_file_path )
76
- num_files_transferred += 1
69
+ logger .warning (
70
+ "Source backup for this date does not exist on the remote server." ,
71
+ missing_filename = remote_file_name ,
72
+ )
73
+ continue
74
+ sftp .get (remote_file_name , local_file_path , callback = callback_for_filename )
75
+ logger .info ("Transfer finished" , remote_file_name = remote_file_name , local_file_path = local_file_path )
76
+ num_files_transferred += 1
77
+ ssh .close ()
77
78
78
79
if num_files_transferred == 0 :
79
80
logger .error ("No source data was transferred. Check the source backup server for potential issues." )
0 commit comments