4343
4444 # Define environment variables:
4545 env:
46- SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
46+ ZULIP_API_KEY : ${{ secrets.ZULIP_API_KEY }}
4747
4848 # Define the sequence of job steps...
4949 steps:
@@ -88,14 +88,23 @@ jobs:
8888 })();"
8989 node --eval "$PLAYWRIGHT_SCRIPT" || exit $?
9090
91- # Send notification to Slack channel if job fails:
92- - name: 'Send status to Slack channel in case of failure'
91+ # Send notification to Zulip if job fails:
92+ - name: 'Send notification to Zulip in case of failure'
9393 # Pin action to full length commit SHA
94- uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
95- with:
96- status: ${{ job.status }}
97- channel: '#npm-ci'
94+ uses: zulip/github-actions-zulip/send-message@e4c8f27c732ba9bd98ac6be0583096dea82feea5 # v1.0.2
9895 if: failure()
96+ with:
97+ api-key: ${{ secrets.ZULIP_API_KEY }}
98+ email: 'github-actions-bot@stdlib.zulipchat.com'
99+ organization-url: 'https://stdlib.zulipchat.com'
100+ to: 'workflows-standalone'
101+ type: 'stream'
102+ topic: ${{ github.event.repository.name }}
103+ content: |
104+ :cross_mark: **${{ github.workflow }}** workflow failed
105+
106+ **Repository:** [${{ github.repository }}](${{ github.server_url }}/${{ github.repository }})
107+ **Run:** [View workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})
99108
100109 # Define job to test ES modules...
101110 test-esm:
@@ -108,7 +117,7 @@ jobs:
108117
109118 # Define environment variables:
110119 env:
111- SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
120+ ZULIP_API_KEY : ${{ secrets.ZULIP_API_KEY }}
112121
113122 # Define the sequence of job steps...
114123 steps:
@@ -132,14 +141,23 @@ jobs:
132141 run: |
133142 node --experimental-network-imports --eval "import( './index.mjs' )" || exit $?
134143
135- # Send notification to Slack channel if job fails:
136- - name: 'Send status to Slack channel in case of failure'
144+ # Send notification to Zulip if job fails:
145+ - name: 'Send notification to Zulip in case of failure'
137146 # Pin action to full length commit SHA
138- uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
139- with:
140- status: ${{ job.status }}
141- channel: '#npm-ci'
147+ uses: zulip/github-actions-zulip/send-message@e4c8f27c732ba9bd98ac6be0583096dea82feea5 # v1.0.2
142148 if: failure()
149+ with:
150+ api-key: ${{ secrets.ZULIP_API_KEY }}
151+ email: 'github-actions-bot@stdlib.zulipchat.com'
152+ organization-url: 'https://stdlib.zulipchat.com'
153+ to: 'workflows-standalone'
154+ type: 'stream'
155+ topic: ${{ github.event.repository.name }}
156+ content: |
157+ :cross_mark: **${{ github.workflow }}** workflow failed
158+
159+ **Repository:** [${{ github.repository }}](${{ github.server_url }}/${{ github.repository }})
160+ **Run:** [View workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})
143161
144162 # Define job to test Deno bundles...
145163 test-deno:
@@ -152,7 +170,7 @@ jobs:
152170
153171 # Define environment variables:
154172 env:
155- SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
173+ ZULIP_API_KEY : ${{ secrets.ZULIP_API_KEY }}
156174
157175 # Define the sequence of job steps...
158176 steps:
@@ -176,11 +194,20 @@ jobs:
176194 run: |
177195 deno eval "import main from './mod.js'" || exit $?
178196
179- # Send notification to Slack channel if job fails:
180- - name: 'Send status to Slack channel in case of failure'
197+ # Send notification to Zulip if job fails:
198+ - name: 'Send notification to Zulip in case of failure'
181199 # Pin action to full length commit SHA
182- uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
183- with:
184- status: ${{ job.status }}
185- channel: '#npm-ci'
200+ uses: zulip/github-actions-zulip/send-message@e4c8f27c732ba9bd98ac6be0583096dea82feea5 # v1.0.2
186201 if: failure()
202+ with:
203+ api-key: ${{ secrets.ZULIP_API_KEY }}
204+ email: 'github-actions-bot@stdlib.zulipchat.com'
205+ organization-url: 'https://stdlib.zulipchat.com'
206+ to: 'workflows-standalone'
207+ type: 'stream'
208+ topic: ${{ github.event.repository.name }}
209+ content: |
210+ :cross_mark: **${{ github.workflow }}** workflow failed
211+
212+ **Repository:** [${{ github.repository }}](${{ github.server_url }}/${{ github.repository }})
213+ **Run:** [View workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})
0 commit comments