GitHub user yoz2326 created a discussion: DORA & Monorepo support

Hi, I'm thinking of potentially adding monorepo support to Devlake for DORA 
metrics but before doing so I'm thinking to have a conversation to make sure it 
follows the overall product design.

At a high level this is what I have in mind, at least when webhooks for DORA 
metrics:

1. Add support so we can store service names in the database (e.g. a `services` 
table)
2. When using webhooks, send the service name in the incoming payload. This 
will allow us to associate a deployment with a service.
3. To further extent support for monorepos there's 2 ways I can think of:
Option A:  Vian an incoming webhook add info for Devlake project name, git path 
and service name
Option B: add an extra webhook in Apache Devlake that is invoked right after a 
PR is merged. In the payload add the git sha and service names to which the 
code change belonges. This way if we have code merges for 3 different apps 
belonging to 2 different teams, the data on the dtabse will have relvevant info 
so we can map code changes to teams and deployments.
4. Assuming service to code to deployemnt relations/mapings are now stored in 
the database in various tables updated DORA dashboard (or create a new one) 
where we can filter by project, service and/or team and perform DORA stats 
reporting/calculations via the SQL query.

Any thoughts on either this or better ways to go about it?

What I'd like to achieve is to have DORA metrics at application/service level, 
regardless of how application code is stored in a git repo. And filterting on a 
dashboard by team and application/service.

Today we can do it at project level only (unless I miss something), and based 
on project <--> git repo mappings it limits DORA metrics to be scoped 
essentially to a set of git repos.

Regards

GitHub link: https://github.com/apache/incubator-devlake/discussions/8540

----
This is an automatically sent email for dev@devlake.apache.org.
To unsubscribe, please send an email to: dev-unsubscr...@devlake.apache.org

Reply via email to