Skip to content

Commit

Permalink
fix: display only non ignored failed checks in status check
Browse files Browse the repository at this point in the history
  • Loading branch information
christophehurpeau committed Jan 23, 2023
1 parent bdd5620 commit e1241cb
Showing 1 changed file with 18 additions and 15 deletions.
33 changes: 18 additions & 15 deletions src/events/pr-handlers/actions/updateStatusCheckFromStepsState.ts
Expand Up @@ -5,6 +5,7 @@ import type { StatusInfo } from '../../../accountConfigs/types';
import { ExcludesFalsy } from '../../../utils/Excludes';
import type { PullRequestWithDecentData } from '../utils/PullRequestData';
import type { ReviewflowPrContext } from '../utils/createPullRequestContext';
import { getFailedOrWaitingChecksAndStatuses } from '../utils/getFailedOrWaitingChecksAndStatuses';
import createStatus, { isSameStatus } from './utils/createStatus';
import hasLabelInPR from './utils/labels/hasLabelInPR';
import type { StepsState } from './utils/steps/calcStepsState';
Expand Down Expand Up @@ -176,23 +177,25 @@ export const updateStatusCheckFromStepsState = <
// STEP 2: CHECKS
if (stepsState.checks.state !== 'passed') {
if (stepsState.checks.isFailed) {
const failedChecks =
reviewflowPrContext.reviewflowPr.checksConclusion &&
Object.values(reviewflowPrContext.reviewflowPr.checksConclusion)
.filter(({ conclusion }) => conclusion === 'failure')
.map(({ name }) => name);

const failedStatuses =
reviewflowPrContext.reviewflowPr.statusesConclusion &&
Object.values(reviewflowPrContext.reviewflowPr.statusesConclusion)
.filter(({ state }) => state === 'failure')
.map(({ context }) => context);
let failedChecksAndStatuses: string[] = [];

const failedChecksAndStatuses = [
...(failedChecks || []),
...(failedStatuses || []),
].filter(ExcludesFalsy);
if (
reviewflowPrContext.reviewflowPr.checksConclusion &&
reviewflowPrContext.reviewflowPr.statusesConclusion
) {
const { failedChecks, failedStatuses } =
getFailedOrWaitingChecksAndStatuses(
{
checksConclusionRecord:
reviewflowPrContext.reviewflowPr.checksConclusion,
statusesConclusionRecord:
reviewflowPrContext.reviewflowPr.statusesConclusion,
},
repoContext,
);

failedChecksAndStatuses = [...failedChecks, ...failedStatuses];
}
return createFailedStatusCheck(
`Checks failed${
failedChecksAndStatuses.length > 0
Expand Down

0 comments on commit e1241cb

Please sign in to comment.