From fc6dae0bb4df17247cb4ab438409314e2c2bae43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E6=99=93=E4=BC=9F?= Date: Wed, 4 Oct 2023 23:56:50 +0800 Subject: [PATCH] =?UTF-8?q?:construction:=20=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- constant/common.go | 2 ++ pipelines/pipelines.go | 19 ++++++++++++++----- projects/projects.go | 17 +++++++++++++---- 3 files changed, 29 insertions(+), 9 deletions(-) diff --git a/constant/common.go b/constant/common.go index 333ac7e..99faff8 100644 --- a/constant/common.go +++ b/constant/common.go @@ -5,4 +5,6 @@ const ( BaseUrl = "baseUrl" BaseUrlDefault = "https://gitlab.com/api/v4" Id = "id" + Sort = "sort" + SortDefault = "desc" ) diff --git a/pipelines/pipelines.go b/pipelines/pipelines.go index 129df24..1abe624 100644 --- a/pipelines/pipelines.go +++ b/pipelines/pipelines.go @@ -14,18 +14,22 @@ func Pipelines() *cli.Command { Aliases: []string{"pl"}, Usage: "流水线 API,中文文档:https://docs.gitlab.cn/jh/api/pipelines.html", Action: func(context *cli.Context) error { - var token = context.String(constant.Token) var baseUrl = context.String(constant.BaseUrl) - var id = context.String(constant.Id) if baseUrl == "" { 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)) if err != nil { return err } - opt := &gitlab.ListProjectPipelinesOptions{} + opt := &gitlab.ListProjectPipelinesOptions{ + Sort: &sort, + } PipelineInfos, response, err := gitClient.Pipelines.ListProjectPipelines(id, opt) fmt.Printf("Response StatusCode: %d\n", response.Response.StatusCode) if err != nil { @@ -39,13 +43,18 @@ func Pipelines() *cli.Command { return nil }, Flags: []cli.Flag{ + &cli.StringFlag{ + Name: constant.BaseUrl, + Usage: "实例地址,例如:https://gitlab.xuxiaowei.com.cn/api/v4", + }, &cli.StringFlag{ Name: constant.Token, Usage: "your_access_token", }, &cli.StringFlag{ - Name: constant.BaseUrl, - Usage: "实例地址,例如:https://gitlab.xuxiaowei.com.cn/api/v4", + Name: constant.Sort, + Value: constant.SortDefault, + Usage: "按照 asc 或者 desc(默认:desc)对流水线排序", }, &cli.StringFlag{ Name: constant.Id, diff --git a/projects/projects.go b/projects/projects.go index e1b7c6d..1c4fcb1 100644 --- a/projects/projects.go +++ b/projects/projects.go @@ -14,17 +14,21 @@ func Projects() *cli.Command { Aliases: []string{"p"}, Usage: "项目 API,中文文档:https://docs.gitlab.cn/jh/api/projects.html", Action: func(context *cli.Context) error { - var token = context.String(constant.Token) var baseUrl = context.String(constant.BaseUrl) if baseUrl == "" { baseUrl = constant.BaseUrlDefault } + var token = context.String(constant.Token) + var sort = context.String(constant.Sort) + gitClient, err := gitlab.NewClient(token, gitlab.WithBaseURL(baseUrl)) if err != nil { return err } - opt := &gitlab.ListProjectsOptions{} + opt := &gitlab.ListProjectsOptions{ + Sort: &sort, + } projects, response, err := gitClient.Projects.ListProjects(opt) fmt.Printf("Response StatusCode: %d\n", response.Response.StatusCode) if err != nil { @@ -38,13 +42,18 @@ func Projects() *cli.Command { return nil }, Flags: []cli.Flag{ + &cli.StringFlag{ + Name: constant.BaseUrl, + Usage: "实例地址,例如:https://gitlab.xuxiaowei.com.cn/api/v4", + }, &cli.StringFlag{ Name: constant.Token, Usage: "your_access_token", }, &cli.StringFlag{ - Name: constant.BaseUrl, - Usage: "实例地址,例如:https://gitlab.xuxiaowei.com.cn/api/v4", + Name: constant.Sort, + Value: constant.SortDefault, + Usage: "按照 asc 或者 desc(默认:desc)对项目排序", }, }, }