blob: f81a41bccb6343e973fc1653a2ae33c0efdfa32f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
module Gitlab
module CycleAnalytics
class BaseStage
include MetricsTables
attr_accessor :start_time_attrs, :end_time_attrs
def initialize(project:, options:)
@project = project
@options = options
@fetcher = Gitlab::CycleAnalytics::MetricsFetcher.new(project: project,
from: options[:from],
branch: options[:branch],
stage: self)
end
def event
@event ||= Gitlab::CycleAnalytics::Event[stage].new(fetcher: @fetcher, options: @options, stage: stage)
end
def events
event.fetch
end
def median_data
AnalyticsStageSerializer.new.represent(self).as_json
end
def title
stage.to_s.capitalize
end
def median
@fetcher.median
end
private
def stage
class_name_for('Stage')
end
end
end
end
|