Merge pull request #7823 from cirosantilli/test-fetch-shell

Only clone GitLab Shell on tests if necessary.
This commit is contained in:
Dmitriy Zaporozhets 2014-09-24 12:58:10 +03:00
commit 28b6f09fcc
2 changed files with 10 additions and 5 deletions

View file

@ -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}"
config = {
user: user,

View file

@ -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