From 9d7d345c3c9ce810c9264a78a52e496af46ade47 Mon Sep 17 00:00:00 2001 From: Anbraten Date: Tue, 31 Aug 2021 03:00:29 +0200 Subject: [PATCH] Ignore pushes to tags for gitea (#289) closes #274 --- remote/gitea/parse.go | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/remote/gitea/parse.go b/remote/gitea/parse.go index 90c34d7a4..7444a0eff 100644 --- a/remote/gitea/parse.go +++ b/remote/gitea/parse.go @@ -17,6 +17,7 @@ package gitea import ( "io" "net/http" + "strings" "github.com/woodpecker-ci/woodpecker/model" ) @@ -52,17 +53,17 @@ func parseHook(r *http.Request) (*model.Repo, *model.Build, error) { // parsePushHook parses a push hook and returns the Repo and Build details. // If the commit type is unsupported nil values are returned. -func parsePushHook(payload io.Reader) (*model.Repo, *model.Build, error) { - var ( - repo *model.Repo - build *model.Build - ) - +func parsePushHook(payload io.Reader) (repo *model.Repo, build *model.Build, err error) { push, err := parsePush(payload) if err != nil { return nil, nil, err } + // ignore push events for tags + if strings.HasPrefix(push.Ref, "refs/tags/") { + return nil, nil, nil + } + // is this even needed? if push.RefType == refBranch { return nil, nil, nil @@ -75,12 +76,7 @@ func parsePushHook(payload io.Reader) (*model.Repo, *model.Build, error) { // parseCreatedHook parses a push hook and returns the Repo and Build details. // If the commit type is unsupported nil values are returned. -func parseCreatedHook(payload io.Reader) (*model.Repo, *model.Build, error) { - var ( - repo *model.Repo - build *model.Build - ) - +func parseCreatedHook(payload io.Reader) (repo *model.Repo, build *model.Build, err error) { push, err := parsePush(payload) if err != nil { return nil, nil, err @@ -92,7 +88,7 @@ func parseCreatedHook(payload io.Reader) (*model.Repo, *model.Build, error) { repo = repoFromPush(push) build = buildFromTag(push) - return repo, build, err + return repo, build, nil } // parsePullRequestHook parses a pull_request hook and returns the Repo and Build details.