summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorKamil Trzciński <ayufan@ayufan.eu>2018-05-01 22:27:54 +0200
committerKamil Trzciński <ayufan@ayufan.eu>2018-05-01 22:27:54 +0200
commit9bb7abedf57f5325a92bebc2d93b85cf7e1fc303 (patch)
tree84fe11877609631929b2911ff44bb0d500c8bc2a /app
parent9267ef0bd1d2d9ee4b7fe596762fec3e978a02f3 (diff)
downloadgitlab-ce-9bb7abedf57f5325a92bebc2d93b85cf7e1fc303.tar.gz
Fix file_store for artifacts and lfs when saving
Diffstat (limited to 'app')
-rw-r--r--app/controllers/projects/lfs_storage_controller.rb3
-rw-r--r--app/models/ci/job_artifact.rb2
-rw-r--r--app/models/lfs_object.rb2
3 files changed, 3 insertions, 4 deletions
diff --git a/app/controllers/projects/lfs_storage_controller.rb b/app/controllers/projects/lfs_storage_controller.rb
index ebde0df1f7b..43d8867a536 100644
--- a/app/controllers/projects/lfs_storage_controller.rb
+++ b/app/controllers/projects/lfs_storage_controller.rb
@@ -77,8 +77,7 @@ class Projects::LfsStorageController < Projects::GitHttpClientController
def link_to_project!(object)
if object && !object.projects.exists?(storage_project.id)
- object.projects << storage_project
- object.save!
+ object.lfs_objects_projects.create!(project: storage_project)
end
end
end
diff --git a/app/models/ci/job_artifact.rb b/app/models/ci/job_artifact.rb
index 39676efa08c..3b952391b7e 100644
--- a/app/models/ci/job_artifact.rb
+++ b/app/models/ci/job_artifact.rb
@@ -13,7 +13,7 @@ module Ci
after_save :update_project_statistics_after_save, if: :size_changed?
after_destroy :update_project_statistics_after_destroy, unless: :project_destroyed?
- after_save :update_file_store
+ after_save :update_file_store, if: :file_changed?
scope :with_files_stored_locally, -> { where(file_store: [nil, ::JobArtifactUploader::Store::LOCAL]) }
diff --git a/app/models/lfs_object.rb b/app/models/lfs_object.rb
index 6b7f280fb70..84487031ee5 100644
--- a/app/models/lfs_object.rb
+++ b/app/models/lfs_object.rb
@@ -11,7 +11,7 @@ class LfsObject < ActiveRecord::Base
mount_uploader :file, LfsObjectUploader
- after_save :update_file_store
+ after_save :update_file_store, if: :file_changed?
def update_file_store
# The file.object_store is set during `uploader.store!`