gitea-issue/giteaClient/giteaClient.go

108 lines
2.6 KiB
Go
Raw Permalink Normal View History

2019-12-03 20:14:14 +00:00
package giteaClient
import (
"code.gitea.io/sdk/gitea"
"fmt"
)
2020-01-15 19:40:53 +00:00
var (
2019-12-03 20:14:14 +00:00
giteaClient *gitea.Client
2020-01-15 19:40:53 +00:00
giteaOwner string
giteaRepo string
2019-12-03 20:14:14 +00:00
)
2020-01-15 19:40:53 +00:00
func SetUp(config GiteaConfig) {
2019-12-03 20:14:14 +00:00
giteaClient = gitea.NewClient(config.GiteaUrl, config.GiteaToken)
giteaOwner = config.GiteaOwner
giteaRepo = config.GiteaRepo
}
2020-01-15 19:40:53 +00:00
func GetUserInfo() (*gitea.User, error) {
2019-12-03 20:14:14 +00:00
usr, err := giteaClient.GetMyUserInfo()
2020-01-15 19:40:53 +00:00
if (err != nil) {
2019-12-03 20:14:14 +00:00
return nil, err
}
return usr, nil
}
2020-01-15 19:40:53 +00:00
func SudoUser(username string) {
giteaClient.SetSudo(username)
}
2019-12-03 20:14:14 +00:00
func GetServerInfo() (string, error) {
ver, err := giteaClient.ServerVersion()
2020-01-15 19:40:53 +00:00
if (err != nil) {
2019-12-03 20:14:14 +00:00
return "", err
}
return ver, nil
}
2020-01-15 19:40:53 +00:00
func CreateUser(user gitea.CreateUserOption) (*gitea.User, error) {
giteaUser, err := giteaClient.AdminCreateUser(user)
if (err != nil) {
fmt.Println(fmt.Sprintf("Gitea error: %+v", err.Error()))
return nil, err
}
return giteaUser, nil
}
func GetIssues() ([]*gitea.Issue, error) {
2019-12-03 20:14:14 +00:00
opt := gitea.ListIssueOption{
Page: 0,
2020-01-15 19:40:53 +00:00
State: "closed",
2019-12-03 20:14:14 +00:00
}
giteaIssues, err := giteaClient.ListRepoIssues(giteaOwner, giteaRepo, opt)
2020-01-15 19:40:53 +00:00
if (err != nil) {
2019-12-03 20:14:14 +00:00
fmt.Println(fmt.Sprintf("Gitea error: %+v", err.Error()))
return nil, err
}
return giteaIssues, nil
}
func GetIssue(issueID int64) (*gitea.Issue, error) {
giteaIssue, err := giteaClient.GetIssue(giteaOwner, giteaRepo, issueID)
2020-01-15 19:40:53 +00:00
if (err != nil) {
2019-12-03 20:14:14 +00:00
fmt.Println(fmt.Sprintf("GetIssue gitea error: %+v", err.Error()))
return nil, err
}
return giteaIssue, nil
}
func GetIssueComments(issueID int64) ([]*gitea.Comment, error) {
giteaIssueComments, err := giteaClient.ListIssueComments(giteaOwner, giteaRepo, issueID)
2020-01-15 19:40:53 +00:00
if (err != nil) {
2019-12-04 17:04:06 +00:00
fmt.Println(fmt.Sprintf("Gitea get isse comments error: %+v", err.Error()))
2019-12-03 20:14:14 +00:00
return nil, err
}
return giteaIssueComments, nil
}
2019-12-04 17:04:06 +00:00
func GetLabels() ([]*gitea.Label, error) {
giteaLabels, err := giteaClient.ListRepoLabels(giteaOwner, giteaRepo)
2020-01-15 19:40:53 +00:00
if (err != nil) {
2019-12-04 17:04:06 +00:00
fmt.Println(fmt.Sprintf("Gitea get labels error: %+v", err.Error()))
return nil, err
}
return giteaLabels, nil
}
2020-01-15 19:40:53 +00:00
func CreateIssue(issue gitea.CreateIssueOption) (*gitea.Issue, error) {
2019-12-04 21:37:18 +00:00
giteaCreateIssue, err := giteaClient.CreateIssue(giteaOwner, giteaRepo, issue)
2020-01-15 19:40:53 +00:00
if (err != nil) {
2019-12-04 21:37:18 +00:00
fmt.Println(fmt.Sprintf("Gitea get labels error: %+v", err.Error()))
return nil, err
}
return giteaCreateIssue, nil
2020-01-15 19:40:53 +00:00
}
func CreateComment(id int64, option gitea.CreateIssueCommentOption) (*gitea.Comment, error) {
giteaComment, err := giteaClient.CreateIssueComment(giteaOwner, giteaRepo, id, option)
if (err != nil) {
fmt.Println(fmt.Sprintf("Gitea create comment error: %+v", err.Error()))
return nil, err
}
return giteaComment, nil
}