Browse Source

build,travis: test commits format

Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
lilik-openwrt-22.03
Etienne Champetier 7 years ago
parent
commit
78712dfca8
2 changed files with 39 additions and 0 deletions
  1. +1
    -0
      .travis.yml
  2. +38
    -0
      .travis_do.sh

+ 1
- 0
.travis.yml View File

@ -11,4 +11,5 @@ before_script:
- ./.travis_do.sh download_sdk - ./.travis_do.sh download_sdk
script: script:
- ./.travis_do.sh test_commits
- ./.travis_do.sh test_packages - ./.travis_do.sh test_packages

+ 38
- 0
.travis_do.sh View File

@ -104,6 +104,44 @@ EOF
exit $RET exit $RET
} }
test_commits() {
RET=0
for commit in $(git rev-list ${TRAVIS_COMMIT_RANGE/.../..}); do
echo_blue "=== Checking commit '$commit'"
if git show --format='%P' -s $commit | grep -qF ' '; then
echo_red "Pull request should not include merge commits"
RET=1
fi
author="$(git show -s --format=%aN $commit)"
if echo $author | grep -q '\S\+\s\+\S\+'; then
echo_green "Author name ($author) seems ok"
else
echo_red "Author name ($author) need to be your real name 'firstname lastname'"
RET=1
fi
subject="$(git show -s --format=%s $commit)"
if echo "$subject" | grep -q '^[0-9A-Za-z,]\+: '; then
echo_green "Commit subject line seems ok ($subject)"
else
echo_red "Commit subject line MUST start with '<package name>: ' ($subject)"
RET=1
fi
body="$(git show -s --format=%b $commit)"
sob="$(git show -s --format='Signed-off-by: %aN <%aE>' $commit)"
if echo "$body" | grep -qF "$sob"; then
echo_green "Signed-off-by match author"
else
echo_red "Signed-off-by is missing or doesn't match author (should be '$sob')"
RET=1
fi
done
exit $RET
}
echo_blue "=== Travis ENV" echo_blue "=== Travis ENV"
env env
echo_blue "=== Travis ENV" echo_blue "=== Travis ENV"


Loading…
Cancel
Save