Add autocrlf back to installation docs, add a check for it.
This commit is contained in:
parent
5f7d6c7d74
commit
7044d649a3
|
@ -241,6 +241,9 @@ We recommend using a PostgreSQL database. For MySQL check [MySQL setup guide](da
|
|||
# Copy the example Rack attack config
|
||||
sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb
|
||||
|
||||
# Configure Git global settings for git user, used when editing via web editor
|
||||
sudo -u git -H git config --global core.autocrlf input
|
||||
|
||||
# Configure Redis connection settings
|
||||
sudo -u git -H cp config/resque.yml.example config/resque.yml
|
||||
|
||||
|
|
|
@ -13,6 +13,7 @@ namespace :gitlab do
|
|||
warn_user_is_not_gitlab
|
||||
start_checking "GitLab"
|
||||
|
||||
check_git_config
|
||||
check_database_config_exists
|
||||
check_database_is_not_sqlite
|
||||
check_migrations_are_up
|
||||
|
@ -37,6 +38,36 @@ namespace :gitlab do
|
|||
# Checks
|
||||
########################
|
||||
|
||||
def check_git_config
|
||||
print "Git configured with autocrlf=input? ... "
|
||||
|
||||
options = {
|
||||
"core.autocrlf" => "input"
|
||||
}
|
||||
|
||||
correct_options = options.map do |name, value|
|
||||
run(%W(#{Gitlab.config.git.bin_path} config --global --get #{name})).try(:squish) == value
|
||||
end
|
||||
|
||||
if correct_options.all?
|
||||
puts "yes".green
|
||||
else
|
||||
print "Trying to fix Git error automatically. ..."
|
||||
|
||||
if auto_fix_git_config(options)
|
||||
puts "Success".green
|
||||
else
|
||||
puts "Failed".red
|
||||
try_fixing_it(
|
||||
sudo_gitlab("\"#{Gitlab.config.git.bin_path}\" config --global core.autocrlf \"#{options["core.autocrlf"]}\"")
|
||||
)
|
||||
for_more_information(
|
||||
see_installation_guide_section "GitLab"
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def check_database_config_exists
|
||||
print "Database config exists? ... "
|
||||
|
||||
|
|
|
@ -118,9 +118,9 @@ namespace :gitlab do
|
|||
# Returns true if all subcommands were successfull (according to their exit code)
|
||||
# Returns false if any or all subcommands failed.
|
||||
def auto_fix_git_config(options)
|
||||
if !@warned_user_not_gitlab && options['user.email'] != 'example@example.com' # default email should be overridden?
|
||||
if !@warned_user_not_gitlab
|
||||
command_success = options.map do |name, value|
|
||||
system(%W(#{Gitlab.config.git.bin_path} config --global #{name} #{value}))
|
||||
system(*%W(#{Gitlab.config.git.bin_path} config --global #{name} #{value}))
|
||||
end
|
||||
|
||||
command_success.all?
|
||||
|
|
Loading…
Reference in New Issue