Просмотр исходного кода

ci: check code style

run elvis and nl-at-eof check
Zaiming Shi 4 лет назад
Родитель
Сommit
dc58e4a441
2 измененных файлов с 15 добавлено и 5 удалено
  1. 6 2
      .github/workflows/elvis_lint.yaml
  2. 9 3
      scripts/check-nl-at-eof.sh

+ 6 - 2
.github/workflows/elvis_lint.yaml

@@ -1,4 +1,4 @@
-name: Elvis Linter
+name: Code style check
 
 on: [pull_request]
 
@@ -12,5 +12,9 @@ jobs:
         run: |
           echo "https://ci%40emqx.io:${{ secrets.CI_GIT_TOKEN }}@github.com" > $HOME/.git-credentials
           git config --global credential.helper store
-      - run: |
+      - name: Run elvis check
+        run: |
           ./scripts/elvis-check.sh $GITHUB_BASE_REF
+      - name: Check line-break at EOF
+      - run: |
+          ./scripts/check-nl-at-eof.sh

+ 9 - 3
scripts/check-nl-at-eof.sh

@@ -6,7 +6,7 @@ cd -P -- "$(dirname -- "$0")/.."
 
 nl_at_eof() {
     local file="$1"
-    if ! [ -f $file ]; then
+    if ! [ -f "$file" ]; then
         return
     fi
     case "$file" in
@@ -17,10 +17,16 @@ nl_at_eof() {
     local lastbyte
     lastbyte="$(tail -c 1 "$file" 2>&1)"
     if [ "$lastbyte" != '' ]; then
-        echo $file
+        echo "$file"
+        return 1
     fi
 }
 
+n=0
 while read -r file; do
-    nl_at_eof "$file"
+    if ! nl_at_eof "$file"; then
+        n=$(( n + 1 ))
+    fi
 done < <(git ls-files)
+
+exit $n