middleware icon indicating copy to clipboard operation
middleware copied to clipboard

Bitbucket Integration

Open jayantbh opened this issue 1 year ago • 19 comments

Why do we need this ?

To view Dora Metrics for those using Bitbucket repos.

Not much else to it. Similar to Github or Gitlab, I should be able to see a Dora metrics analysis of my Bitbucket repos.

Please upvote this issue, react to it, or leave a comment to show your interest.

Alternatively, these are related discussions threads: https://github.com/middlewarehq/middleware/discussions/452 https://github.com/middlewarehq/middleware/discussions/464

jayantbh avatar Oct 01 '24 19:10 jayantbh

I'm interested in working on this feature and would appreciate more details to better understand it. In the meantime, feel free to assign this issue to me.

nayanmapara avatar Oct 02 '24 02:10 nayanmapara

Hey @nayanmapara, the idea is straight-forward. Currently we support PRs based analysis based on Github and Gitlab integrations. The same needs to be done for Bitbucket.

The integration will be powered by a user provided token.

How the integration should be made would be similar to how our GH and GL integrations are made, of course with BB specific API and its quirks.

[!IMPORTANT] This issue is tagged advanced. By taking this up you acknowledge that you're accepting that this will be a non-trivial change and may require thorough testing and review. Of course, this also means that we offer swag for someone who goes out of their way to tackle issues tagged advanced. 🚀 This also means we'll follow up on this regularly, and in case of inactivity the issue would be unassigned.

jayantbh avatar Oct 02 '24 07:10 jayantbh

I would recommend starting by looking into our the Github and Gitlab integrations are made.

Worth remembering that there are two sides to adding data into Middleware.

One is where data from an external source (GH, GL) is loaded into Middleware, and stored in a way that it can be used by our analytics APIs in a provider (GH, GL) agnostic way.

The other is where analytics APIs are able to leverage this data to show analysis. In most cases, a new integration shouldn't introduce many (if any) changes to this part.

jayantbh avatar Oct 02 '24 07:10 jayantbh

@jayantbh I would like to work on this feature if @nayanmapara not goes with it.

Kamlesh72 avatar Oct 02 '24 09:10 Kamlesh72

Sure @Kamlesh72 You can also check out our other advanced issues if you're interested.

Such as

https://github.com/middlewarehq/middleware/issues/562

Or any of the other advanced labelled issues on the issues tab.

jayantbh avatar Oct 02 '24 09:10 jayantbh

@jayantbh I looked into other integrations and would love to work on this issue. Feel free to assign this issue to me.

nayanmapara avatar Oct 02 '24 14:10 nayanmapara

Done, @nayanmapara!

jayantbh avatar Oct 02 '24 15:10 jayantbh

Do share the approach you'll take before you begin implementing.

jayantbh avatar Oct 02 '24 15:10 jayantbh

Sure, will do!

nayanmapara avatar Oct 02 '24 15:10 nayanmapara

@nayanmapara just a quick heads up, as already shared previously:

[!IMPORTANT] This issue is tagged advanced. By taking this up you acknowledge that you're accepting that this will be a non-trivial change and may require thorough testing and review. Of course, this also means that we offer swag for someone who goes out of their way to tackle issues tagged advanced. 🚀 This also means we'll follow up on this regularly, and in case of inactivity the issue would be unassigned.

The last bit is important.

jayantbh avatar Oct 03 '24 15:10 jayantbh

Thanks for the heads up! I've set up the project locally and will be exploring how the previous integrations were made and the kind of response they seek to keep everything aligned.

nayanmapara avatar Oct 03 '24 15:10 nayanmapara

Also, I've explored some of the possible ways of integrating Bitbucket.

nayanmapara avatar Oct 03 '24 16:10 nayanmapara

Great to know you've made some headway! :) Feel free to let us know in case you need some help or context. Additionally you could join our Slack for quicker back-and-forth. Link in the README.

jayantbh avatar Oct 03 '24 16:10 jayantbh

I've joined the Slack channel!

nayanmapara avatar Oct 03 '24 17:10 nayanmapara

Yes, glad to have you there! Feel free to drop any questions in the #open-source channel, or DM us.

jayantbh avatar Oct 04 '24 17:10 jayantbh

Unassigning due to inactivity.

jayantbh avatar Oct 15 '24 08:10 jayantbh

Hey everyone,

Just a quick update—the Bitbucket integration for the frontend is almost wrapped up and will need thorough testing. That said, I’ll be taking a break since I have mid-terms this week, so feel free to jump in and work on the issue if you'd like!

If anyone wants to pick up where I left off, you can check out my progress so far here (I still have a few changes to push will update here once I do): https://github.com/nayanmapara/middleware/tree/main

It's been a bit slower going than I expected, partly due to my schedule and partly because the Bitbucket API documentation has been, well, not the most user-friendly. Tracking down the right endpoints has been a bit of a hassle.

If you have any questions about the Bitbucket API or my code, feel free to DM me on Slack—happy to help!

Cheers, Nayan

nayanmapara avatar Oct 15 '24 13:10 nayanmapara

updates?

joaovbalmeida avatar Dec 10 '24 04:12 joaovbalmeida

Hey @joaovbalmeida No meaningful progress has been made on it.

But if this is something you're interested in, we do look at votes on the discussion shared at the top.

#464

jayantbh avatar Dec 12 '24 17:12 jayantbh