🚧 排序

This commit is contained in:
徐晓伟 2023-10-04 23:56:50 +08:00
parent b78cce1b62
commit fc6dae0bb4
3 changed files with 29 additions and 9 deletions

View File

@ -5,4 +5,6 @@ const (
BaseUrl = "baseUrl" BaseUrl = "baseUrl"
BaseUrlDefault = "https://gitlab.com/api/v4" BaseUrlDefault = "https://gitlab.com/api/v4"
Id = "id" Id = "id"
Sort = "sort"
SortDefault = "desc"
) )

View File

@ -14,18 +14,22 @@ func Pipelines() *cli.Command {
Aliases: []string{"pl"}, Aliases: []string{"pl"},
Usage: "流水线 API中文文档https://docs.gitlab.cn/jh/api/pipelines.html", Usage: "流水线 API中文文档https://docs.gitlab.cn/jh/api/pipelines.html",
Action: func(context *cli.Context) error { Action: func(context *cli.Context) error {
var token = context.String(constant.Token)
var baseUrl = context.String(constant.BaseUrl) var baseUrl = context.String(constant.BaseUrl)
var id = context.String(constant.Id)
if baseUrl == "" { if baseUrl == "" {
baseUrl = constant.BaseUrlDefault baseUrl = constant.BaseUrlDefault
} }
var token = context.String(constant.Token)
var sort = context.String(constant.Sort)
var id = context.String(constant.Id)
gitClient, err := gitlab.NewClient(token, gitlab.WithBaseURL(baseUrl)) gitClient, err := gitlab.NewClient(token, gitlab.WithBaseURL(baseUrl))
if err != nil { if err != nil {
return err return err
} }
opt := &gitlab.ListProjectPipelinesOptions{} opt := &gitlab.ListProjectPipelinesOptions{
Sort: &sort,
}
PipelineInfos, response, err := gitClient.Pipelines.ListProjectPipelines(id, opt) PipelineInfos, response, err := gitClient.Pipelines.ListProjectPipelines(id, opt)
fmt.Printf("Response StatusCode: %d\n", response.Response.StatusCode) fmt.Printf("Response StatusCode: %d\n", response.Response.StatusCode)
if err != nil { if err != nil {
@ -39,13 +43,18 @@ func Pipelines() *cli.Command {
return nil return nil
}, },
Flags: []cli.Flag{ Flags: []cli.Flag{
&cli.StringFlag{
Name: constant.BaseUrl,
Usage: "实例地址例如https://gitlab.xuxiaowei.com.cn/api/v4",
},
&cli.StringFlag{ &cli.StringFlag{
Name: constant.Token, Name: constant.Token,
Usage: "your_access_token", Usage: "your_access_token",
}, },
&cli.StringFlag{ &cli.StringFlag{
Name: constant.BaseUrl, Name: constant.Sort,
Usage: "实例地址例如https://gitlab.xuxiaowei.com.cn/api/v4", Value: constant.SortDefault,
Usage: "按照 asc 或者 desc默认desc对流水线排序",
}, },
&cli.StringFlag{ &cli.StringFlag{
Name: constant.Id, Name: constant.Id,

View File

@ -14,17 +14,21 @@ func Projects() *cli.Command {
Aliases: []string{"p"}, Aliases: []string{"p"},
Usage: "项目 API中文文档https://docs.gitlab.cn/jh/api/projects.html", Usage: "项目 API中文文档https://docs.gitlab.cn/jh/api/projects.html",
Action: func(context *cli.Context) error { Action: func(context *cli.Context) error {
var token = context.String(constant.Token)
var baseUrl = context.String(constant.BaseUrl) var baseUrl = context.String(constant.BaseUrl)
if baseUrl == "" { if baseUrl == "" {
baseUrl = constant.BaseUrlDefault baseUrl = constant.BaseUrlDefault
} }
var token = context.String(constant.Token)
var sort = context.String(constant.Sort)
gitClient, err := gitlab.NewClient(token, gitlab.WithBaseURL(baseUrl)) gitClient, err := gitlab.NewClient(token, gitlab.WithBaseURL(baseUrl))
if err != nil { if err != nil {
return err return err
} }
opt := &gitlab.ListProjectsOptions{} opt := &gitlab.ListProjectsOptions{
Sort: &sort,
}
projects, response, err := gitClient.Projects.ListProjects(opt) projects, response, err := gitClient.Projects.ListProjects(opt)
fmt.Printf("Response StatusCode: %d\n", response.Response.StatusCode) fmt.Printf("Response StatusCode: %d\n", response.Response.StatusCode)
if err != nil { if err != nil {
@ -38,13 +42,18 @@ func Projects() *cli.Command {
return nil return nil
}, },
Flags: []cli.Flag{ Flags: []cli.Flag{
&cli.StringFlag{
Name: constant.BaseUrl,
Usage: "实例地址例如https://gitlab.xuxiaowei.com.cn/api/v4",
},
&cli.StringFlag{ &cli.StringFlag{
Name: constant.Token, Name: constant.Token,
Usage: "your_access_token", Usage: "your_access_token",
}, },
&cli.StringFlag{ &cli.StringFlag{
Name: constant.BaseUrl, Name: constant.Sort,
Usage: "实例地址例如https://gitlab.xuxiaowei.com.cn/api/v4", Value: constant.SortDefault,
Usage: "按照 asc 或者 desc默认desc对项目排序",
}, },
}, },
} }