summaryrefslogtreecommitdiffstats
path: root/models/commit.go
blob: 92a839b7808fc9f22b472630ff9af404b24bea68 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Copyright 2021 Gitea. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.

package models

import (
	asymkey_model "code.gitea.io/gitea/models/asymkey"
	repo_model "code.gitea.io/gitea/models/repo"
	user_model "code.gitea.io/gitea/models/user"
	"code.gitea.io/gitea/modules/git"
)

// ConvertFromGitCommit converts git commits into SignCommitWithStatuses
func ConvertFromGitCommit(commits []*git.Commit, repo *repo_model.Repository) []*SignCommitWithStatuses {
	return ParseCommitsWithStatus(
		asymkey_model.ParseCommitsWithSignature(
			user_model.ValidateCommitsWithEmails(commits),
			repo.GetTrustModel(),
			func(user *user_model.User) (bool, error) {
				return IsOwnerMemberCollaborator(repo, user.ID)
			},
		),
		repo,
	)
}