diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2017-05-04 13:42:02 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-04 13:42:02 +0800 |
commit | 1773e88643a2df7e7efbe86ec424409b45a4d576 (patch) | |
tree | 66776994b960b1277264fd4e7d74ce3380701488 /modules/private | |
parent | 59f5bbab0d6c1aa00fd58140860093331ab0140f (diff) | |
download | gitea-1773e88643a2df7e7efbe86ec424409b45a4d576.tar.gz gitea-1773e88643a2df7e7efbe86ec424409b45a4d576.zip |
Drop db operations from hook commands (#1514)
* move all database operations from hook command to web command and instead of internal routes
* bug fixed
* adjust the import path sequences
* remove unused return value on hookSetup
Diffstat (limited to 'modules/private')
-rw-r--r-- | modules/private/branch.go | 43 | ||||
-rw-r--r-- | modules/private/internal.go | 4 | ||||
-rw-r--r-- | modules/private/push_update.go | 43 |
3 files changed, 90 insertions, 0 deletions
diff --git a/modules/private/branch.go b/modules/private/branch.go new file mode 100644 index 0000000000..faee1c918a --- /dev/null +++ b/modules/private/branch.go @@ -0,0 +1,43 @@ +// Copyright 2017 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package private + +import ( + "crypto/tls" + "encoding/json" + "fmt" + + "code.gitea.io/gitea/models" + "code.gitea.io/gitea/modules/log" + "code.gitea.io/gitea/modules/setting" +) + +// GetProtectedBranchBy get protected branch information +func GetProtectedBranchBy(repoID int64, branchName string) (*models.ProtectedBranch, error) { + // Ask for running deliver hook and test pull request tasks. + reqURL := setting.LocalURL + fmt.Sprintf("api/internal/branch/%d/%s", repoID, branchName) + log.GitLogger.Trace("GetProtectedBranchBy: %s", reqURL) + + resp, err := newRequest(reqURL, "GET").SetTLSClientConfig(&tls.Config{ + InsecureSkipVerify: true, + }).Response() + if err != nil { + return nil, err + } + + var branch models.ProtectedBranch + if err := json.NewDecoder(resp.Body).Decode(&branch); err != nil { + return nil, err + } + + defer resp.Body.Close() + + // All 2XX status codes are accepted and others will return an error + if resp.StatusCode/100 != 2 { + return nil, fmt.Errorf("Failed to update public key: %s", decodeJSONError(resp).Err) + } + + return &branch, nil +} diff --git a/modules/private/internal.go b/modules/private/internal.go index 017e265b7c..fbf9d6a011 100644 --- a/modules/private/internal.go +++ b/modules/private/internal.go @@ -1,3 +1,7 @@ +// Copyright 2017 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + package private import ( diff --git a/modules/private/push_update.go b/modules/private/push_update.go new file mode 100644 index 0000000000..348a40e0a2 --- /dev/null +++ b/modules/private/push_update.go @@ -0,0 +1,43 @@ +// Copyright 2017 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package private + +import ( + "crypto/tls" + "encoding/json" + "fmt" + + "code.gitea.io/gitea/models" + "code.gitea.io/gitea/modules/log" + "code.gitea.io/gitea/modules/setting" +) + +// PushUpdate update publick key updates +func PushUpdate(opt models.PushUpdateOptions) error { + // Ask for running deliver hook and test pull request tasks. + reqURL := setting.LocalURL + "api/internal/push/update" + log.GitLogger.Trace("PushUpdate: %s", reqURL) + + body, err := json.Marshal(&opt) + if err != nil { + return err + } + + resp, err := newRequest(reqURL, "POST").Body(body).SetTLSClientConfig(&tls.Config{ + InsecureSkipVerify: true, + }).Response() + if err != nil { + return err + } + + defer resp.Body.Close() + + // All 2XX status codes are accepted and others will return an error + if resp.StatusCode/100 != 2 { + return fmt.Errorf("Failed to update public key: %s", decodeJSONError(resp).Err) + } + + return nil +} |