github: update lint.yml to post details on formatting issue (#3988)

before this change, user need to click into the details for more
details on the formatting issue identified by the lint workflow.

after this change, the workflow pastes the details with a comment,
to provide more specific details on the formatting issue if any.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
This commit is contained in:
Kefu Chai 2024-06-03 21:34:44 +08:00 committed by GitHub
parent d9b90029bf
commit c71d08fc22
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -8,6 +8,7 @@ on:
permissions:
contents: read
pull-requests: write
jobs:
format_code:
@ -21,6 +22,34 @@ jobs:
clangformat: 17.0.5
- name: Run clang-format
id: clang_format
run: |
find include src -name '*.h' -o -name '*.cc' | xargs clang-format -i -style=file -fallback-style=none
git diff --exit-code
git diff | tee fmt.patch
if [ -s fmt.patch ]; then
exit 1
fi
- uses: actions/github-script@v7
if: failure() && steps.clang_format.outcome == 'failure'
with:
script: |
const fs = require('fs');
const patch = fs.readFileSync('fmt.patch', { encoding: 'utf8' });
const comment = `clang-format 17.0.5 found issues in the formatting in your code:
<details>
<summary>
View the diff from clang-format:
</summary>
\`\`\`diff
${patch}
\`\`\`
</details>
`;
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: comment
});