@@ -14,7 +14,8 @@ print_status() {
1414 # $1 equals to 'fail' if check has failed
1515 # $1 equals to 'skip' if check has skipped
1616 local result=" $1 "
17- local msg=" $2 "
17+ local execution_time=" $2 "
18+ local msg=" $3 "
1819
1920 local status=' SUCCESS'
2021 local color=32
@@ -26,7 +27,20 @@ print_status() {
2627 status=' SKIP'
2728 color=33
2829 fi
29- printf " * %-30s \033[1;%dm%-7s\033[0m\n" " $msg " " $color " " $status "
30+
31+ local time
32+ if [ $execution_time -gt 0 ]; then
33+ local mins seconds
34+ mins=$[execution_time / 60]
35+ secs=$[execution_time % 60]
36+ if [ $mins -eq 0 ]; then
37+ time=" $( printf ' %2ss' " $secs " ) "
38+ else
39+ time=" $( printf ' %2sm%2ds' " $mins " " $secs " ) "
40+ fi
41+ fi
42+
43+ printf ' * %-30s% 7s\t\t\033[1;%dm%-7s\033[0m\n' " $msg " " $time " " $color " " $status "
3044}
3145
3246print_log () {
@@ -65,6 +79,23 @@ if [ "${SPRING_PROFILES_ACTIVE:-}" = 'travis' ] && [ "${TRAVIS_PULL_REQUEST:-fal
6579 DANGER_STATUS=
6680fi
6781
82+ CS_TIME=0
83+ PMD_TIME=0
84+ LICENSE_TIME=0
85+ POM_TIME=0
86+ BOOTLINT_TIME=0
87+ RFLINT_TIME=0
88+ SHELLCHECK_TIME=0
89+ JASMINE_TIME=0
90+ HTML_TIME=0
91+ ENFORCER_TIME=0
92+ TEST_TIME=0
93+ CODENARC_TIME=0
94+ SPOTBUGS_TIME=0
95+ VERIFY_TIME=0
96+ ANSIBLE_LINT_TIME=0
97+ DANGER_TIME=0
98+
6899CURDIR=" $( dirname " $0 " ) "
69100EXEC_CMD=" $CURDIR /../execute-command.sh"
70101
@@ -147,87 +178,118 @@ if [ "$RUN_ONLY_INTEGRATION_TESTS" = 'no' ]; then
147178 echo
148179
149180 if [ " $CS_STATUS " != ' skip' ]; then
181+ START_TIME=$SECONDS
150182 " $EXEC_CMD " checkstyle > cs.log 2>&1 || CS_STATUS=fail
183+ CS_TIME=$[SECONDS-START_TIME]
151184 fi
152- print_status " $CS_STATUS " ' Run CheckStyle'
185+ print_status " $CS_STATUS " $CS_TIME ' Run CheckStyle'
153186
154187 if [ " $PMD_STATUS " != ' skip' ]; then
188+ START_TIME=$SECONDS
155189 " $EXEC_CMD " pmd > pmd.log 2>&1 || PMD_STATUS=fail
190+ PMD_TIME=$[SECONDS-START_TIME]
156191 fi
157- print_status " $PMD_STATUS " ' Run PMD'
192+ print_status " $PMD_STATUS " $PMD_TIME ' Run PMD'
158193
159194 if [ " $LICENSE_STATUS " != ' skip' ]; then
195+ START_TIME=$SECONDS
160196 " $EXEC_CMD " check-license > license.log 2>&1 || LICENSE_STATUS=fail
197+ LICENSE_TIME=$[SECONDS-START_TIME]
161198 fi
162- print_status " $LICENSE_STATUS " ' Check license headers'
199+ print_status " $LICENSE_STATUS " $LICENSE_TIME ' Check license headers'
163200
164201 if [ " $POM_STATUS " != ' skip' ]; then
202+ START_TIME=$SECONDS
165203 " $EXEC_CMD " check-pom > pom.log 2>&1 || POM_STATUS=fail
204+ POM_TIME=$[SECONDS-START_TIME]
166205 fi
167- print_status " $POM_STATUS " ' Check sorting of pom.xml'
206+ print_status " $POM_STATUS " $POM_TIME ' Check sorting of pom.xml'
168207
169208 if [ " $BOOTLINT_STATUS " != ' skip' ]; then
209+ START_TIME=$SECONDS
170210 " $EXEC_CMD " bootlint > bootlint.log 2>&1 || BOOTLINT_STATUS=fail
211+ BOOTLINT_TIME=$[SECONDS-START_TIME]
171212 fi
172- print_status " $BOOTLINT_STATUS " ' Run bootlint'
213+ print_status " $BOOTLINT_STATUS " $BOOTLINT_TIME ' Run bootlint'
173214
174215 if [ " $RFLINT_STATUS " != ' skip' ]; then
216+ START_TIME=$SECONDS
175217 " $EXEC_CMD " rflint > rflint.log 2>&1 || RFLINT_STATUS=fail
218+ RFLINT_TIME=$[SECONDS-START_TIME]
176219 fi
177- print_status " $RFLINT_STATUS " ' Run robot framework lint'
220+ print_status " $RFLINT_STATUS " $RFLINT_TIME ' Run robot framework lint'
178221
179222 if [ " $SHELLCHECK_STATUS " != ' skip' ]; then
223+ START_TIME=$SECONDS
180224 " $EXEC_CMD " shellcheck > shellcheck.log 2>&1 || SHELLCHECK_STATUS=fail
225+ SHELLCHECK_TIME=$[SECONDS-START_TIME]
181226 fi
182- print_status " $SHELLCHECK_STATUS " ' Run shellcheck'
227+ print_status " $SHELLCHECK_STATUS " $SHELLCHECK_TIME ' Run shellcheck'
183228
184229 if [ " $JASMINE_STATUS " != ' skip' ]; then
230+ START_TIME=$SECONDS
185231 " $EXEC_CMD " jasmine > jasmine.log 2>&1 || JASMINE_STATUS=fail
232+ JASMINE_TIME=$[SECONDS-START_TIME]
186233 fi
187- print_status " $JASMINE_STATUS " ' Run JavaScript unit tests'
234+ print_status " $JASMINE_STATUS " $JASMINE_TIME ' Run JavaScript unit tests'
188235
189236 if [ " $HTML_STATUS " != ' skip' ]; then
190237 " $EXEC_CMD " html5validator > validator.log 2>&1 || HTML_STATUS=fail
238+ HTML_TIME=$[SECONDS-START_TIME]
191239 fi
192- print_status " $HTML_STATUS " ' Run html5validator'
240+ print_status " $HTML_STATUS " $HTML_TIME ' Run html5validator'
193241
194242 if [ " $ENFORCER_STATUS " != ' skip' ]; then
243+ START_TIME=$SECONDS
195244 " $EXEC_CMD " enforcer > enforcer.log 2>&1 || ENFORCER_STATUS=fail
245+ ENFORCER_TIME=$[SECONDS-START_TIME]
196246 fi
197- print_status " $ENFORCER_STATUS " ' Run maven-enforcer-plugin'
247+ print_status " $ENFORCER_STATUS " $ENFORCER_TIME ' Run maven-enforcer-plugin'
198248
199249 if [ " $TEST_STATUS " != ' skip' ]; then
250+ START_TIME=$SECONDS
200251 " $EXEC_CMD " unit-tests > test.log 2>&1 || TEST_STATUS=fail
252+ TEST_TIME=$[SECONDS-START_TIME]
201253 fi
202- print_status " $TEST_STATUS " ' Run unit tests'
254+ print_status " $TEST_STATUS " $TEST_TIME ' Run unit tests'
203255
204256 if [ " $CODENARC_STATUS " != ' skip' ]; then
257+ START_TIME=$SECONDS
205258 # run after tests for getting compiled sources
206259 " $EXEC_CMD " codenarc > codenarc.log 2>&1 || CODENARC_STATUS=fail
260+ CODENARC_TIME=$[SECONDS-START_TIME]
207261 fi
208- print_status " $CODENARC_STATUS " ' Run CodeNarc'
262+ print_status " $CODENARC_STATUS " $CODENARC_TIME ' Run CodeNarc'
209263
210264 if [ " $SPOTBUGS_STATUS " != ' skip' ]; then
265+ START_TIME=$SECONDS
211266 # run after tests for getting compiled sources
212267 " $EXEC_CMD " spotbugs > spotbugs.log 2>&1 || SPOTBUGS_STATUS=fail
268+ SPOTBUGS_TIME=$[SECONDS-START_TIME]
213269 fi
214- print_status " $SPOTBUGS_STATUS " ' Run SpotBugs'
270+ print_status " $SPOTBUGS_STATUS " $SPOTBUGS_TIME ' Run SpotBugs'
215271
216272 if [ " $ANSIBLE_LINT_STATUS " != ' skip' ]; then
273+ START_TIME=$SECONDS
217274 " $EXEC_CMD " ansible-lint > ansible_lint.log 2>&1 || ANSIBLE_LINT_STATUS=fail
275+ ANSIBLE_LINT_TIME=$[SECONDS-START_TIME]
218276 fi
219- print_status " $ANSIBLE_LINT_STATUS " ' Run Ansible Lint'
277+ print_status " $ANSIBLE_LINT_STATUS " $ANSIBLE_LINT_TIME ' Run Ansible Lint'
220278fi
221279
280+ START_TIME=$SECONDS
222281" $EXEC_CMD " integration-tests > verify.log 2>&1 || VERIFY_STATUS=fail
282+ VERIFY_TIME=$[SECONDS-START_TIME]
223283
224- print_status " $VERIFY_STATUS " ' Run integration tests'
284+ print_status " $VERIFY_STATUS " $VERIFY_TIME ' Run integration tests'
225285
226286
227287if [ " $DANGER_STATUS " != ' skip' ]; then
288+ START_TIME=$SECONDS
228289 " $EXEC_CMD " danger > danger.log 2>&1 || DANGER_STATUS=fail
290+ DANGER_TIME=$[SECONDS-START_TIME]
229291fi
230- print_status " $DANGER_STATUS " ' Run danger'
292+ print_status " $DANGER_STATUS " $DANGER_TIME ' Run danger'
231293
232294if [ " $RUN_ONLY_INTEGRATION_TESTS " = ' no' ]; then
233295 [ " $CS_STATUS " = ' skip' ] || print_log cs.log ' Run CheckStyle'
0 commit comments