Skip to content

Commit 87bc8a8

Browse files
ci: make a missing Slack webhook a clear failure, not a cryptic one
The weekly release failed on Aug 28 and the alert never reached Slack. The notify job failed with: Missing input! Either a method or webhook is required to take action. COSY_WEBHOOK_URL resolves to an empty string, so GitHub omits the `webhook` input entirely and the action rejects the call. The secret exists but was created 2026-08-12 and never updated -- one day before the weekly release workflow landed in #108 -- and the notify path was not exercised until the Aug 28 failure, so this alert has never worked. Check the webhook in a preflight step that names the missing secret, and set errors: true so Slack-side delivery failures fail the step instead of reporting green. Neither change can populate the secret; that still needs setting in repo settings. They make the next failure say so in one line.
1 parent 7ec133c commit 87bc8a8

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

.github/workflows/weekly-release.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,13 +82,31 @@ jobs:
8282
- version
8383
- release
8484
steps:
85+
# Check the webhook before handing it to the action. An unset or blank secret otherwise
86+
# fails with "Missing input! Either a method or webhook is required to take action.",
87+
# which reads like a workflow syntax bug rather than a missing secret -- that is how the
88+
# Aug 28 alert was lost.
89+
- name: Verify the Slack webhook is configured
90+
env:
91+
WEBHOOK: ${{ secrets.COSY_WEBHOOK_URL }}
92+
run: |
93+
if [ -z "${WEBHOOK}" ]; then
94+
echo "::error::COSY_WEBHOOK_URL is unset or empty, so no Slack alert can be sent for this broken release. Set it under Settings > Secrets and variables > Actions."
95+
exit 1
96+
fi
97+
echo "Webhook is configured."
98+
8599
- name: "Send Message"
86100
uses: slackapi/slack-github-action@dcb1066f776dd043e64d0e8ba94ca15cc7e1875d # v4.0.0
87101
env:
88102
MESSAGE: "_*Weekly RIE release failed*_ :turtle-headache::broken_heart:\n\nNo new pre-release was published, so CVE remediation is stalled until this is fixed. Investigate the failed workflow run <${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|here> :mag_right:"
89103
with:
90104
webhook: ${{ secrets.COSY_WEBHOOK_URL }}
91105
webhook-type: incoming-webhook
106+
# Default is false, which swallows Slack-side delivery errors and reports the step as
107+
# green. For the alert that tells us releases are broken, a silent failure is the one
108+
# outcome we cannot afford.
109+
errors: true
92110
payload: |
93111
blocks:
94112
- type: "section"

0 commit comments

Comments
 (0)