Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bitbucket Integration #560

Open
jayantbh opened this issue Oct 1, 2024 · 17 comments
Open

Bitbucket Integration #560

jayantbh opened this issue Oct 1, 2024 · 17 comments
Labels
advanced These are not really meant for beginners or brand new contributors, but feel free to give it a shot! enhancement New feature or request help wanted Extra attention is needed

Comments

@jayantbh
Copy link
Contributor

jayantbh commented Oct 1, 2024

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:
#452
#464

@jayantbh jayantbh added enhancement New feature or request help wanted Extra attention is needed hacktoberfest advanced These are not really meant for beginners or brand new contributors, but feel free to give it a shot! labels Oct 1, 2024
@nayanmapara
Copy link

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.

@jayantbh
Copy link
Contributor Author

jayantbh commented Oct 2, 2024

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
Copy link
Contributor Author

jayantbh commented Oct 2, 2024

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.

@Kamlesh72
Copy link
Contributor

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

@jayantbh
Copy link
Contributor Author

jayantbh commented Oct 2, 2024

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

Such as

#562

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

@nayanmapara
Copy link

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

@jayantbh
Copy link
Contributor Author

jayantbh commented Oct 2, 2024

Done, @nayanmapara!

@jayantbh
Copy link
Contributor Author

jayantbh commented Oct 2, 2024

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

@nayanmapara
Copy link

Sure, will do!

@jayantbh
Copy link
Contributor Author

jayantbh commented Oct 3, 2024

@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.

@nayanmapara
Copy link

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
Copy link

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

@jayantbh
Copy link
Contributor Author

jayantbh commented Oct 3, 2024

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.

@nayanmapara
Copy link

I've joined the Slack channel!

@jayantbh
Copy link
Contributor Author

jayantbh commented Oct 4, 2024

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

@jayantbh
Copy link
Contributor Author

Unassigning due to inactivity.

@nayanmapara
Copy link

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
advanced These are not really meant for beginners or brand new contributors, but feel free to give it a shot! enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants