Add connection_data method to Gitaly client

Backport of https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/7434
This commit is contained in:
Valery Sizov 2019-01-25 14:10:04 +02:00
parent 3a60173738
commit e3cacb95a8
2 changed files with 14 additions and 1 deletions

View file

@ -126,7 +126,11 @@ module Gitlab
end
def self.address_metadata(storage)
Base64.strict_encode64(JSON.dump({ storage => { 'address' => address(storage), 'token' => token(storage) } }))
Base64.strict_encode64(JSON.dump(storage => connection_data(storage)))
end
def self.connection_data(storage)
{ 'address' => address(storage), 'token' => token(storage) }
end
# All Gitaly RPC call sites should use GitalyClient.call. This method

View file

@ -119,6 +119,15 @@ describe Gitlab::GitalyClient do
end
end
describe '.connection_data' do
it 'returns connection data' do
address = 'tcp://localhost:9876'
stub_repos_storages address
expect(described_class.connection_data('default')).to eq({ 'address' => address, 'token' => 'secret' })
end
end
describe 'allow_n_plus_1_calls' do
context 'when RequestStore is enabled', :request_store do
it 'returns the result of the allow_n_plus_1_calls block' do