Remove broken git storage for testing
Broken storage used to be used to test situations where the Git storage wasn't being reached. These days we can just mock the Gitaly response. But given the broken storage is removed now, Gitaly can take over control of the storage being reachable. If it's not, Gitaly won't boot. That's nice for situations where a disk wasn't mounted for instance. Gitaly MR: https://gitlab.com/gitlab-org/gitaly/merge_requests/675
This commit is contained in:
parent
10bb8297eb
commit
08cdf65b9e
6 changed files with 7 additions and 24 deletions
|
@ -772,9 +772,6 @@ test:
|
|||
default:
|
||||
path: tmp/tests/repositories/
|
||||
gitaly_address: unix:tmp/tests/gitaly/gitaly.socket
|
||||
broken:
|
||||
path: tmp/tests/non-existent-repositories
|
||||
gitaly_address: unix:tmp/tests/gitaly/gitaly.socket
|
||||
|
||||
gitaly:
|
||||
client_path: tmp/tests/gitaly
|
||||
|
|
|
@ -32,7 +32,10 @@ module Gitlab
|
|||
end
|
||||
|
||||
if Rails.env.test?
|
||||
storages << { name: 'test_second_storage', path: Rails.root.join('tmp', 'tests', 'second_storage').to_s }
|
||||
storage_path = Rails.root.join('tmp', 'tests', 'second_storage').to_s
|
||||
|
||||
FileUtils.mkdir(storage_path) unless File.exist?(storage_path)
|
||||
storages << { name: 'test_second_storage', path: storage_path }
|
||||
end
|
||||
|
||||
config = { socket_path: address.sub(/\Aunix:/, ''), storage: storages }
|
||||
|
|
|
@ -26,9 +26,7 @@ describe Gitaly::Server do
|
|||
end
|
||||
end
|
||||
|
||||
context 'when the storage is not readable' do
|
||||
let(:server) { described_class.new('broken') }
|
||||
|
||||
context 'when the storage is not readable', :broken_storage do
|
||||
it 'returns false' do
|
||||
expect(server).not_to be_readable
|
||||
end
|
||||
|
@ -42,9 +40,7 @@ describe Gitaly::Server do
|
|||
end
|
||||
end
|
||||
|
||||
context 'when the storage is not writeable' do
|
||||
let(:server) { described_class.new('broken') }
|
||||
|
||||
context 'when the storage is not writeable', :broken_storage do
|
||||
it 'returns false' do
|
||||
expect(server).not_to be_writeable
|
||||
end
|
||||
|
|
|
@ -70,7 +70,6 @@ module TestEnv
|
|||
|
||||
TMP_TEST_PATH = Rails.root.join('tmp', 'tests', '**')
|
||||
REPOS_STORAGE = 'default'.freeze
|
||||
BROKEN_STORAGE = 'broken'.freeze
|
||||
|
||||
# Test environment
|
||||
#
|
||||
|
@ -159,10 +158,6 @@ module TestEnv
|
|||
version: Gitlab::GitalyClient.expected_server_version,
|
||||
task: "gitlab:gitaly:install[#{gitaly_dir},#{repos_path}]") do
|
||||
|
||||
# Re-create config, to specify the broken storage path
|
||||
storage_paths = { 'default' => repos_path, 'broken' => broken_path }
|
||||
Gitlab::SetupHelper.create_gitaly_configuration(gitaly_dir, storage_paths, force: true)
|
||||
|
||||
start_gitaly(gitaly_dir)
|
||||
end
|
||||
end
|
||||
|
@ -257,10 +252,6 @@ module TestEnv
|
|||
@repos_path ||= Gitlab.config.repositories.storages[REPOS_STORAGE].legacy_disk_path
|
||||
end
|
||||
|
||||
def broken_path
|
||||
@broken_path ||= Gitlab.config.repositories.storages[BROKEN_STORAGE].legacy_disk_path
|
||||
end
|
||||
|
||||
def backup_path
|
||||
Gitlab.config.backup.path
|
||||
end
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
RSpec.configure do |config|
|
||||
config.before(:all, :broken_storage) do
|
||||
FileUtils.rm_rf Gitlab.config.repositories.storages.broken.legacy_disk_path
|
||||
end
|
||||
|
||||
config.before(:each, :broken_storage) do
|
||||
allow(Gitlab::GitalyClient).to receive(:call) do
|
||||
raise GRPC::Unavailable.new('Gitaly broken in this spec')
|
||||
|
|
|
@ -51,7 +51,7 @@ describe RepositoryCheck::BatchWorker do
|
|||
|
||||
it 'does nothing when shard is unhealthy' do
|
||||
shard_name = 'broken'
|
||||
create(:project, created_at: 1.week.ago, repository_storage: shard_name)
|
||||
create(:project, :broken_storage, created_at: 1.week.ago)
|
||||
|
||||
expect(subject.perform(shard_name)).to eq(nil)
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue