summaryrefslogtreecommitdiff
path: root/lib/gitlab/metrics_dashboard/processor.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/metrics_dashboard/processor.rb')
-rw-r--r--lib/gitlab/metrics_dashboard/processor.rb17
1 files changed, 12 insertions, 5 deletions
diff --git a/lib/gitlab/metrics_dashboard/processor.rb b/lib/gitlab/metrics_dashboard/processor.rb
index 518e0123220..14ee12049d0 100644
--- a/lib/gitlab/metrics_dashboard/processor.rb
+++ b/lib/gitlab/metrics_dashboard/processor.rb
@@ -3,17 +3,24 @@
module Gitlab
module MetricsDashboard
class Processor
- STAGES = [CommonMetricsInserter, ProjectMetricsInserter, Sorter].freeze
-
- def initialize(dashboard, project)
+ def initialize(dashboard, project, environment)
@dashboard = dashboard.deep_transform_keys(&:to_sym)
@project = project
+ @environment = environment
+ end
+
+ def stages
+ @stages ||= [
+ Stages::CommonMetricsInserter,
+ Stages::ProjectMetricsInserter,
+ Stages::Sorter
+ ].freeze
end
def process
- STAGES.each { |stage| stage.transform!(@dashboard, @project) }
+ stages.each { |stage| stage.new(@dashboard, @project, @environment).transform! }
- @dashboard.to_json
+ @dashboard
end
end
end