debian-mirror-gitlab/app/graphql/resolvers/project_pipeline_statistics_resolver.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

33 lines
1.2 KiB
Ruby
Raw Normal View History

2021-02-22 17:27:13 +05:30
# frozen_string_literal: true
module Resolvers
class ProjectPipelineStatisticsResolver < BaseResolver
2021-08-04 16:29:09 +05:30
include Gitlab::Graphql::Authorize::AuthorizeResource
2021-02-22 17:27:13 +05:30
type Types::Ci::AnalyticsType, null: true
2021-08-04 16:29:09 +05:30
authorizes_object!
authorize :read_ci_cd_analytics
2021-02-22 17:27:13 +05:30
def resolve
weekly_stats = Gitlab::Ci::Charts::WeekChart.new(object)
monthly_stats = Gitlab::Ci::Charts::MonthChart.new(object)
yearly_stats = Gitlab::Ci::Charts::YearChart.new(object)
pipeline_times = Gitlab::Ci::Charts::PipelineTime.new(object)
{
week_pipelines_labels: weekly_stats.labels,
week_pipelines_totals: weekly_stats.total,
week_pipelines_successful: weekly_stats.success,
month_pipelines_labels: monthly_stats.labels,
month_pipelines_totals: monthly_stats.total,
month_pipelines_successful: monthly_stats.success,
year_pipelines_labels: yearly_stats.labels,
year_pipelines_totals: yearly_stats.total,
year_pipelines_successful: yearly_stats.success,
pipeline_times_labels: pipeline_times.labels,
pipeline_times_values: pipeline_times.pipeline_times
}
end
end
end