mirror of
https://github.com/jgm/pandoc.git
synced 2026-07-10 11:27:06 +00:00
40 lines
1.1 KiB
YAML
40 lines
1.1 KiB
YAML
name: commit-validation
|
|
on: [ push ]
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
check-commit-msg-length:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Check commit message length
|
|
id: check-commit-msg-length
|
|
uses: actions/github-script@v7
|
|
with:
|
|
result-encoding: json
|
|
script: |
|
|
var longlines = 0;
|
|
const commits = ${{ toJSON(github.event.commits) }};
|
|
for (const commit of commits) {
|
|
for (const line of commit.message.split('\n')) {
|
|
if (line.length > 78) {
|
|
longlines += 1;
|
|
console.log("Overlong line:\n" + line);
|
|
}
|
|
}
|
|
}
|
|
return longlines
|
|
- name: Get result
|
|
run: |
|
|
result=${{steps.check-commit-msg-length.outputs.result}}
|
|
if [[ $result -eq 0 ]]; then
|
|
echo "Ok"
|
|
exit 0
|
|
else
|
|
echo "Commit messages contain $result lines longer than 78 characters."
|
|
echo "See under 'Check commit message length' for a list of the lines."
|
|
exit 1
|
|
fi
|