Add group-level DORA metrics to GraphQL

What does this MR do?

Exposes the same DORA 4 information as !64961 (merged), but at the group-level.

This data is identical to the data already exposed through the DORA REST APIs.

Example query/response

Query:

{
  group(fullPath: "test-group") {
    dora {
      metrics(metric: DEPLOYMENT_FREQUENCY, startDate: "2021-04-01", endDate: "2021-04-07", interval: DAILY, environmentTier: PRODUCTION) {
        date
        value
      }
    }
  }
}

Note: Only the metric parameter is required.

Response:

{
  "data": {
    "group": {
      "dora": {
        "metrics": [
          {
            "date": "2021-04-01",
            "value": 16
          },
          {
            "date": "2021-04-02",
            "value": 27
          },
          {
            "date": "2021-04-03",
            "value": 1
          },
          {
            "date": "2021-04-04",
            "value": 2
          },
          {
            "date": "2021-04-05",
            "value": 15
          },
          {
            "date": "2021-04-06",
            "value": 25
          },
          {
            "date": "2021-04-07",
            "value": 30
          }
        ]
      }
    }
  }
}
Edited by Nathan Friend

Merge request reports

Loading