Skip to content

Commit 525bf72

Browse files
committed
check-build-and-verify.sh: show the status of the execution as fast as possible.
I hope that this will help to work around truncated logs on Travis CI: travis-ci/travis-ci#8189
1 parent c6f373f commit 525bf72

File tree

1 file changed

+20
-27
lines changed

1 file changed

+20
-27
lines changed

src/main/scripts/ci/check-build-and-verify.sh

Lines changed: 20 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,14 @@ if [ "${SPRING_PROFILES_ACTIVE:-}" = 'travis' -a "${TRAVIS_PULL_REQUEST:-false}"
3636
DANGER_STATUS=
3737
fi
3838

39+
echo
40+
3941
if [ "$RUN_ONLY_INTEGRATION_TESTS" = 'no' ]; then
4042

4143
# TRAVIS_COMMIT_RANGE: The range of commits that were included in the push or
4244
# pull request. (Note that this is empty for builds triggered by the initial
4345
# commit of a new branch.)
4446
if [ -n "${TRAVIS_COMMIT_RANGE:-}" ]; then
45-
echo
4647
echo "INFO: Range of the commits to be checked: $TRAVIS_COMMIT_RANGE"
4748
echo 'INFO: List of the files modified by this commits range:'
4849
git --no-pager diff --name-only $TRAVIS_COMMIT_RANGE -- | sed 's|^| |' || :
@@ -96,50 +97,59 @@ if [ "$RUN_ONLY_INTEGRATION_TESTS" = 'no' ]; then
9697
echo 'INFO: All checks will be performed'
9798
fi
9899
else
99-
echo
100100
echo "INFO: Couldn't determine a range of the commits: \$TRAVIS_COMMIT_RANGE is empty."
101101
echo 'INFO: All checks will be performed'
102102
fi
103103

104+
echo
105+
104106
if [ "$CS_STATUS" != 'skip' ]; then
105107
mvn --batch-mode checkstyle:check -Dcheckstyle.violationSeverity=warning \
106108
>cs.log 2>&1 || CS_STATUS=fail
107109
fi
110+
print_status "$CS_STATUS" 'Run CheckStyle'
108111

109112
if [ "$PMD_STATUS" != 'skip' ]; then
110113
mvn --batch-mode pmd:check \
111114
>pmd.log 2>&1 || PMD_STATUS=fail
112115
fi
116+
print_status "$PMD_STATUS" 'Run PMD'
113117

114118
if [ "$CODENARC_STATUS" != 'skip' ]; then
115119
mvn --batch-mode codenarc:codenarc -Dcodenarc.maxPriority1Violations=0 -Dcodenarc.maxPriority2Violations=0 -Dcodenarc.maxPriority3Violations=0 \
116120
>codenarc.log 2>&1 || CODENARC_STATUS=fail
117121
fi
122+
print_status "$CODENARC_STATUS" 'Run CodeNarc'
118123

119124
if [ "$LICENSE_STATUS" != 'skip' ]; then
120125
mvn --batch-mode license:check \
121126
>license.log 2>&1 || LICENSE_STATUS=fail
122127
fi
128+
print_status "$LICENSE_STATUS" 'Check license headers'
123129

124130
if [ "$POM_STATUS" != 'skip' ]; then
125131
mvn --batch-mode sortpom:verify -Dsort.verifyFail=stop \
126132
>pom.log 2>&1 || POM_STATUS=fail
127133
fi
134+
print_status "$POM_STATUS" 'Check sorting of pom.xml'
128135

129136
if [ "$BOOTLINT_STATUS" != 'skip' ]; then
130137
find src -type f -name '*.html' | xargs bootlint \
131138
>bootlint.log 2>&1 || BOOTLINT_STATUS=fail
132139
fi
140+
print_status "$BOOTLINT_STATUS" 'Run bootlint'
133141

134142
if [ "$RFLINT_STATUS" != 'skip' ]; then
135143
rflint --error=all --ignore TooFewKeywordSteps --ignore TooManyTestSteps --configure LineTooLong:130 src/test/robotframework \
136144
>rflint.log 2>&1 || RFLINT_STATUS=fail
137145
fi
146+
print_status "$RFLINT_STATUS" 'Run robot framework lint'
138147

139148
if [ "$JASMINE_STATUS" != 'skip' ]; then
140149
mvn --batch-mode jasmine:test \
141150
>jasmine.log 2>&1 || JASMINE_STATUS=fail
142151
fi
152+
print_status "$JASMINE_STATUS" 'Run JavaScript unit tests'
143153

144154
if [ "$HTML_STATUS" != 'skip' ]; then
145155
# FIXME: add check for src/main/config/nginx/503.*html
@@ -156,58 +166,41 @@ if [ "$RUN_ONLY_INTEGRATION_TESTS" = 'no' ]; then
156166
--show-warnings \
157167
>validator.log 2>&1 || HTML_STATUS=fail
158168
fi
169+
print_status "$HTML_STATUS" 'Run html5validator'
159170

160171
if [ "$ENFORCER_STATUS" != 'skip' ]; then
161172
mvn --batch-mode enforcer:enforce \
162173
>enforcer.log 2>&1 || ENFORCER_STATUS=fail
163174
fi
175+
print_status "$ENFORCER_STATUS" 'Run maven-enforcer-plugin'
164176

165177
if [ "$TEST_STATUS" != 'skip' ]; then
166178
mvn --batch-mode test -Denforcer.skip=true -Dmaven.resources.skip=true -DskipMinify=true -DdisableXmlReport=false \
167179
>test.log 2>&1 || TEST_STATUS=fail
168180
fi
181+
print_status "$TEST_STATUS" 'Run unit tests'
169182

170183
if [ "$FINDBUGS_STATUS" != 'skip' ]; then
171184
# run after tests for getting compiled sources
172185
mvn --batch-mode findbugs:check \
173186
>findbugs.log 2>&1 || FINDBUGS_STATUS=fail
174187
fi
188+
print_status "$FINDBUGS_STATUS" 'Run FindBugs'
175189
fi
176190

177191
mvn --batch-mode verify -Denforcer.skip=true -DskipUnitTests=true \
178192
>verify-raw.log 2>&1 || VERIFY_STATUS=fail
179-
180-
if [ "$DANGER_STATUS" != 'skip' ]; then
181-
danger >danger.log 2>&1 || DANGER_STATUS=fail
182-
fi
183-
184193
# Workaround for #538
185194
"$(dirname "$0")/filter-out-htmlunit-messages.pl" <verify-raw.log >verify.log
186195

187-
echo
188-
echo 'Build summary:'
189-
echo
196+
print_status "$VERIFY_STATUS" 'Run integration tests'
190197

191-
if [ "$RUN_ONLY_INTEGRATION_TESTS" = 'no' ]; then
192-
print_status "$CS_STATUS" 'Run CheckStyle'
193-
print_status "$PMD_STATUS" 'Run PMD'
194-
print_status "$CODENARC_STATUS" 'Run CodeNarc'
195-
print_status "$LICENSE_STATUS" 'Check license headers'
196-
print_status "$POM_STATUS" 'Check sorting of pom.xml'
197-
print_status "$BOOTLINT_STATUS" 'Run bootlint'
198-
print_status "$RFLINT_STATUS" 'Run robot framework lint'
199-
print_status "$JASMINE_STATUS" 'Run JavaScript unit tests'
200-
print_status "$HTML_STATUS" 'Run html5validator'
201-
print_status "$ENFORCER_STATUS" 'Run maven-enforcer-plugin'
202-
print_status "$TEST_STATUS" 'Run unit tests'
203-
print_status "$FINDBUGS_STATUS" 'Run FindBugs'
204-
fi
205198

206-
print_status "$VERIFY_STATUS" 'Run integration tests'
199+
if [ "$DANGER_STATUS" != 'skip' ]; then
200+
danger >danger.log 2>&1 || DANGER_STATUS=fail
201+
fi
207202
print_status "$DANGER_STATUS" 'Run danger'
208203

209-
echo
210-
211204
if [ "$RUN_ONLY_INTEGRATION_TESTS" = 'no' ]; then
212205
[ "$CS_STATUS" = 'skip' ] || print_log cs.log 'Run CheckStyle'
213206
[ "$PMD_STATUS" = 'skip' ] || print_log pmd.log 'Run PMD'

0 commit comments

Comments
 (0)