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 keyGitlabId = "gitlab-id"
16 keyGitlabUrl = "gitlab-url"
17 keyGitlabLogin = "gitlab-login"
18 keyGitlabProject = "gitlab-project-id"
19
20 keyProjectID = "project-id"
21 keyToken = "token"
22
23 defaultTimeout = 60 * time.Second
24)
25
26func init() {
27 core.Register(&Gitlab{})
28}
29
30type Gitlab struct{}
31
32func (*Gitlab) Target() string {
33 return target
34}
35
36func (*Gitlab) NewImporter() core.Importer {
37 return &gitlabImporter{}
38}
39
40func (*Gitlab) NewExporter() core.Exporter {
41 return &gitlabExporter{}
42}
43
44func buildClient(token string) *gitlab.Client {
45 client := &http.Client{
46 Timeout: defaultTimeout,
47 }
48
49 return gitlab.NewClient(client, token)
50}