Commit b5f116f08bfd02f87b819411f89d93c711411c90
1 parent
b7314a16
Exists in
master
and in
4 other branches
Add a check whether repos_path is a symlink
Showing
2 changed files
with
22 additions
and
0 deletions
Show diff stats
config/gitlab.yml.example
@@ -92,6 +92,7 @@ backup: | @@ -92,6 +92,7 @@ backup: | ||
92 | ## Gitolite settings | 92 | ## Gitolite settings |
93 | gitolite: | 93 | gitolite: |
94 | admin_uri: git@localhost:gitolite-admin | 94 | admin_uri: git@localhost:gitolite-admin |
95 | + # repos_path must not be a symlink | ||
95 | repos_path: /home/git/repositories/ | 96 | repos_path: /home/git/repositories/ |
96 | hooks_path: /home/git/.gitolite/hooks/ | 97 | hooks_path: /home/git/.gitolite/hooks/ |
97 | admin_key: gitlab | 98 | admin_key: gitlab |
lib/tasks/gitlab/check.rake
@@ -398,6 +398,7 @@ namespace :gitlab do | @@ -398,6 +398,7 @@ namespace :gitlab do | ||
398 | check_dot_gitolite_user_and_group | 398 | check_dot_gitolite_user_and_group |
399 | check_dot_gitolite_permissions | 399 | check_dot_gitolite_permissions |
400 | check_repo_base_exists | 400 | check_repo_base_exists |
401 | + check_repo_base_is_not_symlink | ||
401 | check_repo_base_user_and_group | 402 | check_repo_base_user_and_group |
402 | check_repo_base_permissions | 403 | check_repo_base_permissions |
403 | check_can_clone_gitolite_admin | 404 | check_can_clone_gitolite_admin |
@@ -692,6 +693,26 @@ namespace :gitlab do | @@ -692,6 +693,26 @@ namespace :gitlab do | ||
692 | end | 693 | end |
693 | end | 694 | end |
694 | 695 | ||
696 | + def check_repo_base_is_not_symlink | ||
697 | + print "Repo base directory is a symlink? ... " | ||
698 | + | ||
699 | + repo_base_path = Gitlab.config.gitolite.repos_path | ||
700 | + unless File.exists?(repo_base_path) | ||
701 | + puts "can't check because of previous errors".magenta | ||
702 | + return | ||
703 | + end | ||
704 | + | ||
705 | + unless File.symlink?(repo_base_path) | ||
706 | + puts "no".green | ||
707 | + else | ||
708 | + puts "yes".red | ||
709 | + try_fixing_it( | ||
710 | + "Make sure it's set to the real directory in config/gitlab.yml" | ||
711 | + ) | ||
712 | + fix_and_rerun | ||
713 | + end | ||
714 | + end | ||
715 | + | ||
695 | def check_repo_base_permissions | 716 | def check_repo_base_permissions |
696 | print "Repo base access is drwsrws---? ... " | 717 | print "Repo base access is drwsrws---? ... " |
697 | 718 |