fixes #3560
This commit is contained in:
@@ -7,6 +7,24 @@ class RemoteFileManager
|
||||
@path = path
|
||||
end
|
||||
|
||||
def distribute_to_archive(dest_url)
|
||||
uri = URI.parse(dest_url)
|
||||
dir_name = uri.host.split(".").first
|
||||
uuid = SecureRandom.uuid
|
||||
dest_path = "/var/www/#{dir_name}#{uri.path}"
|
||||
temp_path = "/tmp/rfm-#{Danbooru.config.server_host}-#{uuid}"
|
||||
|
||||
Net::SFTP.start(uri.host, Danbooru.config.archive_server_login) do |ftp|
|
||||
ftp.upload!(path, temp_path)
|
||||
begin
|
||||
ftp.rename!(temp_path, dest_path)
|
||||
rescue Net::SFTP::StatusException
|
||||
ftp.remove!(dest_path)
|
||||
ftp.rename!(temp_apth, dest_path)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def distribute
|
||||
uuid = SecureRandom.uuid
|
||||
temp_path = "/tmp/rfm-#{Danbooru.config.server_host}-#{uuid}"
|
||||
|
||||
Reference in New Issue
Block a user