summaryrefslogtreecommitdiff
path: root/lib/system_check/app/projects_have_namespace_check.rb
diff options
context:
space:
mode:
authorGabriel Mazetto <brodock@gmail.com>2017-05-25 16:16:25 +0200
committerGabriel Mazetto <brodock@gmail.com>2017-05-31 14:33:03 +0200
commit13e88c93956b5b350515b919ef7217a3dccf28ff (patch)
tree7ed964642da19c553697a7c737e11f55d058829e /lib/system_check/app/projects_have_namespace_check.rb
parent45378bdd3aae75cb155677d91be61e3d39f5f515 (diff)
downloadgitlab-ce-13e88c93956b5b350515b919ef7217a3dccf28ff.tar.gz
Refactor gitlab:app:checks to use SystemCheck
Diffstat (limited to 'lib/system_check/app/projects_have_namespace_check.rb')
-rw-r--r--lib/system_check/app/projects_have_namespace_check.rb37
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/system_check/app/projects_have_namespace_check.rb b/lib/system_check/app/projects_have_namespace_check.rb
new file mode 100644
index 00000000000..d21ae225b0b
--- /dev/null
+++ b/lib/system_check/app/projects_have_namespace_check.rb
@@ -0,0 +1,37 @@
+module SystemCheck
+ module App
+ class ProjectsHaveNamespaceCheck < SystemCheck::BaseCheck
+ set_name 'projects have namespace: '
+ set_skip_reason "can't check, you have no projects"
+
+ def skip?
+ !Project.exists?
+ end
+
+ def multi_check
+ puts ''
+
+ Project.find_each(batch_size: 100) do |project|
+ print sanitized_message(project)
+
+ if project.namespace
+ puts 'yes'.color(:green)
+ else
+ puts 'no'.color(:red)
+ show_error
+ end
+ end
+ end
+
+ def show_error
+ try_fixing_it(
+ "Migrate global projects"
+ )
+ for_more_information(
+ "doc/update/5.4-to-6.0.md in section \"#global-projects\""
+ )
+ fix_and_rerun
+ end
+ end
+ end
+end