Diasgnostic task for gitlab
This commit is contained in:
parent
51f7d94991
commit
9988282e84
58
lib/tasks/gitlab_status.rake
Normal file
58
lib/tasks/gitlab_status.rake
Normal file
|
@ -0,0 +1,58 @@
|
|||
desc "Check gitlab installation status"
|
||||
task :gitlab_status => :environment do
|
||||
puts "Starting diagnostic"
|
||||
|
||||
print "config/database.yml............"
|
||||
if File.exists?(File.join Rails.root, "config", "database.yml")
|
||||
puts "exists".green
|
||||
else
|
||||
puts "missing".red
|
||||
return
|
||||
end
|
||||
|
||||
print "config/gitlab.yml............"
|
||||
if File.exists?(File.join Rails.root, "config", "gitlab.yml")
|
||||
puts "exists".green
|
||||
else
|
||||
puts "missing".red
|
||||
return
|
||||
end
|
||||
|
||||
GIT_HOST = YAML.load_file("#{Rails.root}/config/gitlab.yml")["git_host"]
|
||||
print "/home/git/repositories/............"
|
||||
if File.exists?(GIT_HOST['base_path'])
|
||||
puts "exists".green
|
||||
else
|
||||
puts "missing".red
|
||||
return
|
||||
end
|
||||
|
||||
print "/home/git/repositories/ is writable?............"
|
||||
if File.stat(GIT_HOST['base_path']).writable?
|
||||
puts "YES".green
|
||||
else
|
||||
puts "NO".red
|
||||
return
|
||||
end
|
||||
|
||||
begin
|
||||
`git clone #{GIT_HOST["admin_uri"]} /tmp/gitolite_gitlab_test`
|
||||
FileUtils.rm_rf("/tmp/gitolite_gitlab_test")
|
||||
print "Can clone gitolite-admin?............"
|
||||
puts "YES".green
|
||||
rescue
|
||||
print "Can clone gitolite-admin?............"
|
||||
puts "NO".red
|
||||
return
|
||||
end
|
||||
|
||||
print "UMASK for .gitolite.rc is 0007? ............"
|
||||
unless open("#{GIT_HOST['base_path']}/../.gitolite.rc").grep(/REPO_UMASK = 0007/).empty?
|
||||
puts "YES".green
|
||||
else
|
||||
puts "NO".red
|
||||
return
|
||||
end
|
||||
|
||||
puts "\nFinished"
|
||||
end
|
Loading…
Reference in a new issue