Skip to content

Commit 4708648

Browse files
jaapmarcusAlecRust
andauthored
Update shellcheck test (hestiacp#3081)
* Show only "Failed" checks - Add total files / failures * Fix shell check errors installers * Fix more shell check errors * Use ludeeus/action-shellcheck@master instead * Update .github/workflows/lint.yml Co-authored-by: Alec Rust <me@alecrust.com> * Update lint.yml to use sha1 commit Co-authored-by: Alec Rust <me@alecrust.com>
1 parent 84626ef commit 4708648

File tree

6 files changed

+20
-21
lines changed

6 files changed

+20
-21
lines changed

.github/workflows/lint.yml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,13 @@ jobs:
1111
name: ShellCheck
1212
runs-on: ubuntu-latest
1313
steps:
14-
- name: Checkout code
15-
uses: actions/checkout@v3
16-
17-
- name: Install ShellCheck
18-
run: sudo apt-get install -y shellcheck
14+
- name: Checkout code
15+
uses: actions/checkout@v3
1916

20-
- name: Run ShellCheck script
21-
run: ./test/shellcheck.sh
17+
- name: Run ShellCheck
18+
uses: ludeeus/action-shellcheck@6d3f514f44620b9d4488e380339edc0d9bbe2fba
19+
with:
20+
severity: error
2221

2322
eslint:
2423
name: ESLint

bin/v-add-web-php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ if [ -f "$php_fpm" ] && [ -f "$HESTIA/data/templates/web/php-fpm/PHP-${version/\
4848
fi
4949

5050
# Check if php version is supported
51-
if [[ ! "$multiphp_v" =~ "$version" ]]; then
51+
if [[ ! "$multiphp_v" =~ $version ]]; then
5252
echo "ERROR: Specified PHP version is not supported or does not exist."
5353
exit "$E_INVALID";
5454
fi

bin/v-update-letsencrypt-ssl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ for user in $($HESTIA/bin/v-list-sys-users plain); do
8282
# Loop through all crt aliases
8383
for alias in ${aliases//,/ } ; do
8484
# Validate if the alias still exists in web.conf
85-
if [[ ",$ALIAS," =~ ",$alias," ]]; then
85+
if [[ ",$ALIAS," =~ ,$alias, ]]; then
8686
f_aliases+="$alias,"
8787
fi
8888
done

install/hst-install-debian.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,8 +172,8 @@ sort_config_file(){
172172
# Validate hostname according to RFC1178
173173
validate_hostname () {
174174
# remove extra .
175-
servername = $(echo "$servername" |sed -e "s/[.]*$//g")
176-
servername = $(echo "$domain" |sed -e "s/^[.]*//")
175+
servername=$(echo "$servername" |sed -e "s/[.]*$//g")
176+
servername=$(echo "$domain" |sed -e "s/^[.]*//")
177177
if [[ $(echo "$servername" | grep -o "\." | wc -l) -gt 1 ]] && [[ ! $servername =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
178178
# Hostname valid
179179
return 1

install/hst-install-ubuntu.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -170,8 +170,8 @@ sort_config_file(){
170170
# Validate hostname according to RFC1178
171171
validate_hostname () {
172172
# remove extra .
173-
servername = $(echo "$servername" |sed -e "s/[.]*$//g")
174-
servername = $(echo "$domain" |sed -e "s/^[.]*//")
173+
servername=$(echo "$servername" |sed -e "s/[.]*$//g")
174+
servername=$(echo "$domain" |sed -e "s/^[.]*//")
175175
if [[ $(echo "$servername" | grep -o "\." | wc -l) -gt 1 ]] && [[ ! $servername =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
176176
# Hostname valid
177177
return 1

test/shellcheck.sh

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,20 +24,20 @@
2424
err=0;
2525
shellcheck --version
2626

27+
i=0
28+
f=0
2729
files=$(grep -rlE '#!/bin/(bash|sh)' ./ | grep -vE '\.(git|j2$|md$)');
2830
for file in $files; do
29-
echo "Linting: $file"
31+
i=$(($i+1));
3032
shellcheck -x "$file" --severity="error"
33+
# Only show failed checks
3134
if [ $? -gt 0 ]; then
35+
f=$(($f+1));
36+
echo "Linting: $file"
3237
printf "%s: \033[0;31m Fail \033[0m\n" "$file"
3338
err=1
34-
else
35-
# split loop in 2 parts allowing debuggin in earier stage
36-
printf "%s: \033[0;32m Success \033[0m\n" "$file"
3739
fi
3840
done
41+
echo "$i files checked and $f errors"
3942

40-
if [ $err == 1 ];
41-
then
42-
exit "$err";
43-
fi
43+
exit $err

0 commit comments

Comments
 (0)