Skip to content

Commit e2a7999

Browse files
TheiLLeniumStudiossavitaashture
authored andcommitted
fix(gitlab/webhooks): revision when there are multiple commits
1 parent e7edace commit e2a7999

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

pkg/provider/gitlab/parse_payload.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,14 @@ func (v *Provider) ParsePayload(_ context.Context, _ *params.Run, request *http.
5757
processedEvent.SourceProjectID = gitEvent.ObjectAttributes.SourceProjectID
5858
processedEvent.TargetProjectID = gitEvent.Project.ID
5959
case *gitlab.TagEvent:
60+
lastCommitIdx := len(gitEvent.Commits) - 1
6061
processedEvent = info.NewEvent()
6162
processedEvent.Sender = gitEvent.UserUsername
6263
processedEvent.DefaultBranch = gitEvent.Project.DefaultBranch
6364
processedEvent.URL = gitEvent.Project.WebURL
64-
processedEvent.SHA = gitEvent.Commits[0].ID
65-
processedEvent.SHAURL = gitEvent.Commits[0].URL
66-
processedEvent.SHATitle = gitEvent.Commits[0].Title
65+
processedEvent.SHA = gitEvent.Commits[lastCommitIdx].ID
66+
processedEvent.SHAURL = gitEvent.Commits[lastCommitIdx].URL
67+
processedEvent.SHATitle = gitEvent.Commits[lastCommitIdx].Title
6768
processedEvent.HeadBranch = gitEvent.Ref
6869
processedEvent.BaseBranch = gitEvent.Ref
6970
processedEvent.HeadURL = gitEvent.Project.WebURL
@@ -80,13 +81,14 @@ func (v *Provider) ParsePayload(_ context.Context, _ *params.Run, request *http.
8081
if len(gitEvent.Commits) == 0 {
8182
return nil, fmt.Errorf("no commits attached to this push event")
8283
}
84+
lastCommitIdx := len(gitEvent.Commits) - 1
8385
processedEvent = info.NewEvent()
8486
processedEvent.Sender = gitEvent.UserUsername
8587
processedEvent.DefaultBranch = gitEvent.Project.DefaultBranch
8688
processedEvent.URL = gitEvent.Project.WebURL
87-
processedEvent.SHA = gitEvent.Commits[0].ID
88-
processedEvent.SHAURL = gitEvent.Commits[0].URL
89-
processedEvent.SHATitle = gitEvent.Commits[0].Title
89+
processedEvent.SHA = gitEvent.Commits[lastCommitIdx].ID
90+
processedEvent.SHAURL = gitEvent.Commits[lastCommitIdx].URL
91+
processedEvent.SHATitle = gitEvent.Commits[lastCommitIdx].Title
9092
processedEvent.HeadBranch = gitEvent.Ref
9193
processedEvent.BaseBranch = gitEvent.Ref
9294
processedEvent.HeadURL = gitEvent.Project.WebURL

0 commit comments

Comments
 (0)