Commit f9b821f0 authored by Shinya Maeda's avatar Shinya Maeda

Fix specs for exclusive lease

parent 5a1ee0c3
...@@ -47,6 +47,6 @@ module ExclusiveLeaseGuard ...@@ -47,6 +47,6 @@ module ExclusiveLeaseGuard
end end
def log_error(message, extra_args = {}) def log_error(message, extra_args = {})
logger.error(message) Rails.logger.error(message)
end end
end end
...@@ -234,20 +234,29 @@ shared_examples_for 'common trace features' do ...@@ -234,20 +234,29 @@ shared_examples_for 'common trace features' do
context 'when build status is success' do context 'when build status is success' do
let!(:build) { create(:ci_build, :success, :trace_live) } let!(:build) { create(:ci_build, :success, :trace_live) }
it 'archives a trace' do it 'does not have an archived trace yet' do
subject expect(build.job_artifacts_trace).to be_nil
expect(build.job_artifacts_trace).to be_exist
end end
context 'when anothe process had already been archiving', :clean_gitlab_redis_shared_state do context 'when archives' do
before do it 'has an archived trace' do
Gitlab::ExclusiveLease.new("trace:archive:#{trace.job.id}", timeout: 1.hour).try_obtain subject
end
it 'prevents multiple archiving' do
build.reload build.reload
expect(build.job_artifacts_trace).to be_nil expect(build.job_artifacts_trace).to be_exist
end
context 'when anothe process had already been archiving', :clean_gitlab_redis_shared_state do
before do
Gitlab::ExclusiveLease.new("trace:archive:#{trace.job.id}", timeout: 1.hour).try_obtain
end
it 'prevents to archive concurently' do
subject
build.reload
expect(build.job_artifacts_trace).to be_nil
end
end end
end end
end end
......
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