git-project-manager/internal/gitlab/gitlab.go

33 lines
696 B
Go
Raw Normal View History

2023-12-05 21:56:47 +00:00
package gitlab
import "github.com/xanzy/go-gitlab"
type Client struct {
gitlab *gitlab.Client
}
type ProjectInfo struct {
Name string `yaml:"name" json:"name"`
Id int `yaml:"id" json:"id"`
Path string `yaml:"path" json:"path"`
URI string `yaml:"uri" json:"uri"`
Description string `yaml:"description" json:"description"`
}
type ProjectAlias struct {
Alias string
ProjectID string
Project *ProjectInfo
}
func NewGitlabClient(host, token string) (*Client, error) {
client, err := gitlab.NewClient(token, gitlab.WithBaseURL(host))
if err != nil {
return nil, err
}
gitlabClient := &Client{
gitlab: client,
}
return gitlabClient, nil
}