From c6b9bc7398b6218bf6999217677e0115e1540a5d Mon Sep 17 00:00:00 2001 From: GeorgeCao-hw Date: Tue, 10 Nov 2020 14:38:45 +0800 Subject: [PATCH] Update reviewer info while add a repository. --- go.mod | 2 +- go.sum | 2 + pkg/cibot/repohandler.go | 14 ++++ .../go-gitee/gitee/api_repositories.go | 78 +++++++++++++++++++ .../go-gitee/gitee/model_set_repo_reviewer.go | 23 ++++++ vendor/modules.txt | 2 +- 6 files changed, 119 insertions(+), 2 deletions(-) create mode 100644 vendor/gitee.com/openeuler/go-gitee/gitee/model_set_repo_reviewer.go diff --git a/go.mod b/go.mod index b9a9bd8..1091c10 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module gitee.com/openeuler/ci-bot go 1.13 require ( - gitee.com/openeuler/go-gitee v0.0.0-20201109090511-81a247e275be + gitee.com/openeuler/go-gitee v0.0.0-20201110031012-c7f697cc7b12 github.com/antihax/optional v1.0.0 github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b github.com/golang/protobuf v1.3.2 // indirect diff --git a/go.sum b/go.sum index 3c0c714..5af9418 100644 --- a/go.sum +++ b/go.sum @@ -6,6 +6,8 @@ gitee.com/openeuler/go-gitee v0.0.0-20200424023021-ced5a4d67179 h1:7bHzennVUJlv2 gitee.com/openeuler/go-gitee v0.0.0-20200424023021-ced5a4d67179/go.mod h1:TQrS/LP/DFXLqM+lVrZd4nL2pbTrqiXABGT9PJepVTA= gitee.com/openeuler/go-gitee v0.0.0-20201109090511-81a247e275be h1:eh0eMiF5PNuD196nW8DcVNsGNchbeyKk+nlVgKtnBzg= gitee.com/openeuler/go-gitee v0.0.0-20201109090511-81a247e275be/go.mod h1:TQrS/LP/DFXLqM+lVrZd4nL2pbTrqiXABGT9PJepVTA= +gitee.com/openeuler/go-gitee v0.0.0-20201110031012-c7f697cc7b12 h1:rgQdF72XcPKOVyM3nmf0Lyp7Mh3mDqxD/uMvY7sixOE= +gitee.com/openeuler/go-gitee v0.0.0-20201110031012-c7f697cc7b12/go.mod h1:TQrS/LP/DFXLqM+lVrZd4nL2pbTrqiXABGT9PJepVTA= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= diff --git a/pkg/cibot/repohandler.go b/pkg/cibot/repohandler.go index fbacea9..8584bfc 100644 --- a/pkg/cibot/repohandler.go +++ b/pkg/cibot/repohandler.go @@ -548,6 +548,7 @@ func (handler *RepoHandler) addBranchProtections(community string, r Repository, // handleRepositorySetting handles that the repo settings, including: // 1. type is private or public // 2. commentable is true or false +// 3. set none reviewer but not ci-bot(default) func (handler *RepoHandler) handleRepositorySetting(community string, r Repository) error { // get repos from DB var rs database.Repositories @@ -634,5 +635,18 @@ func (handler *RepoHandler) handleRepositorySetting(community string, r Reposito } } + // set none reviewer but not ci-bot(default) + reviewerBody := gitee.SetRepoReviewer{} + reviewerBody.AccessToken = handler.Config.GiteeToken + reviewerBody.Assigneers = " " + reviewerBody.Testers = " " + reviewerBody.AssigneersNumber = 0 + reviewerBody.TestersNumber = 0 + _, err = handler.GiteeClient.RepositoriesApi.PutV5ReposOwnerRepoReviewer(handler.Context, community, *r.Name, reviewerBody) + if err != nil { + glog.Errorf("Set repository reviewer info failed: %v", err) + return err + } + return nil } diff --git a/vendor/gitee.com/openeuler/go-gitee/gitee/api_repositories.go b/vendor/gitee.com/openeuler/go-gitee/gitee/api_repositories.go index 5cffe97..aaad8fc 100644 --- a/vendor/gitee.com/openeuler/go-gitee/gitee/api_repositories.go +++ b/vendor/gitee.com/openeuler/go-gitee/gitee/api_repositories.go @@ -4456,6 +4456,7 @@ func (a *RepositoriesApiService) PostV5ReposOwnerRepoBranches(ctx context.Contex if localVarHttpHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHttpHeaderAccept } + // body params localVarPostBody = &body r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) if err != nil { @@ -5754,3 +5755,80 @@ func (a *RepositoriesApiService) PutV5ReposOwnerRepoKeysEnableId(ctx context.Con return localVarHttpResponse, nil } + +/* +RepositoriesApiService 修改代码审查设置 +修改代码审查设置 + * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + * @param owner 仓库所属空间地址(企业、组织或个人的地址path) + * @param repo 仓库路径(path) + * @param body 修改代码审查的信息 + + +*/ +func (a *RepositoriesApiService) PutV5ReposOwnerRepoReviewer(ctx context.Context, owner string, repo string, body SetRepoReviewer) (*http.Response, error) { + var ( + localVarHttpMethod = strings.ToUpper("Put") + localVarPostBody interface{} + localVarFileName string + localVarFileBytes []byte + + ) + + // create path and map variables + localVarPath := a.client.cfg.BasePath + "/v5/repos/{owner}/{repo}/reviewer" + localVarPath = strings.Replace(localVarPath, "{"+"owner"+"}", fmt.Sprintf("%v", owner), -1) + localVarPath = strings.Replace(localVarPath, "{"+"repo"+"}", fmt.Sprintf("%v", repo), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := url.Values{} + localVarFormParams := url.Values{} + + // to determine the Content-Type header + localVarHttpContentTypes := []string{"application/json", "multipart/form-data"} + + // set Content-Type header + localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) + if localVarHttpContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHttpContentType + } + + // to determine the Accept header + localVarHttpHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) + if localVarHttpHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHttpHeaderAccept + } + // body params + localVarPostBody = &body + r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) + if err != nil { + return nil, err + } + + localVarHttpResponse, err := a.client.callAPI(r) + if err != nil || localVarHttpResponse == nil { + return localVarHttpResponse, err + } + + localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) + localVarHttpResponse.Body.Close() + if err != nil { + return localVarHttpResponse, err + } + + + if localVarHttpResponse.StatusCode >= 300 { + newErr := GenericSwaggerError{ + body: localVarBody, + error: localVarHttpResponse.Status, + } + + return localVarHttpResponse, newErr + } + + return localVarHttpResponse, nil +} + diff --git a/vendor/gitee.com/openeuler/go-gitee/gitee/model_set_repo_reviewer.go b/vendor/gitee.com/openeuler/go-gitee/gitee/model_set_repo_reviewer.go new file mode 100644 index 0000000..d23535b --- /dev/null +++ b/vendor/gitee.com/openeuler/go-gitee/gitee/model_set_repo_reviewer.go @@ -0,0 +1,23 @@ +/* + * 码云 Open API + * + * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) + * + * API version: 5.3.2 + * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) + */ + +package gitee + +type SetRepoReviewer struct { + // 用户授权码 + AccessToken string `json:"access_token,omitempty"` + // 审查人员 + Assigneers string `json:"assigneers,omitempty"` + // 测试人员 + Testers string `json:"testers,omitempty"` + // 最少审查人数 + AssigneersNumber int32 `json:"assigneers_number,omitempty"` + // 最少测试人员 + TestersNumber int32 `json:"testers_number,omitempty"` +} diff --git a/vendor/modules.txt b/vendor/modules.txt index 7881c08..1977509 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1,4 +1,4 @@ -# gitee.com/openeuler/go-gitee v0.0.0-20201109090511-81a247e275be +# gitee.com/openeuler/go-gitee v0.0.0-20201110031012-c7f697cc7b12 gitee.com/openeuler/go-gitee/gitee # github.com/antihax/optional v1.0.0 github.com/antihax/optional -- Gitee