Support GitLab in campaigns
Created by: mrnugget
Steps:
-
Update src-cli
to extend this check -
Extend SupportedExternalServices
-
Implement the ChangesetSource
interface onrepos.GitlabSource
(seerepos.GitHubSource
andrepos.BitbucketServerSource
as examples) -
Add gitlab support to the workers.go
so that changesets can be created by us. -
Handle gitlab.MergeRequests
in the switch statements incampaigns/types.go
At this point, we should be able to create changesets and display them (but their External*
fields should be empty).
Next step is to support ChangesetEvents
:
-
Load the events in the ChangesetSource
-
Support gitlab
in theChangesetEvents
-
Handle gitlab
metadata in the state computation switch statements -
Handle gitlab
events in thecomputeHistory
function (which is used for the burndown chart and the state computation above) -
Last: add webhook support