1package gitlab
2
3import (
4 "net/http"
5 "time"
6
7 "github.com/xanzy/go-gitlab"
8
9 "github.com/MichaelMure/git-bug/bridge/core"
10)
11
12const (
13 target = "gitlab"
14
15 metaKeyGitlabId = "gitlab-id"
16 metaKeyGitlabUrl = "gitlab-url"
17 metaKeyGitlabLogin = "gitlab-login"
18 metaKeyGitlabProject = "gitlab-project-id"
19
20 keyProjectID = "project-id"
21 keyToken = "token"
22
23 defaultTimeout = 60 * time.Second
24)
25
26type Gitlab struct{}
27
28func (*Gitlab) Target() string {
29 return target
30}
31
32func (*Gitlab) NewImporter() core.Importer {
33 return &gitlabImporter{}
34}
35
36func (*Gitlab) NewExporter() core.Exporter {
37 return &gitlabExporter{}
38}
39
40func buildClient(token string) *gitlab.Client {
41 client := &http.Client{
42 Timeout: defaultTimeout,
43 }
44
45 return gitlab.NewClient(client, token)
46}