bbccd31057
Before this change, trying to setup dev environment could be tried without having at least one Gitaly running. Cloning the repositories would fail, but not stop the setup. Given this would lead to an inconsistent state, a check was added if we could connect to the server. Output when it fails: ``` $ rake dev:setup Failed to connect to Gitaly... Error: 14:Connect Failed ```
36 lines
966 B
Ruby
36 lines
966 B
Ruby
namespace :gitlab do
|
|
desc "GitLab | Setup production application"
|
|
task setup: :gitlab_environment do
|
|
check_gitaly_connection
|
|
setup_db
|
|
end
|
|
|
|
def check_gitaly_connection
|
|
Gitlab.config.repositories.storages.each do |name, _details|
|
|
Gitlab::GitalyClient::ServerService.new(name).info
|
|
end
|
|
rescue GRPC::Unavailable => ex
|
|
puts "Failed to connect to Gitaly...".color(:red)
|
|
puts "Error: #{ex}"
|
|
exit 1
|
|
end
|
|
|
|
def setup_db
|
|
warn_user_is_not_gitlab
|
|
|
|
unless ENV['force'] == 'yes'
|
|
puts "This will create the necessary database tables and seed the database."
|
|
puts "You will lose any previous data stored in the database."
|
|
ask_to_continue
|
|
puts ""
|
|
end
|
|
|
|
Rake::Task["db:reset"].invoke
|
|
Rake::Task["add_limits_mysql"].invoke
|
|
Rake::Task["setup_postgresql"].invoke
|
|
Rake::Task["db:seed_fu"].invoke
|
|
rescue Gitlab::TaskAbortedByUserError
|
|
puts "Quitting...".color(:red)
|
|
exit 1
|
|
end
|
|
end
|