Show subgroup projects in the DORA projects comparison visualization

What does this MR do and why?

Updates the DORA projects comparison panel to use the new GraphQL resolver implemented in #507722 (closed). This will allow us to fetch DORA data for all projects in subgroups, while bypassing projects with no DORA data. This will reduce the number of requests required to paginate the data and render the panel, which was causing slow load times in large groups.

References

Please include cross links to any resources that are relevant to this MR. This will give reviewers and future readers helpful context to give an efficient review of the changes introduced.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Before After
before after

How to set up and validate locally

  • Mock DORA metrics for a project within a subgroup
[
  [1.month.ago, 5, 1, 5, 2],
  [2.month.ago, 10, 3, 3, 3]
].each do |date, deploys, lead_time_for_changes, time_to_restore_service, incidents_count|
  Dora::DailyMetrics.create!(
    deployment_frequency: deploys,
    lead_time_for_changes_in_seconds: lead_time_for_changes * 1.day.to_i,
    time_to_restore_service_in_seconds: time_to_restore_service * 1.day.to_i,
    incidents_count: incidents_count,
    environment: Project.find(PROJECT_ID).default_environment,
    date: date
  )
end

Related to #523240 (closed)

Edited by Alex Pennells

Merge request reports

Loading