From 1dce0a270e70c40eecb6fe5ef53283e8cc763aea Mon Sep 17 00:00:00 2001 From: Jacob Vosmaer Date: Tue, 5 Sep 2017 15:37:48 +0200 Subject: Wait for gitaly to boot during tests --- spec/support/test_env.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/spec/support/test_env.rb b/spec/support/test_env.rb index 290ded3ff7e..71b9deeabc3 100644 --- a/spec/support/test_env.rb +++ b/spec/support/test_env.rb @@ -176,6 +176,24 @@ module TestEnv spawn_script = Rails.root.join('scripts/gitaly-test-spawn').to_s @gitaly_pid = Bundler.with_original_env { IO.popen([spawn_script], &:read).to_i } + wait_gitaly + end + + def wait_gitaly + sleep_time = 10 + sleep_interval = 0.1 + socket = Gitlab::GitalyClient.address('default').sub('unix:', '') + + Integer(sleep_time / sleep_interval).times do + begin + Socket.unix(socket) + return + rescue + sleep sleep_interval + end + end + + raise "could not connect to gitaly at #{socket.inspect} after #{sleep_time} seconds" end def stop_gitaly -- cgit v1.2.1