summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMicaël Bergeron <mbergeron@gitlab.com>2018-03-30 08:52:37 -0400
committerMicaël Bergeron <mbergeron@gitlab.com>2018-04-02 08:19:34 -0400
commit8fe5bcde569e9e5f45e397005a915142d20d319d (patch)
treeb985cee00aa1c756f3dc1869e460893902db9133
parentf3de480997c68a2b360c5a5f6cff8332d25a33a4 (diff)
downloadgitlab-ce-8fe5bcde569e9e5f45e397005a915142d20d319d.tar.gz
apply feedback
-rw-r--r--app/workers/object_storage/migrate_uploads_worker.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/app/workers/object_storage/migrate_uploads_worker.rb b/app/workers/object_storage/migrate_uploads_worker.rb
index 826618aebdb..a6b2c251254 100644
--- a/app/workers/object_storage/migrate_uploads_worker.rb
+++ b/app/workers/object_storage/migrate_uploads_worker.rb
@@ -159,7 +159,11 @@ module ObjectStorage
raise(SanityCheckError, "Mount point #{mounted_as} not found in #{model_class}.") unless model_has_mount
end
- def perform(ids, model_type, mounted_as, to_store)
+ def perform(*args)
+ args_check!(args)
+
+ (ids, model_type, mounted_as, to_store) = args
+
@model_class = model_type.constantize
@mounted_as = mounted_as&.to_sym
@to_store = to_store
@@ -179,6 +183,16 @@ module ObjectStorage
self.class.sanity_check!(uploads, @model_class, @mounted_as)
end
+ def args_check!(args)
+ return if args.count == 4
+
+ case args.count
+ when 3 then raise SanityCheckError, "Job is missing the `model_type` argument."
+ else
+ raise SanityCheckError, "Job has wrong arguments format."
+ end
+ end
+
def build_uploaders(uploads)
uploads.map { |upload| upload.build_uploader(@mounted_as) }
end