Monitor Dependency Update Failures #4629
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Monitor Dependency Update Failures | |
on: | |
workflow_run: | |
workflows: ["continuous integration"] | |
types: | |
- completed | |
branches: | |
- 'update-dependencies-**' | |
jobs: | |
monitor-failures: | |
runs-on: ubuntu-latest | |
if: ${{ github.event.workflow_run.conclusion == 'failure' }} | |
steps: | |
- name: Construct message | |
uses: actions/github-script@v7 | |
id: construct_message | |
with: | |
github-token: ${{ secrets.UPDATE_DEPENDENCIES_TOKEN }} | |
result-encoding: string | |
script: | | |
const owner = context.repo.owner, repo = context.repo.repo; | |
let output = "❌ `lake update` [failed](" + context.payload.workflow_run.html_url + "). " | |
let prs = context.payload.workflow_run.pull_requests | |
if (prs.length) { | |
for (let pr of prs) { | |
const { data: pullRequest } = await github.rest.pulls.get({ | |
owner, | |
repo, | |
pull_number: pr.number, | |
}); | |
output += "Found [PR " + pr.number + "](" + pullRequest.html_url + "). " | |
await github.rest.issues.removeLabel({ | |
owner, | |
repo, | |
issue_number: pr.number, | |
name: "auto-merge-after-CI", | |
}); | |
} | |
} else { | |
output += "No PR found for this run!"; | |
} | |
return output; | |
- name: Send Zulip message | |
uses: zulip/github-actions-zulip/send-message@v1 | |
with: | |
api-key: ${{ secrets.ZULIP_API_KEY }} | |
email: '[email protected]' | |
organization-url: 'https://leanprover.zulipchat.com' | |
to: 'mathlib reviewers' | |
type: 'stream' | |
topic: 'Mathlib `lake update` failure' | |
content: | | |
${{ steps.construct_message.outputs.result }} |