80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
# File 'lib/cnvrg/files.rb', line 80
def upload_multiple_files(files_list, commit_sha1, progress: nil)
Cnvrg::Logger.log_info("Uploading project files")
return if files_list.blank?
if Cnvrg::Helpers.server_version < 1
Cnvrg::Logger.log_info("Upload files to older server..")
return self.upload_files_old(files_list, commit_sha1, progress: progress)
end
files_list = files_list.map{|x| [x,self.parse_file(x)]}.to_h
resp = Cnvrg::API.request(@base_resource + "upload_files", 'POST', {files: files_list, commit: commit_sha1})
unless Cnvrg::CLI.is_response_success(resp, false)
raise SignalException.new("Cant upload files to the server.")
end
res = resp['result']
files = res['files']
blob_ids = Parallel.map(files.keys, self.get_upload_options) do |file|
begin
Cnvrg::Helpers.try_until_success{self.upload_single_file(files[file].merge(files_list[file]))}
rescue => e
Cnvrg::CLI.log_message("Failed to upload #{file}: #{e.message}", 'red')
Cnvrg::Logger.log_error(e)
Cnvrg::Logger.log_method(bind: binding)
raise e
end
progress.progress += 1 if progress.present?
files[file]["bv_id"]
end
resp = Cnvrg::API.request(@base_resource + "upload_files_save", 'POST', {blob_ids: blob_ids, commit: commit_sha1})
unless Cnvrg::CLI.is_response_success(resp, false)
raise SignalException.new("Cant save uploaded files to the server.")
end
end
|