Skip to content

Commit 991c66f

Browse files
committed
chore(workflows): avoid full approvals
1 parent 4cc4c23 commit 991c66f

1 file changed

Lines changed: 9 additions & 4 deletions

File tree

.github/workflows/codeowners-approved-slack.yml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@ on:
88
required: false
99
type: boolean
1010
default: true
11+
require-full-approval:
12+
description: "If true, only notify when reviewDecision is APPROVED. If false, notify on first approval."
13+
required: false
14+
type: boolean
15+
default: false
1116
slack-message-prefix:
1217
description: "Custom prefix for Slack message (emoji + text)"
1318
required: false
@@ -84,7 +89,7 @@ jobs:
8489
- name: Skip notification (conditions not met)
8590
if: |
8691
(inputs.skip-draft && steps.pr.outputs.is_draft == 'true') ||
87-
steps.pr.outputs.review_decision != 'APPROVED' ||
92+
(inputs.require-full-approval && steps.pr.outputs.review_decision != 'APPROVED') ||
8893
steps.pr.outputs.already_notified == 'true'
8994
run: |
9095
echo "### Notification Skipped" >> $GITHUB_STEP_SUMMARY
@@ -98,7 +103,7 @@ jobs:
98103
- name: Post to Slack
99104
if: |
100105
(inputs.skip-draft == false || steps.pr.outputs.is_draft != 'true') &&
101-
steps.pr.outputs.review_decision == 'APPROVED' &&
106+
(inputs.require-full-approval == false || steps.pr.outputs.review_decision == 'APPROVED') &&
102107
steps.pr.outputs.already_notified != 'true'
103108
uses: slackapi/slack-github-action@v2
104109
with:
@@ -112,7 +117,7 @@ jobs:
112117
- name: Add marker comment (dedupe for this SHA)
113118
if: |
114119
(inputs.skip-draft == false || steps.pr.outputs.is_draft != 'true') &&
115-
steps.pr.outputs.review_decision == 'APPROVED' &&
120+
(inputs.require-full-approval == false || steps.pr.outputs.review_decision == 'APPROVED') &&
116121
steps.pr.outputs.already_notified != 'true'
117122
uses: actions/github-script@v7
118123
with:
@@ -133,7 +138,7 @@ jobs:
133138
- name: Summary (notification sent)
134139
if: |
135140
(inputs.skip-draft == false || steps.pr.outputs.is_draft != 'true') &&
136-
steps.pr.outputs.review_decision == 'APPROVED' &&
141+
(inputs.require-full-approval == false || steps.pr.outputs.review_decision == 'APPROVED') &&
137142
steps.pr.outputs.already_notified != 'true'
138143
run: |
139144
echo "### Slack Notification Sent" >> $GITHUB_STEP_SUMMARY

0 commit comments

Comments
 (0)