Commit 065ab3e5 authored by Ciro Santilli's avatar Ciro Santilli

Only clone GitLab Shell on tests if necessary.

parent b43e918a
......@@ -22,7 +22,10 @@ namespace :gitlab do
# Make sure we're on the right tag
Dir.chdir(target_dir) do
sh "git fetch origin && git reset --hard $(git describe #{args.tag} || git describe origin/#{args.tag})"
# First try to checkout without fetching
# to avoid stalling tests if the Internet is down.
reset = "git reset --hard $(git describe #{args.tag} || git describe origin/#{args.tag})"
sh "#{reset} || git fetch origin && #{reset}"
redis_url = URI.parse(ENV['REDIS_URL'] || "redis://localhost:6379")
......
......@@ -17,7 +17,11 @@ module TestEnv
tmp_test_path = Rails.root.join('tmp', 'tests')
if File.directory?(tmp_test_path)
FileUtils.rm_r(tmp_test_path)
Dir.entries(tmp_test_path).each do |entry|
unless ['.', '..', 'gitlab-shell'].include?(entry)
FileUtils.rm_r(File.join(tmp_test_path, entry))
end
end
end
FileUtils.mkdir_p(tmp_test_path)
......@@ -38,9 +42,7 @@ module TestEnv
end
def setup_gitlab_shell
unless File.directory?(Gitlab.config.gitlab_shell.path)
%x[rake gitlab:shell:install]
end
`rake gitlab:shell:install`
end
def setup_factory_repo
......
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