summaryrefslogtreecommitdiff
path: root/lib/tasks
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzegorz@gitlab.com>2017-06-08 05:29:35 +0000
committerKamil TrzciƄski <ayufan@ayufan.eu>2018-02-28 20:00:27 +0100
commit52c3b8f31264230814d2ffa79d0987c1491676b3 (patch)
treed5827bc9bd891c1dd602eb3cdd4e4062d2e85589 /lib/tasks
parent64701b51aeacf4f4f932f205a2d831880b757a43 (diff)
downloadgitlab-ce-52c3b8f31264230814d2ffa79d0987c1491676b3.tar.gz
Merge branch 'zj-object-store-artifacts' into 'master'
Object store for artifacts Closes gitlab-ce#29203 See merge request !1762
Diffstat (limited to 'lib/tasks')
-rw-r--r--lib/tasks/gitlab/artifacts.rake19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/tasks/gitlab/artifacts.rake b/lib/tasks/gitlab/artifacts.rake
new file mode 100644
index 00000000000..5676456b2a0
--- /dev/null
+++ b/lib/tasks/gitlab/artifacts.rake
@@ -0,0 +1,19 @@
+desc "GitLab | Migrate files for artifacts to comply with new storage format"
+namespace :gitlab do
+ namespace :artifacts do
+ task migrate: :environment do
+ puts 'Artifacts'.color(:yellow)
+ Ci::Build.joins(:project).with_artifacts
+ .where(artifacts_file_store: ArtifactUploader::LOCAL_STORE)
+ .find_each(batch_size: 100) do |issue|
+ begin
+ build.artifacts_file.migrate!(ArtifactUploader::REMOTE_STORE)
+ build.artifacts_metadata.migrate!(ArtifactUploader::REMOTE_STORE)
+ print '.'
+ rescue
+ print 'F'
+ end
+ end
+ end
+ end
+end