Commit c4d97e34 authored by Douglas Barbosa Alexandre's avatar Douglas Barbosa Alexandre

Merge branch 'pks-gitaly-fix-force-routing' into 'master'

Fix force-routing to Gitaly primary with empty hook env

See merge request gitlab-org/gitlab!54317
parents 31697d17 fa1ddf5c
---
title: Fix force-routing to Gitaly primary with empty hook env
merge_request: 54317
author:
type: fixed
...@@ -248,6 +248,8 @@ module Gitlab ...@@ -248,6 +248,8 @@ module Gitlab
return {} unless Gitlab::SafeRequestStore[:gitlab_git_env] return {} unless Gitlab::SafeRequestStore[:gitlab_git_env]
return {} if Gitlab::SafeRequestStore[:gitlab_git_env].empty?
{ 'gitaly-route-repository-accessor-policy' => 'primary-only' } { 'gitaly-route-repository-accessor-policy' => 'primary-only' }
end end
private_class_method :route_to_primary private_class_method :route_to_primary
......
...@@ -305,9 +305,21 @@ RSpec.describe Gitlab::GitalyClient do ...@@ -305,9 +305,21 @@ RSpec.describe Gitlab::GitalyClient do
end end
end end
context 'when RequestStore is enabled with git_env', :request_store do context 'when RequestStore is enabled with empty git_env', :request_store do
before do before do
Gitlab::SafeRequestStore[:gitlab_git_env] = true Gitlab::SafeRequestStore[:gitlab_git_env] = {}
end
it 'disables force-routing to primary' do
expect(described_class.request_kwargs('default', timeout: 1)[:metadata][policy]).to be_nil
end
end
context 'when RequestStore is enabled with populated git_env', :request_store do
before do
Gitlab::SafeRequestStore[:gitlab_git_env] = {
"GIT_OBJECT_DIRECTORY_RELATIVE" => "foo/bar"
}
end end
it 'enables force-routing to primary' do it 'enables force-routing to primary' do
......
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