bridge/gitlab: init new bridge

Amine Hilaly created

Change summary

bridge/bridges.go       |  1 +
bridge/gitlab/gitlab.go | 28 ++++++++++++++++++++++++++++
bridge/gitlab/import.go | 30 ++++++++++++++++++++++++++++++
3 files changed, 59 insertions(+)

Detailed changes

bridge/bridges.go 🔗

@@ -4,6 +4,7 @@ package bridge
 import (
 	"github.com/MichaelMure/git-bug/bridge/core"
 	_ "github.com/MichaelMure/git-bug/bridge/github"
+	_ "github.com/MichaelMure/git-bug/bridge/gitlab"
 	_ "github.com/MichaelMure/git-bug/bridge/launchpad"
 	"github.com/MichaelMure/git-bug/cache"
 	"github.com/MichaelMure/git-bug/repository"

bridge/gitlab/gitlab.go 🔗

@@ -0,0 +1,28 @@
+package gitlab
+
+import (
+	"github.com/MichaelMure/git-bug/bridge/core"
+	"github.com/xanzy/go-gitlab"
+)
+
+func init() {
+	core.Register(&Gitlab{})
+}
+
+type Gitlab struct{}
+
+func (*Gitlab) Target() string {
+	return target
+}
+
+func (*Gitlab) NewImporter() core.Importer {
+	return &gitlabImporter{}
+}
+
+func (*Gitlab) NewExporter() core.Exporter {
+	return &gitlabExporter{}
+}
+
+func buildClient(token string) *gitlab.Client {
+	return gitlab.NewClient(nil, token)
+}

bridge/gitlab/import.go 🔗

@@ -0,0 +1,30 @@
+package gitlab
+
+import (
+	"time"
+
+	"github.com/MichaelMure/git-bug/bridge/core"
+	"github.com/MichaelMure/git-bug/cache"
+)
+
+const (
+	keyGitlabLogin = "gitlab-login"
+)
+
+type gitlabImporter struct {
+	conf core.Configuration
+
+	// number of imported issues
+	importedIssues int
+
+	// number of imported identities
+	importedIdentities int
+}
+
+func (*gitlabImporter) Init(conf core.Configuration) error {
+	return nil
+}
+
+func (*gitlabImporter) ImportAll(repo *cache.RepoCache, since time.Time) error {
+	return nil
+}