{"id":25615187,"url":"https://github.com/wednesday-solutions/automated-dora-metrics","last_synced_at":"2025-08-02T11:33:19.235Z","repository":{"id":194253416,"uuid":"681986119","full_name":"wednesday-solutions/automated-dora-metrics","owner":"wednesday-solutions","description":"Ability to generate automated metrics for your every releases.","archived":false,"fork":false,"pushed_at":"2024-07-10T07:08:38.000Z","size":46,"stargazers_count":13,"open_issues_count":2,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-13T21:13:13.695Z","etag":null,"topics":["automated-dora-metrics","devops","docker","dora-metrics","python","release-automation","shell-scripting","wednesday-automated-dora-metrics","wednesday-building-products"],"latest_commit_sha":null,"homepage":"https://wednesday.is/building-products/?utm_source=github\u0026utm_medium=automated-dora-metrics","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wednesday-solutions.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-08-23T07:30:35.000Z","updated_at":"2024-09-04T15:40:43.000Z","dependencies_parsed_at":"2023-09-12T15:13:14.468Z","dependency_job_id":"8129d7a0-4fa5-40b3-b38e-3433292acf90","html_url":"https://github.com/wednesday-solutions/automated-dora-metrics","commit_stats":null,"previous_names":["wednesday-solutions/automated-delivery-metrics","wednesday-solutions/automated-dora-metrics"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/wednesday-solutions/automated-dora-metrics","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wednesday-solutions%2Fautomated-dora-metrics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wednesday-solutions%2Fautomated-dora-metrics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wednesday-solutions%2Fautomated-dora-metrics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wednesday-solutions%2Fautomated-dora-metrics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wednesday-solutions","download_url":"https://codeload.github.com/wednesday-solutions/automated-dora-metrics/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wednesday-solutions%2Fautomated-dora-metrics/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268378965,"owners_count":24240907,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automated-dora-metrics","devops","docker","dora-metrics","python","release-automation","shell-scripting","wednesday-automated-dora-metrics","wednesday-building-products"],"created_at":"2025-02-22T03:18:49.926Z","updated_at":"2025-08-02T11:33:19.203Z","avatar_url":"https://github.com/wednesday-solutions.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv\u003e\n  \n  \u003cp\u003e\n    \u003ch1 align=\"left\"\u003eAutomated DORA \u0026 Delivery Metrics\n    \u003c/h1\u003e\n  \u003c/p\u003e\n\n  \u003cp\u003e\nA tool to provide the ability to generate automated DORA and delivery metrics for your every release.\n  \u003c/p\u003e\n\n---\n\n  \u003cp\u003e\n    \u003ch4\u003e\n      Expert teams of digital product strategists, developers, and designers.\n    \u003c/h4\u003e\n  \u003c/p\u003e\n\n  \u003cdiv\u003e\n    \u003ca href=\"https://www.wednesday.is/contact-us/?utm_source=github\u0026utm_medium=automated-dora-metrics\" target=\"_blank\"\u003e\n      \u003cimg src=\"https://uploads-ssl.webflow.com/5ee36ce1473112550f1e1739/5f6ae88b9005f9ed382fb2a5_button_get_in_touch.svg\" width=\"121\" height=\"34\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/wednesday-solutions/\" target=\"_blank\"\u003e\n      \u003cimg src=\"https://uploads-ssl.webflow.com/5ee36ce1473112550f1e1739/5f6ae88bb1958c3253756c39_button_follow_on_github.svg\" width=\"168\" height=\"34\"\u003e\n    \u003c/a\u003e\n  \u003c/div\u003e\n\n\u003cspan\u003eWe’re always looking for people who value their work, so come and join us. \u003ca href=\"https://www.wednesday.is/hiring/?utm_source=github\u0026utm_medium=automated-dora-metrics\"\u003eWe are hiring!\u003c/a\u003e\u003c/span\u003e\n\n\u003c/div\u003e\n\n---\n\n- This repository demonstrates the power of automation in generating DORA and delivery metrics for your software releases. By utilizing the provided scripts and tools\n- You can streamline the process of calculating and recording metrics for your projects.\n- Once the metrics are generated, you can seamlessly push them to 📣 [Compass](https://www.atlassian.com/software/compass) to keep track 📝 of your custom metrics effortlessly by following our instructions.\n- We have hosted a docker image [here](https://hub.docker.com/repository/docker/abhimishraa/dorametrics/general)\n\n---\n\n### Metrics Included\n\nIncluding this in your CI pipeline will automatically uncover detailed insights about your releases, and delivery efficiency. \nThe following metrics will be automatically calculated per release\n\n- total number of releases - feature, bugfix, and hotfix release breakdown\n- average features, bugs \u0026 hotfixes per release\n- Hotfixes per release\n- Bugs per feature\n- Bug release ratio\n\n### Getting started\n\n- [Detailed usage guide](https://github.com/wednesday-solutions/automated-delivery-metrics/tree/main/guide/usage)\n- [Quick usage summary](https://github.com/wednesday-solutions/automated-delivery-metrics/tree/main#for-getting-straight-into-commands-heres-how--)\n\n#### For getting straight into commands, here's how :-\n\n- ➕ Generate metrics for recent release\n\n```\ndocker run --rm\n-v \"$(pwd)/metrics\":/app/metrics\n \u003c!-- attach metrics dir of container host as an output dir --\u003e\n-v \"$(pwd)/.git\":/app/.git\n \u003c!-- attach .git dir of the container host --\u003e\nabhimishraa/dorametrics:latest --calculate-metrics\n\u003c!-- must be used without -e flag --\u003e\n```\n\n- ➕ Generate metrics for your previous releases / pre-existing repository\n\n_Considering your repository had followed strict git flow as stated [here](https://github.com/wednesday-solutions/automated-delivery-metrics/tree/main#for-getting-straight-into-commands-heres-how--)_\n\n```\ndocker run --rm\n-v \"$(pwd)/metrics\":/app/metrics\n \u003c!-- attach metrics dir of container host as an output dir --\u003e\n-v \"$(pwd)/.git\":/app/.git\n \u003c!-- attach .git dir of the container host --\u003e\nabhimishraa/dorametrics:latest --calculate-metrics -e True\n\n```\n\n- If your parent / production branch is not `main`, specify it manually :-\n\n```\ndocker run --rm -v $(pwd)/metrics:/app/metrics abhimishraa/dorametrics:latest --calculate-metrics -p \u003cbranch-name\u003e\n```\n\n- 📣 To notify Jira Compass with the generated metrics:\n\n```\ndocker run --rm \\\n    -e COMPASS_USER_EMAIL=$COMPASS_USER_EMAIL \\\n    -e COMPASS_USER_API_KEY=$COMPASS_USER_API_KEY \\\n    -e COMPASS_METRICS_BASE_URL=$COMPASS_METRICS_BASE_URL \\\n    -v $(pwd):/app abhimishraa/dorametrics:latest \\\n    --notify-compass \"metrics/data.yaml\" \"metrics/target-metrics.yaml\"\n```\n\n- For getting help from the metrics tool:-\n\n```\ndocker run --rm abhimishraa/dorametrics:latest --calculate-metrics --help\n```\n\n- For more, please check out our detailed [documentation](https://github.com/wednesday-solutions/automated-delivery-metrics/tree/main/guide/usage) to understand in depth concepts.\n\n---\n\n#### Sample CI Pipeline to integrate into your production release workflow can be found [here](https://github.com/wednesday-solutions/automated-delivery-metrics/blob/main/.github/workflows/calculate-metrics.yml)\n\n#### Structure of target-metrics.yaml\n\nThe target-metrics.yaml file defines the metrics you want to calculate and track. Customize the metrics and their associated IDs according to your project's needs.\n\nThe structure should be similar to what we have [here](https://github.com/wednesday-solutions/automated-delivery-metrics/tree/main/guide/target-metrics)\n\n### 🛑 Creating a Pull request 🛑 :-\n\n- The branch name must correspond to the ticket number such as `\u003ctype-of-ticket\u003e/\u003cProj\u003e-\u003cTickNumber\u003e`\n- For example:-\n\n```\n `feat/\u003cPROJ\u003e-1`\n `chore/\u003cPROJ\u003e-6`\n `docs/\u003cPROJ\u003e-7`\n `bug/\u003cPROJ\u003e-2`\n `fix/\u003cPROJ\u003e-5`\n `bugfix/\u003cPROJ\u003e-2`\n `hotfix/\u003cPROJ\u003e-3`\n```\n\n---\n\n### 📝 Things to note while importing to an existing Git repository and limitations :-\n\n##### 1 data.yaml\n\n- Running this tool to an existing git repository `(-e True flag)` will list down all the merges done into your `main` branch and the count of it will be considered as the total number of releases which we can see in the `total_releases` section of the file itself.\n\n##### 2 release.yaml\n\n- Running this tool to an existing git repository `(-e True flag)` the time when you execute the --calculate-metrics command marks the initiation of the first release in this sequence.\n- _Note_ 🛑:- although we do get the `total_releases` in `data.yaml`, the tool does not has the ability to list break down every release (merge into `main`) branch and hence the release number in the list order will start from `1`\n\n---\n\n- **Important Note** 🛑: Although there are some limitations while integrating this to an existing git repository as this tool was built with the focus of calculating the metrics for `next release cycles` that come into a `git branch (main)`, but it's crucial to recognize that correct metrics will be generated for all subsequent releases. The tool will seamlessly calculate and provide accurate metrics for your future releases. It's a powerful step toward enhancing your project's insights and tracking its progress effectively. Happy measuring! 📊🚀\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwednesday-solutions%2Fautomated-dora-metrics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwednesday-solutions%2Fautomated-dora-metrics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwednesday-solutions%2Fautomated-dora-metrics/lists"}