Commit 8046b697 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Merge branch 'remove_unecessary_rake_task' into 'master'

Remove gitlab:env:check task.

Rake task that checks for git user git settings is a leftover from early days.

It is not being used by the web editor(and web editor is also being redone atm) so this rake task just causes confusion.

Adresses internal issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2362

See merge request !758
parents e414463d 7044d649
...@@ -241,10 +241,7 @@ We recommend using a PostgreSQL database. For MySQL check [MySQL setup guide](da ...@@ -241,10 +241,7 @@ We recommend using a PostgreSQL database. For MySQL check [MySQL setup guide](da
# Copy the example Rack attack config # Copy the example Rack attack config
sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb
# Configure Git global settings for git user, useful when editing via web # Configure Git global settings for git user, used when editing via web editor
# Edit user.email according to what is set in gitlab.yml
sudo -u git -H git config --global user.name "GitLab"
sudo -u git -H git config --global user.email "example@example.com"
sudo -u git -H git config --global core.autocrlf input sudo -u git -H git config --global core.autocrlf input
# Configure Redis connection settings # Configure Redis connection settings
......
...@@ -47,7 +47,6 @@ Git: /usr/bin/git ...@@ -47,7 +47,6 @@ Git: /usr/bin/git
Runs the following rake tasks: Runs the following rake tasks:
- `gitlab:env:check`
- `gitlab:gitlab_shell:check` - `gitlab:gitlab_shell:check`
- `gitlab:sidekiq:check` - `gitlab:sidekiq:check`
- `gitlab:app:check` - `gitlab:app:check`
......
namespace :gitlab do namespace :gitlab do
desc "GITLAB | Check the configuration of GitLab and its environment" desc "GITLAB | Check the configuration of GitLab and its environment"
task check: %w{gitlab:env:check task check: %w{gitlab:gitlab_shell:check
gitlab:gitlab_shell:check
gitlab:sidekiq:check gitlab:sidekiq:check
gitlab:ldap:check gitlab:ldap:check
gitlab:app:check} gitlab:app:check}
...@@ -14,6 +13,7 @@ namespace :gitlab do ...@@ -14,6 +13,7 @@ namespace :gitlab do
warn_user_is_not_gitlab warn_user_is_not_gitlab
start_checking "GitLab" start_checking "GitLab"
check_git_config
check_database_config_exists check_database_config_exists
check_database_is_not_sqlite check_database_is_not_sqlite
check_migrations_are_up check_migrations_are_up
...@@ -38,6 +38,36 @@ namespace :gitlab do ...@@ -38,6 +38,36 @@ namespace :gitlab do
# Checks # 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 def check_database_config_exists
print "Database config exists? ... " print "Database config exists? ... "
...@@ -298,58 +328,6 @@ namespace :gitlab do ...@@ -298,58 +328,6 @@ namespace :gitlab do
end end
end end
namespace :env do
desc "GITLAB | Check the configuration of the environment"
task check: :environment do
warn_user_is_not_gitlab
start_checking "Environment"
check_gitlab_git_config
finished_checking "Environment"
end
# Checks
########################
def check_gitlab_git_config
print "Git configured for #{gitlab_user} user? ... "
options = {
"user.name" => "GitLab",
"user.email" => Gitlab.config.gitlab.email_from,
"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 user.name \"#{options["user.name"]}\""),
sudo_gitlab("\"#{Gitlab.config.git.bin_path}\" config --global user.email \"#{options["user.email"]}\""),
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
end
namespace :gitlab_shell do namespace :gitlab_shell do
desc "GITLAB | Check the configuration of GitLab Shell" desc "GITLAB | Check the configuration of GitLab Shell"
task check: :environment do task check: :environment do
......
...@@ -118,9 +118,9 @@ namespace :gitlab do ...@@ -118,9 +118,9 @@ namespace :gitlab do
# Returns true if all subcommands were successfull (according to their exit code) # Returns true if all subcommands were successfull (according to their exit code)
# Returns false if any or all subcommands failed. # Returns false if any or all subcommands failed.
def auto_fix_git_config(options) 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| 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 end
command_success.all? command_success.all?
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment