Build a solution to track DORA metrics #125
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
We want to track the four DORA metrics:
Implementation will require answering some questions specific to our little homelab environment.
https://docs.gitlab.com/ee/user/analytics/dora_metrics.html
https://cloud.google.com/blog/products/devops-sre/using-the-four-keys-to-measure-your-devops-performance
https://dora.dev/
Metrics: Organization-wide, or per-application?
Given that DORA metrics are intended to predict the performance of an organization, and that each metric is dependent on that service getting development attention, it would be less useful and less feasible to track on a per-application basis.
We'll track org-wide.
Dataset filtering for "deployment frequency"
This "organization" often goes weeks or months without a commit to the repo. This would bring down the "deployment frequency" metric in a way that is not helpful, or in the spirit of the metric.
We'll filter our "deplyoment frequency" dataset to just "development days", where at least one commit is made to functional code (as opposed to documentation).
The Data
We need the following data in order to track these metrics:
From those, we can compute:
Change failure rate as the rate of deployments which either fail to deploy or immediately result in a service outage (how to correlate?).
As for ingesting, processing, and presenting the data:
Maybe for vanity we can include a "rating system" based on Google's State of DevOps report to return "Elite", "High", "Medium", or "Low" tier based on the computed metrics.