mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FIX: Add compatibility for bucket folder paths in migrate_to_s3 task (#6855)
* FIX: Add compatibility for bucket folder paths in migrate_to_s3 task * Refactor bucket_name split logic into S3Helper
This commit is contained in:
@@ -12,7 +12,7 @@ class S3Helper
|
||||
|
||||
@s3_bucket_name, @s3_bucket_folder_path = begin
|
||||
raise Discourse::InvalidParameters.new("s3_bucket_name") if s3_bucket_name.blank?
|
||||
s3_bucket_name.downcase.split("/".freeze, 2)
|
||||
self.class.get_bucket_and_folder_path(s3_bucket_name)
|
||||
end
|
||||
|
||||
@tombstone_prefix =
|
||||
@@ -23,6 +23,10 @@ class S3Helper
|
||||
end
|
||||
end
|
||||
|
||||
def self.get_bucket_and_folder_path(s3_bucket_name)
|
||||
s3_bucket_name.downcase.split("/".freeze, 2)
|
||||
end
|
||||
|
||||
def upload(file, path, options = {})
|
||||
path = get_path_for_s3_upload(path)
|
||||
obj = s3_bucket.object(path)
|
||||
@@ -62,10 +66,10 @@ class S3Helper
|
||||
options[:copy_source] = File.join(@s3_bucket_name, source)
|
||||
else
|
||||
if @s3_bucket_folder_path
|
||||
bucket_folder, filename = begin
|
||||
folder, filename = begin
|
||||
source.split("/".freeze, 2)
|
||||
end
|
||||
options[:copy_source] = File.join(@s3_bucket_name, bucket_folder, multisite_upload_path, filename)
|
||||
options[:copy_source] = File.join(@s3_bucket_name, folder, multisite_upload_path, filename)
|
||||
else
|
||||
options[:copy_source] = File.join(@s3_bucket_name, multisite_upload_path, source)
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user