Skip to content

Comment protobuf breaking action outcome on the pull request #21

Comment protobuf breaking action outcome on the pull request

Comment protobuf breaking action outcome on the pull request #21

Workflow file for this run

name: Comment protobuf breaking action outcome on the pull request
permissions:
# for finding and downloading artifacts.
actions: read
# for commenting on pull requests.
pull-requests: write
# the content of the repo is irrelevant to this workflow.
contents: none
on:
workflow_run:
workflows: ["Protobuf"]
types:
- completed
jobs:
download-artifact-and-comment:
runs-on: ubuntu-latest
if: >
github.event.workflow_run.conclusion == 'success'
steps:
- name: 'Download artifact'
uses: actions/[email protected]
with:
script: |
var artifacts = await github.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: ${{github.event.workflow_run.id }},
});
var matchArtifact = artifacts.data.artifacts.find((artifact) => {
return artifact.name == "result";
});
if (!matchArtifact) {
var core = require('@actions/core');
core.setFailed('Artifact "result" not found.');
return;
}
var download = await github.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: matchArtifact.id,
archive_format: 'zip',
});
var fs = require('fs');
fs.writeFileSync('${{github.workspace}}/result.zip', Buffer.from(download.data));
- run: unzip result.zip -d result
- name: Read PR number and outcome
run: |
pr_number=$(cat "result/pr_number.txt")
outcome=$(cat "result/outcome.txt")
echo "PR_NUMBER=${pr_number}" >> "$GITHUB_ENV"
echo "OUTCOME=${outcome}" >> "$GITHUB_ENV"
- name: Find comment
id: find-comment
uses: peter-evans/find-comment@v2
with:
issue-number: ${{ env.PR_NUMBER }}
comment-author: 'github-actions[bot]'
body-includes: buf breaking change
- name: Comment status of break-check in the case of failure
if: ${{ env.OUTCOME == 'failure' }}
uses: peter-evans/create-or-update-comment@v3
with:
issue-number: ${{ env.PR_NUMBER }}
comment-id: ${{ steps.find-comment.outputs.comment-id }}
body: |
${{ github.sha }} (${{ github.event.workflow_run.updated_at }}) has a buf breaking change.
View the workflow run: [here](https://github.com/${{ github.repository }}/actions/runs/${{ github.event.workflow_run.id }})
edit-mode: append
- name: Comment status of break-check in the case of success
if: env.OUTCOME == 'success' && steps.find-comment.outputs.comment-id != ''
uses: peter-evans/create-or-update-comment@v3
with:
issue-number: ${{ env.PR_NUMBER }}
comment-id: ${{ steps.find-comment.outputs.comment-id }}
body: |
${{ github.sha }} (${{ github.event.workflow_run.updated_at }}) has no buf breaking changes.
View the workflow run: [here](https://github.com/${{ github.repository }}/actions/runs/${{ github.event.workflow_run.id }})
edit-mode: append