Merge pull request #2803 from donnykurnia/fix-2776
Improve gitlab:check. Fix 2776
This commit is contained in:
commit
72e2a49819
|
@ -780,21 +780,25 @@ namespace :gitlab do
|
||||||
Project.find_each(batch_size: 100) do |project|
|
Project.find_each(batch_size: 100) do |project|
|
||||||
print "#{project.name_with_namespace.yellow} ... "
|
print "#{project.name_with_namespace.yellow} ... "
|
||||||
|
|
||||||
correct_options = options.map do |name, value|
|
if project.empty_repo?
|
||||||
run("git --git-dir=\"#{project.repository.path_to_repo}\" config --get #{name}").try(:chomp) == value
|
puts "repository is empty".magenta
|
||||||
end
|
|
||||||
|
|
||||||
if correct_options.all?
|
|
||||||
puts "ok".green
|
|
||||||
else
|
else
|
||||||
puts "wrong or missing".red
|
correct_options = options.map do |name, value|
|
||||||
try_fixing_it(
|
run("git --git-dir=\"#{project.repository.path_to_repo}\" config --get #{name}").try(:chomp) == value
|
||||||
sudo_gitlab("bundle exec rake gitlab:gitolite:update_repos")
|
end
|
||||||
)
|
|
||||||
for_more_information(
|
if correct_options.all?
|
||||||
"doc/raketasks/maintenance.md"
|
puts "ok".green
|
||||||
)
|
else
|
||||||
fix_and_rerun
|
puts "wrong or missing".red
|
||||||
|
try_fixing_it(
|
||||||
|
sudo_gitlab("bundle exec rake gitlab:gitolite:update_repos")
|
||||||
|
)
|
||||||
|
for_more_information(
|
||||||
|
"doc/raketasks/maintenance.md"
|
||||||
|
)
|
||||||
|
fix_and_rerun
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -820,32 +824,37 @@ namespace :gitlab do
|
||||||
|
|
||||||
Project.find_each(batch_size: 100) do |project|
|
Project.find_each(batch_size: 100) do |project|
|
||||||
print "#{project.name_with_namespace.yellow} ... "
|
print "#{project.name_with_namespace.yellow} ... "
|
||||||
project_hook_file = File.join(project.repository.path_to_repo, "hooks", hook_file)
|
|
||||||
|
|
||||||
unless File.exists?(project_hook_file)
|
if project.empty_repo?
|
||||||
puts "missing".red
|
puts "repository is empty".magenta
|
||||||
try_fixing_it(
|
|
||||||
"sudo -u #{gitolite_ssh_user} ln -sf #{gitolite_hook_file} #{project_hook_file}"
|
|
||||||
)
|
|
||||||
for_more_information(
|
|
||||||
"lib/support/rewrite-hooks.sh"
|
|
||||||
)
|
|
||||||
fix_and_rerun
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
if File.lstat(project_hook_file).symlink? &&
|
|
||||||
File.realpath(project_hook_file) == File.realpath(gitolite_hook_file)
|
|
||||||
puts "ok".green
|
|
||||||
else
|
else
|
||||||
puts "not a link to Gitolite's hook".red
|
project_hook_file = File.join(project.repository.path_to_repo, "hooks", hook_file)
|
||||||
try_fixing_it(
|
|
||||||
"sudo -u #{gitolite_ssh_user} ln -sf #{gitolite_hook_file} #{project_hook_file}"
|
unless File.exists?(project_hook_file)
|
||||||
)
|
puts "missing".red
|
||||||
for_more_information(
|
try_fixing_it(
|
||||||
"lib/support/rewrite-hooks.sh"
|
"sudo -u #{gitolite_ssh_user} ln -sf #{gitolite_hook_file} #{project_hook_file}"
|
||||||
)
|
)
|
||||||
fix_and_rerun
|
for_more_information(
|
||||||
|
"lib/support/rewrite-hooks.sh"
|
||||||
|
)
|
||||||
|
fix_and_rerun
|
||||||
|
next
|
||||||
|
end
|
||||||
|
|
||||||
|
if File.lstat(project_hook_file).symlink? &&
|
||||||
|
File.realpath(project_hook_file) == File.realpath(gitolite_hook_file)
|
||||||
|
puts "ok".green
|
||||||
|
else
|
||||||
|
puts "not a link to Gitolite's hook".red
|
||||||
|
try_fixing_it(
|
||||||
|
"sudo -u #{gitolite_ssh_user} ln -sf #{gitolite_hook_file} #{project_hook_file}"
|
||||||
|
)
|
||||||
|
for_more_information(
|
||||||
|
"lib/support/rewrite-hooks.sh"
|
||||||
|
)
|
||||||
|
fix_and_rerun
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue