From e95363ad99ec0cac86f2e8081b2789a13c60213f Mon Sep 17 00:00:00 2001 From: Christophe Hurpeau Date: Sun, 29 Jan 2023 17:39:21 +0100 Subject: [PATCH] fix: make sure PRs are reviewed before merged unless the config allows it and it is the owner --- .../pr-handlers/actions/utils/steps/codeReviewStep.ts | 9 ++++++--- src/events/pr-handlers/opened.ts | 5 ++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/events/pr-handlers/actions/utils/steps/codeReviewStep.ts b/src/events/pr-handlers/actions/utils/steps/codeReviewStep.ts index f64b799c8..3137088cf 100644 --- a/src/events/pr-handlers/actions/utils/steps/codeReviewStep.ts +++ b/src/events/pr-handlers/actions/utils/steps/codeReviewStep.ts @@ -24,9 +24,12 @@ export function calcCodeReviewStep({ const hasChangesRequested = repoContext.hasChangesRequestedReview(labels); const hasApproves = repoContext.hasApprovesReview(labels); const needsReviewGroupNames = repoContext.getNeedsReviewGroupNames(labels); - const isMissingApprobation = repoContext.config.requiresReviewRequest - ? !repoContext.hasApprovesReview(labels) - : false; + const isMissingApprobation = + repoContext.config.requiresReviewRequest || + pullRequest.user?.type === 'Bot' || + pullRequest.user?.id !== repoContext.accountEmbed.id + ? !repoContext.hasApprovesReview(labels) + : false; return { state: (() => { diff --git a/src/events/pr-handlers/opened.ts b/src/events/pr-handlers/opened.ts index 79d208414..0348381f5 100644 --- a/src/events/pr-handlers/opened.ts +++ b/src/events/pr-handlers/opened.ts @@ -47,7 +47,10 @@ export default function opened(app: Probot, appContext: AppContext): void { { reviewGroup: 'dev', add: - (repoContext.config.requiresReviewRequest || isFromBot) && + (repoContext.config.requiresReviewRequest || + isFromBot || + pullRequest.user.id !== + context.payload.repository.owner.id) && !pullRequest.draft ? ['needsReview'] : [],