Rename metadata relation and methods

This commit is contained in:
Tomasz Maczukin 2018-03-20 23:21:17 +01:00
parent 4c3482345a
commit afcc57abfd
No known key found for this signature in database
GPG Key ID: 7E9EB2E4B0F625CD
4 changed files with 11 additions and 9 deletions

View File

@ -24,7 +24,7 @@ module Ci
has_one :job_artifacts_metadata, -> { where(file_type: Ci::JobArtifact.file_types[:metadata]) }, class_name: 'Ci::JobArtifact', inverse_of: :job, foreign_key: :job_id
has_one :job_artifacts_trace, -> { where(file_type: Ci::JobArtifact.file_types[:trace]) }, class_name: 'Ci::JobArtifact', inverse_of: :job, foreign_key: :job_id
has_one :build_metadata, class_name: 'Ci::BuildMetadata'
has_one :metadata, class_name: 'Ci::BuildMetadata'
# The "environment" field for builds is a String, and is the unexpanded name
def persisted_environment
@ -157,12 +157,12 @@ module Ci
end
before_transition pending: :running do |build|
build.metadata.save_timeout_state!
build.ensure_metadata.save_timeout_state!
end
end
def metadata
self.build_metadata ||= Ci::BuildMetadata.new
def ensure_metadata
metadata || build_metadata
end
def detailed_status(current_user)
@ -242,7 +242,7 @@ module Ci
end
def timeout
metadata.timeout
ensure_metadata.timeout
end
def triggered_by?(current_user)

View File

@ -5,7 +5,9 @@ class BuildDetailsEntity < JobEntity
expose :runner, using: RunnerEntity
expose :pipeline, using: PipelineEntity
expose :metadata, using: BuildMetadataEntity
expose :metadata, using: BuildMetadataEntity do |build|
build.ensure_metadata
end
expose :erased_by, if: -> (*) { build.erased? }, using: UserEntity
expose :erase_path, if: -> (*) { build.erasable? && can?(current_user, :erase_build, build) } do |build|

View File

@ -2052,11 +2052,11 @@ describe Ci::Build do
shared_examples 'saves data on transition' do
it 'saves timeout' do
expect { job.run! }.to change { job.reload.metadata.timeout }.from(nil).to(expected_timeout)
expect { job.run! }.to change { job.reload.ensure_metadata.timeout }.from(nil).to(expected_timeout)
end
it 'saves timeout_source' do
expect { job.run! }.to change { job.reload.metadata.timeout_source }.from('unknown_timeout_source').to(expected_timeout_source)
expect { job.run! }.to change { job.reload.ensure_metadata.timeout_source }.from('unknown_timeout_source').to(expected_timeout_source)
end
end

View File

@ -30,7 +30,7 @@ describe Ci::RetryBuildService do
runner_id tag_taggings taggings tags trigger_request_id
user_id auto_canceled_by_id retried failure_reason
artifacts_file_store artifacts_metadata_store
build_metadata].freeze
metadata].freeze
shared_examples 'build duplication' do
let(:another_pipeline) { create(:ci_empty_pipeline, project: project) }