Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'lib/tasks/gitlab/backup.rake')
-rw-r--r--lib/tasks/gitlab/backup.rake106
1 files changed, 0 insertions, 106 deletions
diff --git a/lib/tasks/gitlab/backup.rake b/lib/tasks/gitlab/backup.rake
deleted file mode 100644
index 84445b3bf2f..00000000000
--- a/lib/tasks/gitlab/backup.rake
+++ /dev/null
@@ -1,106 +0,0 @@
-require 'active_record/fixtures'
-
-namespace :gitlab do
- namespace :backup do
- # Create backup of GitLab system
- desc "GITLAB | Create a backup of the GitLab system"
- task create: :environment do
- warn_user_is_not_gitlab
- configure_cron_mode
-
- Rake::Task["gitlab:backup:db:create"].invoke
- Rake::Task["gitlab:backup:repo:create"].invoke
- Rake::Task["gitlab:backup:uploads:create"].invoke
-
- backup = Backup::Manager.new
- backup.pack
- backup.cleanup
- backup.remove_old
- end
-
- # Restore backup of GitLab system
- desc "GITLAB | Restore a previously created backup"
- task restore: :environment do
- warn_user_is_not_gitlab
- configure_cron_mode
-
- backup = Backup::Manager.new
- backup.unpack
-
- Rake::Task["gitlab:backup:db:restore"].invoke unless backup.skipped?("db")
- Rake::Task["gitlab:backup:repo:restore"].invoke unless backup.skipped?("repositories")
- Rake::Task["gitlab:backup:uploads:restore"].invoke unless backup.skipped?("uploads")
- Rake::Task["gitlab:shell:setup"].invoke
-
- backup.cleanup
- end
-
- namespace :repo do
- task create: :environment do
- $progress.puts "Dumping repositories ...".blue
-
- if ENV["SKIP"] && ENV["SKIP"].include?("repositories")
- $progress.puts "[SKIPPED]".cyan
- else
- Backup::Repository.new.dump
- $progress.puts "done".green
- end
- end
-
- task restore: :environment do
- $progress.puts "Restoring repositories ...".blue
- Backup::Repository.new.restore
- $progress.puts "done".green
- end
- end
-
- namespace :db do
- task create: :environment do
- $progress.puts "Dumping database ... ".blue
-
- if ENV["SKIP"] && ENV["SKIP"].include?("db")
- $progress.puts "[SKIPPED]".cyan
- else
- Backup::Database.new.dump
- $progress.puts "done".green
- end
- end
-
- task restore: :environment do
- $progress.puts "Restoring database ... ".blue
- Backup::Database.new.restore
- $progress.puts "done".green
- end
- end
-
- namespace :uploads do
- task create: :environment do
- $progress.puts "Dumping uploads ... ".blue
-
- if ENV["SKIP"] && ENV["SKIP"].include?("uploads")
- $progress.puts "[SKIPPED]".cyan
- else
- Backup::Uploads.new.dump
- $progress.puts "done".green
- end
- end
-
- task restore: :environment do
- $progress.puts "Restoring uploads ... ".blue
- Backup::Uploads.new.restore
- $progress.puts "done".green
- end
- end
-
- def configure_cron_mode
- if ENV['CRON']
- # We need an object we can say 'puts' and 'print' to; let's use a
- # StringIO.
- require 'stringio'
- $progress = StringIO.new
- else
- $progress = $stdout
- end
- end
- end # namespace end: backup
-end # namespace end: gitlab