Define Trace::ArchiveError to make it explit as an error
This commit is contained in:
parent
481d0bc3db
commit
7bbd5f6e31
|
@ -1,6 +1,8 @@
|
|||
module Gitlab
|
||||
module Ci
|
||||
class Trace
|
||||
ArchiveError = Class.new(StandardError)
|
||||
|
||||
attr_reader :job
|
||||
|
||||
delegate :old_trace, to: :job
|
||||
|
@ -94,8 +96,8 @@ module Gitlab
|
|||
end
|
||||
|
||||
def archive!
|
||||
raise 'Already archived' if trace_artifact
|
||||
raise 'Job is not finished yet' unless job.complete?
|
||||
raise ArchiveError, 'Already archived' if trace_artifact
|
||||
raise ArchiveError, 'Job is not finished yet' unless job.complete?
|
||||
|
||||
if current_path
|
||||
File.open(current_path) do |stream|
|
||||
|
@ -124,7 +126,7 @@ module Gitlab
|
|||
temp_path = File.join(dir_path, "job.log")
|
||||
FileUtils.touch(temp_path)
|
||||
size = IO.copy_stream(src_stream, temp_path)
|
||||
raise 'Not all saved' unless size == src_stream.size
|
||||
raise ArchiveError, 'Failed to copy stream' unless size == src_stream.size
|
||||
|
||||
yield(temp_path)
|
||||
end
|
||||
|
|
|
@ -463,11 +463,10 @@ describe Gitlab::Ci::Trace do
|
|||
|
||||
context 'when failed to create clone file' do
|
||||
before do
|
||||
allow_any_instance_of(described_class)
|
||||
.to receive(:clone_file!).and_raise('Not all saved')
|
||||
allow(IO).to receive(:copy_stream).and_return(0)
|
||||
end
|
||||
|
||||
it_behaves_like 'source trace file stays intact', error: 'Not all saved'
|
||||
it_behaves_like 'source trace file stays intact', error: Gitlab::Ci::Trace::ArchiveError
|
||||
end
|
||||
|
||||
context 'when failed to create job artifact record' do
|
||||
|
@ -494,11 +493,10 @@ describe Gitlab::Ci::Trace do
|
|||
|
||||
context 'when failed to create clone file' do
|
||||
before do
|
||||
allow_any_instance_of(described_class)
|
||||
.to receive(:clone_file!).and_raise('Not all saved')
|
||||
allow(IO).to receive(:copy_stream).and_return(0)
|
||||
end
|
||||
|
||||
it_behaves_like 'source trace in database stays intact', error: 'Not all saved'
|
||||
it_behaves_like 'source trace in database stays intact', error: Gitlab::Ci::Trace::ArchiveError
|
||||
end
|
||||
|
||||
context 'when failed to create job artifact record' do
|
||||
|
|
Loading…
Reference in New Issue