summaryrefslogtreecommitdiff
path: root/app/presenters/ci/build_metadata_presenter.rb
blob: 2f559adf77dc11a66173090fb3b72f7f1c53baff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# frozen_string_literal: true

module Ci
  class BuildMetadataPresenter < Gitlab::View::Presenter::Delegated
    TIMEOUT_SOURCES = {
        unknown_timeout_source: nil,
        project_timeout_source: 'project',
        runner_timeout_source: 'runner',
        job_timeout_source: 'job'
    }.freeze

    presents ::Ci::BuildMetadata, as: :metadata

    delegator_override :timeout_source
    def timeout_source
      return unless metadata.timeout_source?

      TIMEOUT_SOURCES[metadata.timeout_source.to_sym] ||
        metadata.timeout_source
    end
  end
end