pull

package
v1.999.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 31, 2020 License: MIT Imports: 31 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddTestPullRequestTask

func AddTestPullRequestTask(doer *models.User, repoID int64, branch string, isSync bool, oldCommitID, newCommitID string)

AddTestPullRequestTask adds new test tasks by given head/base repository and head/base branch, and generate new patch for testing as needed.

func AddToTaskQueue

func AddToTaskQueue(pr *models.PullRequest)

AddToTaskQueue adds itself to pull request test task queue.

func ChangeTargetBranch

func ChangeTargetBranch(pr *models.PullRequest, doer *models.User, targetBranch string) (err error)

ChangeTargetBranch changes the target branch of this pull request, as the given user.

func CheckPRReadyToMerge

func CheckPRReadyToMerge(pr *models.PullRequest) (err error)

CheckPRReadyToMerge checks whether the PR is ready to be merged (reviews and status checks)

func CloseBranchPulls

func CloseBranchPulls(doer *models.User, repoID int64, branch string) error

CloseBranchPulls close all the pull requests who's head branch is the branch

func CloseRepoBranchesPulls

func CloseRepoBranchesPulls(doer *models.User, repo *models.Repository) error

CloseRepoBranchesPulls close all pull requests which head branches are in the given repository

func CreateCodeComment

func CreateCodeComment(doer *models.User, gitRepo *git.Repository, issue *models.Issue, line int64, content string, treePath string, isReview bool, replyReviewID int64, latestCommitID string) (*models.Comment, error)

CreateCodeComment creates a comment on the code line

func DownloadDiff

func DownloadDiff(pr *models.PullRequest, w io.Writer, patch bool) error

DownloadDiff will write the patch for the pr to the writer

func DownloadDiffOrPatch

func DownloadDiffOrPatch(pr *models.PullRequest, w io.Writer, patch bool) error

DownloadDiffOrPatch will write the patch for the pr to the writer

func DownloadPatch

func DownloadPatch(pr *models.PullRequest, w io.Writer, patch bool) error

DownloadPatch will write the patch for the pr to the writer

func GetDiverging

func GetDiverging(pr *models.PullRequest) (*git.DivergeObject, error)

GetDiverging determines how many commits a PR is ahead or behind the PR base branch

func GetPullRequestCommitStatusState

func GetPullRequestCommitStatusState(pr *models.PullRequest) (structs.CommitStatusState, error)

GetPullRequestCommitStatusState returns pull request merged commit status state

func Init

func Init()

Init runs the task queue to test all the checking status pull requests

func IsCommitStatusContextSuccess

func IsCommitStatusContextSuccess(commitStatuses []*models.CommitStatus, requiredContexts []string) bool

IsCommitStatusContextSuccess returns true if all required status check contexts succeed.

func IsPullCommitStatusPass

func IsPullCommitStatusPass(pr *models.PullRequest) (bool, error)

IsPullCommitStatusPass returns if all required status checks PASS

func IsSignedIfRequired

func IsSignedIfRequired(pr *models.PullRequest, doer *models.User) (bool, error)

IsSignedIfRequired check if merge will be signed if required

func IsUserAllowedToMerge

func IsUserAllowedToMerge(pr *models.PullRequest, p models.Permission, user *models.User) (bool, error)

IsUserAllowedToMerge check if user is allowed to merge PR with given permissions and branch protections

func IsUserAllowedToUpdate

func IsUserAllowedToUpdate(pull *models.PullRequest, user *models.User) (bool, error)

IsUserAllowedToUpdate check if user is allowed to update PR with given permissions and branch protections

func LFSPush

func LFSPush(tmpBasePath, mergeHeadSHA, mergeBaseSHA string, pr *models.PullRequest) error

LFSPush pushes lfs objects referred to in new commits in the head repository from the base repository

func Merge

func Merge(pr *models.PullRequest, doer *models.User, baseGitRepo *git.Repository, mergeStyle models.MergeStyle, message string) (err error)

Merge merges pull request to base repository. Caller should check PR is ready to be merged (review and status checks) FIXME: add repoWorkingPull make sure two merges does not happen at same time.

func MergeRequiredContextsCommitStatus

func MergeRequiredContextsCommitStatus(commitStatuses []*models.CommitStatus, requiredContexts []string) structs.CommitStatusState

MergeRequiredContextsCommitStatus returns a commit status state for given required contexts

func NewPullRequest

func NewPullRequest(repo *models.Repository, pull *models.Issue, labelIDs []int64, uuids []string, pr *models.PullRequest, assigneeIDs []int64) error

NewPullRequest creates new pull request with labels for repository.

func PushToBaseRepo

func PushToBaseRepo(pr *models.PullRequest) (err error)

PushToBaseRepo pushes commits from branches of head repository to corresponding branches of base repository. FIXME: Only push branches that are actually updates?

func SubmitReview

func SubmitReview(doer *models.User, gitRepo *git.Repository, issue *models.Issue, reviewType models.ReviewType, content, commitID string) (*models.Review, *models.Comment, error)

SubmitReview creates a review out of the existing pending review or creates a new one if no pending review exist

func TestPatch

func TestPatch(pr *models.PullRequest) error

TestPatch will test whether a simple patch will apply

func TestPullRequests

func TestPullRequests(ctx context.Context)

TestPullRequests checks and tests untested patches of pull requests. TODO: test more pull requests at same time.

func Update

func Update(pull *models.PullRequest, doer *models.User, message string) error

Update updates pull request with base branch.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL