Eliminate the warnings from task helpers

This commit is contained in:
Lin Jen-Shin 2018-01-24 16:12:33 +08:00
parent cb7974b8f7
commit 8e87ecbf30
13 changed files with 45 additions and 54 deletions

View File

@ -1,5 +1,3 @@
require 'tasks/gitlab/task_helpers'
module SystemCheck module SystemCheck
module Helpers module Helpers
include ::Gitlab::TaskHelpers include ::Gitlab::TaskHelpers

View File

@ -4,7 +4,7 @@ namespace :gitlab do
namespace :backup do namespace :backup do
# Create backup of GitLab system # Create backup of GitLab system
desc "GitLab | Create a backup of the GitLab system" desc "GitLab | Create a backup of the GitLab system"
task create: :environment do task create: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
configure_cron_mode configure_cron_mode
@ -25,7 +25,7 @@ namespace :gitlab do
# Restore backup of GitLab system # Restore backup of GitLab system
desc 'GitLab | Restore a previously created backup' desc 'GitLab | Restore a previously created backup'
task restore: :environment do task restore: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
configure_cron_mode configure_cron_mode
@ -73,7 +73,7 @@ namespace :gitlab do
end end
namespace :repo do namespace :repo do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping repositories ...".color(:blue) $progress.puts "Dumping repositories ...".color(:blue)
if ENV["SKIP"] && ENV["SKIP"].include?("repositories") if ENV["SKIP"] && ENV["SKIP"].include?("repositories")
@ -84,7 +84,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring repositories ...".color(:blue) $progress.puts "Restoring repositories ...".color(:blue)
Backup::Repository.new.restore Backup::Repository.new.restore
$progress.puts "done".color(:green) $progress.puts "done".color(:green)
@ -92,7 +92,7 @@ namespace :gitlab do
end end
namespace :db do namespace :db do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping database ... ".color(:blue) $progress.puts "Dumping database ... ".color(:blue)
if ENV["SKIP"] && ENV["SKIP"].include?("db") if ENV["SKIP"] && ENV["SKIP"].include?("db")
@ -103,7 +103,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring database ... ".color(:blue) $progress.puts "Restoring database ... ".color(:blue)
Backup::Database.new.restore Backup::Database.new.restore
$progress.puts "done".color(:green) $progress.puts "done".color(:green)
@ -111,7 +111,7 @@ namespace :gitlab do
end end
namespace :builds do namespace :builds do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping builds ... ".color(:blue) $progress.puts "Dumping builds ... ".color(:blue)
if ENV["SKIP"] && ENV["SKIP"].include?("builds") if ENV["SKIP"] && ENV["SKIP"].include?("builds")
@ -122,7 +122,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring builds ... ".color(:blue) $progress.puts "Restoring builds ... ".color(:blue)
Backup::Builds.new.restore Backup::Builds.new.restore
$progress.puts "done".color(:green) $progress.puts "done".color(:green)
@ -130,7 +130,7 @@ namespace :gitlab do
end end
namespace :uploads do namespace :uploads do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping uploads ... ".color(:blue) $progress.puts "Dumping uploads ... ".color(:blue)
if ENV["SKIP"] && ENV["SKIP"].include?("uploads") if ENV["SKIP"] && ENV["SKIP"].include?("uploads")
@ -141,7 +141,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring uploads ... ".color(:blue) $progress.puts "Restoring uploads ... ".color(:blue)
Backup::Uploads.new.restore Backup::Uploads.new.restore
$progress.puts "done".color(:green) $progress.puts "done".color(:green)
@ -149,7 +149,7 @@ namespace :gitlab do
end end
namespace :artifacts do namespace :artifacts do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping artifacts ... ".color(:blue) $progress.puts "Dumping artifacts ... ".color(:blue)
if ENV["SKIP"] && ENV["SKIP"].include?("artifacts") if ENV["SKIP"] && ENV["SKIP"].include?("artifacts")
@ -160,7 +160,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring artifacts ... ".color(:blue) $progress.puts "Restoring artifacts ... ".color(:blue)
Backup::Artifacts.new.restore Backup::Artifacts.new.restore
$progress.puts "done".color(:green) $progress.puts "done".color(:green)
@ -168,7 +168,7 @@ namespace :gitlab do
end end
namespace :pages do namespace :pages do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping pages ... ".color(:blue) $progress.puts "Dumping pages ... ".color(:blue)
if ENV["SKIP"] && ENV["SKIP"].include?("pages") if ENV["SKIP"] && ENV["SKIP"].include?("pages")
@ -179,7 +179,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring pages ... ".color(:blue) $progress.puts "Restoring pages ... ".color(:blue)
Backup::Pages.new.restore Backup::Pages.new.restore
$progress.puts "done".color(:green) $progress.puts "done".color(:green)
@ -187,7 +187,7 @@ namespace :gitlab do
end end
namespace :lfs do namespace :lfs do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping lfs objects ... ".color(:blue) $progress.puts "Dumping lfs objects ... ".color(:blue)
if ENV["SKIP"] && ENV["SKIP"].include?("lfs") if ENV["SKIP"] && ENV["SKIP"].include?("lfs")
@ -198,7 +198,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring lfs objects ... ".color(:blue) $progress.puts "Restoring lfs objects ... ".color(:blue)
Backup::Lfs.new.restore Backup::Lfs.new.restore
$progress.puts "done".color(:green) $progress.puts "done".color(:green)
@ -206,7 +206,7 @@ namespace :gitlab do
end end
namespace :registry do namespace :registry do
task create: :environment do task create: :gitlab_environment do
$progress.puts "Dumping container registry images ... ".color(:blue) $progress.puts "Dumping container registry images ... ".color(:blue)
if Gitlab.config.registry.enabled if Gitlab.config.registry.enabled
@ -221,7 +221,7 @@ namespace :gitlab do
end end
end end
task restore: :environment do task restore: :gitlab_environment do
$progress.puts "Restoring container registry images ... ".color(:blue) $progress.puts "Restoring container registry images ... ".color(:blue)
if Gitlab.config.registry.enabled if Gitlab.config.registry.enabled

