Real-time updates in Jira dev panel with DVCS connector
With our Atlassian Marketplace app we are able to push real-time updates to Jira dev panel. This app is only available to GitLab.com + Jira Cloud customers though.
For self-hosted Jira or self-hosted GitLab, we continue to support the DVCS connector to integrate with Jira dev panel.
Currently, this is a pull-only integration where Jira connects to GitLab to retrieve development information regularly (default interval is 60 minutes).
There is an API endpoint available in Jira (
https://YOUR-Instance-Name-Here/rest/bitbucket/1.0/repository/<repository id>/sync) to trigger a sync. More information here: https://confluence.atlassian.com/jirakb/slow-appearing-commits-from-bitbucket-or-github-in-jira-779160823.html. I'm currently not sure about other details like what payload to POST because there isn't any information there. I'm guessing any payload / no payload will do.
We could leverage our existing webhooks (https://docs.gitlab.com/ee/user/project/integrations/webhooks.html) with that URL and select "Push events" and "Merge request events" and see if it works.
If it does, then all we need to do is automatically create these webhooks when an integration is setup. For the DVCS connector, the user enters a GitLab namespace in Jira. Jira would request
:namespace/repos to get the projects under it, and then would try to install the hooks by sending a POST to
:namespace/:repo/hooks for each project there. This is what we need to implement and so that we can have automatic real-time sync.