Script to fail build on missing authors and copyrights

This commit is contained in:
Jakob Borg 2014-12-08 13:59:34 +01:00
parent 6e83d11d5f
commit 12490eafff

View File

@ -23,22 +23,20 @@ print-missing-authors() {
} }
print-missing-copyright() { print-missing-copyright() {
find . -name \*.go | xargs grep -L 'Copyright (C)' | grep -v Godeps find . -name \*.go | xargs egrep -L 'Copyright \(C\)|automatically generated' | grep -v Godeps | grep -v internal/auto/
} }
print-line-blame() { authors=$(print-missing-authors)
for f in $(find . -name \*.go | grep -v Godep) gui/app.js gui/index.html ; do if [[ ! -z $authors ]] ; then
git blame --line-porcelain $f | grep author-mail echo Author emails not in AUTHORS:
done | sort | uniq -c | sort -n echo $authors
} exit 1
echo Author emails missing in AUTHORS file: fi
print-missing-authors
echo
echo Files missing copyright notice: copy=$(print-missing-copyright)
print-missing-copyright if [[ ! -z $copy ]] ; then
echo echo Files missing copyright notice:
echo $copy
echo Blame lines per author: exit 1
print-line-blame fi