From bcab8c07660ff090aa427b55d6242440990790ab Mon Sep 17 00:00:00 2001 From: Cristian Dominguez Date: Sun, 4 Jul 2021 21:38:17 -0300 Subject: [PATCH] Only merge PRs if branch checks have passed --- pkg/cmd/pr/merge/merge.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/cmd/pr/merge/merge.go b/pkg/cmd/pr/merge/merge.go index 6ddac9016..b9efda9fe 100644 --- a/pkg/cmd/pr/merge/merge.go +++ b/pkg/cmd/pr/merge/merge.go @@ -196,7 +196,8 @@ func mergeRun(opts *MergeOptions) error { return cmdutil.SilentError } - if !opts.AutoMergeEnable && pr.MergeStateStatus == "BLOCKED" { + approved := pr.MergeStateStatus == "CLEAN" || pr.MergeStateStatus == "HAS_HOOKS" || pr.MergeStateStatus == "UNSTABLE" + if !opts.AutoMergeEnable && !approved { fmt.Fprintf( opts.IO.ErrOut, "%s Merging is blocked. Enable auto-merge to automatically merge it when all requirements are met with: gh pr merge %d --auto\n", @@ -206,7 +207,7 @@ func mergeRun(opts *MergeOptions) error { deleteBranch := opts.DeleteBranch crossRepoPR := pr.HeadRepositoryOwner.Login != baseRepo.RepoOwner() - autoMerge := opts.AutoMergeEnable && pr.MergeStateStatus == "BLOCKED" + autoMerge := opts.AutoMergeEnable && !approved isPRAlreadyMerged := pr.State == "MERGED" if !isPRAlreadyMerged {