View File

@ -1,7 +1,3 @@
# Temporary hack, until we migrate all checks to SystemCheck format
require 'system_check'
require 'system_check/helpers'
namespace :gitlab do namespace :gitlab do
desc 'GitLab | Check the configuration of GitLab and its environment' desc 'GitLab | Check the configuration of GitLab and its environment'
task check: %w{gitlab:gitlab_shell:check task check: %w{gitlab:gitlab_shell:check
@ -12,7 +8,7 @@ namespace :gitlab do
namespace :app do namespace :app do
desc 'GitLab | Check the configuration of the GitLab Rails app' desc 'GitLab | Check the configuration of the GitLab Rails app'
task check: :environment do task check: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
checks = [ checks = [
@ -43,7 +39,7 @@ namespace :gitlab do
namespace :gitlab_shell do namespace :gitlab_shell do
desc "GitLab | Check the configuration of GitLab Shell" desc "GitLab | Check the configuration of GitLab Shell"
task check: :environment do task check: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
start_checking "GitLab Shell" start_checking "GitLab Shell"
@ -251,7 +247,7 @@ namespace :gitlab do
namespace :sidekiq do namespace :sidekiq do
desc "GitLab | Check the configuration of Sidekiq" desc "GitLab | Check the configuration of Sidekiq"
task check: :environment do task check: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
start_checking "Sidekiq" start_checking "Sidekiq"
@ -310,7 +306,7 @@ namespace :gitlab do
namespace :incoming_email do namespace :incoming_email do
desc "GitLab | Check the configuration of Reply by email" desc "GitLab | Check the configuration of Reply by email"
task check: :environment do task check: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
if Gitlab.config.incoming_email.enabled if Gitlab.config.incoming_email.enabled
@ -333,7 +329,7 @@ namespace :gitlab do
end end
namespace :ldap do namespace :ldap do
task :check, [:limit] => :environment do |_, args| task :check, [:limit] => :gitlab_environment do |_, args|
# Only show up to 100 results because LDAP directories can be very big. # Only show up to 100 results because LDAP directories can be very big.
# This setting only affects the `rake gitlab:check` script. # This setting only affects the `rake gitlab:check` script.
args.with_defaults(limit: 100) args.with_defaults(limit: 100)
@ -389,7 +385,7 @@ namespace :gitlab do
namespace :repo do namespace :repo do
desc "GitLab | Check the integrity of the repositories managed by GitLab" desc "GitLab | Check the integrity of the repositories managed by GitLab"
task check: :environment do task check: :gitlab_environment do
puts "This task is deprecated. Please use gitlab:git:fsck instead".color(:red) puts "This task is deprecated. Please use gitlab:git:fsck instead".color(:red)
Rake::Task["gitlab:git:fsck"].execute Rake::Task["gitlab:git:fsck"].execute
end end
@ -397,7 +393,7 @@ namespace :gitlab do
namespace :orphans do namespace :orphans do
desc 'Gitlab | Check for orphaned namespaces and repositories' desc 'Gitlab | Check for orphaned namespaces and repositories'
task check: :environment do task check: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
checks = [ checks = [
SystemCheck::Orphans::NamespaceCheck, SystemCheck::Orphans::NamespaceCheck,
@ -408,7 +404,7 @@ namespace :gitlab do
end end
desc 'GitLab | Check for orphaned namespaces in the repositories path' desc 'GitLab | Check for orphaned namespaces in the repositories path'
task check_namespaces: :environment do task check_namespaces: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
checks = [SystemCheck::Orphans::NamespaceCheck] checks = [SystemCheck::Orphans::NamespaceCheck]
@ -416,7 +412,7 @@ namespace :gitlab do
end end
desc 'GitLab | Check for orphaned repositories in the repositories path' desc 'GitLab | Check for orphaned repositories in the repositories path'
task check_repositories: :environment do task check_repositories: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
checks = [SystemCheck::Orphans::RepositoryCheck] checks = [SystemCheck::Orphans::RepositoryCheck]
@ -426,7 +422,7 @@ namespace :gitlab do
namespace :user do namespace :user do
desc "GitLab | Check the integrity of a specific user's repositories" desc "GitLab | Check the integrity of a specific user's repositories"
task :check_repos, [:username] => :environment do |t, args| task :check_repos, [:username] => :gitlab_environment do |t, args|
username = args[:username] || prompt("Check repository integrity for username? ".color(:blue)) username = args[:username] || prompt("Check repository integrity for username? ".color(:blue))
user = User.find_by(username: username) user = User.find_by(username: username)
if user if user

View File

@ -5,7 +5,7 @@ namespace :gitlab do
HASHED_REPOSITORY_NAME = '@hashed'.freeze HASHED_REPOSITORY_NAME = '@hashed'.freeze
desc "GitLab | Cleanup | Clean namespaces" desc "GitLab | Cleanup | Clean namespaces"
task dirs: :environment do task dirs: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
remove_flag = ENV['REMOVE'] remove_flag = ENV['REMOVE']
@ -49,7 +49,7 @@ namespace :gitlab do
end end
desc "GitLab | Cleanup | Clean repositories" desc "GitLab | Cleanup | Clean repositories"
task repos: :environment do task repos: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
move_suffix = "+orphaned+#{Time.now.to_i}" move_suffix = "+orphaned+#{Time.now.to_i}"
@ -78,7 +78,7 @@ namespace :gitlab do
end end
desc "GitLab | Cleanup | Block users that have been removed in LDAP" desc "GitLab | Cleanup | Block users that have been removed in LDAP"
task block_removed_ldap_users: :environment do task block_removed_ldap_users: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
block_flag = ENV['BLOCK'] block_flag = ENV['BLOCK']
@ -109,7 +109,7 @@ namespace :gitlab do
# released. So likely this should only be run once on gitlab.com # released. So likely this should only be run once on gitlab.com
# Faulty refs are moved so they are kept around, else some features break. # Faulty refs are moved so they are kept around, else some features break.
desc 'GitLab | Cleanup | Remove faulty deployment refs' desc 'GitLab | Cleanup | Remove faulty deployment refs'
task move_faulty_deployment_refs: :environment do task move_faulty_deployment_refs: :gitlab_environment do
projects = Project.where(id: Deployment.select(:project_id).distinct) projects = Project.where(id: Deployment.select(:project_id).distinct)
projects.find_each do |project| projects.find_each do |project|

View File

@ -1,7 +1,7 @@
namespace :gitlab do namespace :gitlab do
namespace :git do namespace :git do
desc "GitLab | Git | Repack" desc "GitLab | Git | Repack"
task repack: :environment do task repack: :gitlab_environment do
failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} repack -a --quiet), "Repacking repo") failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} repack -a --quiet), "Repacking repo")
if failures.empty? if failures.empty?
puts "Done".color(:green) puts "Done".color(:green)
@ -11,7 +11,7 @@ namespace :gitlab do
end end
desc "GitLab | Git | Run garbage collection on all repos" desc "GitLab | Git | Run garbage collection on all repos"
task gc: :environment do task gc: :gitlab_environment do
failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} gc --auto --quiet), "Garbage Collecting") failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} gc --auto --quiet), "Garbage Collecting")
if failures.empty? if failures.empty?
puts "Done".color(:green) puts "Done".color(:green)
@ -21,7 +21,7 @@ namespace :gitlab do
end end
desc "GitLab | Git | Prune all repos" desc "GitLab | Git | Prune all repos"
task prune: :environment do task prune: :gitlab_environment do
failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} prune), "Git Prune") failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} prune), "Git Prune")
if failures.empty? if failures.empty?
puts "Done".color(:green) puts "Done".color(:green)
@ -31,7 +31,7 @@ namespace :gitlab do
end end
desc 'GitLab | Git | Check all repos integrity' desc 'GitLab | Git | Check all repos integrity'
task fsck: :environment do task fsck: :gitlab_environment do
failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} fsck --name-objects --no-progress), "Checking integrity") do |repo| failures = perform_git_cmd(%W(#{Gitlab.config.git.bin_path} fsck --name-objects --no-progress), "Checking integrity") do |repo|
check_config_lock(repo) check_config_lock(repo)
check_ref_locks(repo) check_ref_locks(repo)

View File

@ -1,7 +1,7 @@
namespace :gitlab do namespace :gitlab do
namespace :gitaly do namespace :gitaly do
desc "GitLab | Install or upgrade gitaly" desc "GitLab | Install or upgrade gitaly"
task :install, [:dir, :repo] => :environment do |t, args| task :install, [:dir, :repo] => :gitlab_environment do |t, args|
require 'toml' require 'toml'
warn_user_is_not_gitlab warn_user_is_not_gitlab

View File

@ -1,8 +1,6 @@
require 'tasks/gitlab/task_helpers'
# Prevent StateMachine warnings from outputting during a cron task # Prevent StateMachine warnings from outputting during a cron task
StateMachines::Machine.ignore_method_conflicts = true if ENV['CRON'] StateMachines::Machine.ignore_method_conflicts = true if ENV['CRON']
namespace :gitlab do task gitlab_environment: :environment do
extend SystemCheck::Helpers extend SystemCheck::Helpers
end end

View File

@ -1,7 +1,7 @@
namespace :gitlab do namespace :gitlab do
namespace :env do namespace :env do
desc "GitLab | Show information about GitLab and its environment" desc "GitLab | Show information about GitLab and its environment"
task info: :environment do task info: :gitlab_environment do
# check if there is an RVM environment # check if there is an RVM environment
rvm_version = run_and_match(%w(rvm --version), /[\d\.]+/).try(:to_s) rvm_version = run_and_match(%w(rvm --version), /[\d\.]+/).try(:to_s)
# check Ruby version # check Ruby version

View File

@ -1,6 +1,6 @@
namespace :gitlab do namespace :gitlab do
desc "GitLab | Setup production application" desc "GitLab | Setup production application"
task setup: :environment do task setup: :gitlab_environment do
setup_db setup_db
end end

View File

@ -1,7 +1,7 @@
namespace :gitlab do namespace :gitlab do
namespace :shell do namespace :shell do
desc "GitLab | Install or upgrade gitlab-shell" desc "GitLab | Install or upgrade gitlab-shell"
task :install, [:repo] => :environment do |t, args| task :install, [:repo] => :gitlab_environment do |t, args|
warn_user_is_not_gitlab warn_user_is_not_gitlab
default_version = Gitlab::Shell.version_required default_version = Gitlab::Shell.version_required
@ -58,12 +58,12 @@ namespace :gitlab do
end end
desc "GitLab | Setup gitlab-shell" desc "GitLab | Setup gitlab-shell"
task setup: :environment do task setup: :gitlab_environment do
setup setup
end end
desc "GitLab | Build missing projects" desc "GitLab | Build missing projects"
task build_missing_projects: :environment do task build_missing_projects: :gitlab_environment do
Project.find_each(batch_size: 1000) do |project| Project.find_each(batch_size: 1000) do |project|
path_to_repo = project.repository.path_to_repo path_to_repo = project.repository.path_to_repo
if File.exist?(path_to_repo) if File.exist?(path_to_repo)
@ -80,7 +80,7 @@ namespace :gitlab do
end end
desc 'Create or repair repository hooks symlink' desc 'Create or repair repository hooks symlink'
task create_hooks: :environment do task create_hooks: :gitlab_environment do
warn_user_is_not_gitlab warn_user_is_not_gitlab
puts 'Creating/Repairing hooks symlinks for all repositories' puts 'Creating/Repairing hooks symlinks for all repositories'

View File

@ -1,7 +1,7 @@
namespace :gitlab do namespace :gitlab do
namespace :workhorse do namespace :workhorse do
desc "GitLab | Install or upgrade gitlab-workhorse" desc "GitLab | Install or upgrade gitlab-workhorse"
task :install, [:dir, :repo] => :environment do |t, args| task :install, [:dir, :repo] => :gitlab_environment do |t, args|
warn_user_is_not_gitlab warn_user_is_not_gitlab
unless args.dir.present? unless args.dir.present?

View File

@ -1,5 +1,4 @@
require 'spec_helper' require 'spec_helper'
require 'tasks/gitlab/task_helpers'
class TestHelpersTest class TestHelpersTest
include Gitlab::TaskHelpers include Gitlab::TaskHelpers