24
24
- deps_url="https://mbed-os-ci.s3-eu-west-1.amazonaws.com/jenkins-ci/deps"
25
25
- deps_dir="${HOME}/.cache/deps"
26
26
27
- cache :
28
-
29
27
cache :
30
28
pip : true
31
29
directories :
32
- - $HOME/.cache/deps
30
+ - ${ HOME} /.cache/deps
33
31
34
32
35
33
before_install :
@@ -83,7 +81,7 @@ matrix:
83
81
mkdir -p BUILD && tar xf astyle.tar.gz -C BUILD;
84
82
cd BUILD/astyle/build/gcc;
85
83
make;
86
- export PATH=$ PWD/bin:$PATH;
84
+ export PATH="${ PWD} /bin:${ PATH}" ;
87
85
cd -
88
86
- astyle --version
89
87
# Fetch remaining information needed for branch comparison
@@ -221,31 +219,33 @@ matrix:
221
219
env : NAME=events EVENTS=events
222
220
script :
223
221
# Check that example compiles
224
- - sed -n '/``` cpp/,/```/{/```$/Q;/```/d;p;}' $EVENTS/README.md > main.cpp
222
+ - sed -n '/``` cpp/,/```/{/```$/Q;/```/d;p;}' ${ EVENTS} /README.md > main.cpp
225
223
- python tools/make.py -t GCC_ARM -m K64F --source=. --build=BUILD/K64F/GCC_ARM -j0
226
224
# Check that example compiles without rtos
227
- - sed -n '/``` cpp/,/```/{/```$/Q;/```/d;p;}' $EVENTS/README.md > main.cpp
228
- - rm -r rtos usb features/cellular features/netsocket features/nanostack features/lwipstack features/frameworks/greentea-client features/frameworks/utest features/frameworks/unity components BUILD
225
+ - sed -n '/``` cpp/,/```/{/```$/Q;/```/d;p;}' ${EVENTS}/README.md > main.cpp
226
+ - |
227
+ rm -r rtos usb features/cellular features/netsocket features/nanostack \
228
+ features/lwipstack features/frameworks/greentea-client \
229
+ features/frameworks/utest features/frameworks/unity components BUILD
229
230
- python tools/make.py -t GCC_ARM -m DISCO_F401VC --source=. --build=BUILD/DISCO_F401VC/GCC_ARM -j0
230
231
# Run local equeue tests
231
- - make -C $EVENTS/equeue test
232
+ - make -C ${ EVENTS} /equeue test
232
233
# Run profiling tests
233
- - make -C $EVENTS/equeue prof | tee prof
234
+ - make -C ${ EVENTS} /equeue prof | tee prof
234
235
after_success :
235
- # update status if we succeeded, compare with master if possible
236
+ # Update status, comparing with master if possible.
236
237
- |
237
238
CURR=$(grep -o '[0-9]\+ cycles' prof | awk '{sum += $1} END {print sum}')
238
- PREV=$(curl -u "$MBED_BOT" https://api.github.com/repos/$TRAVIS_REPO_SLUG/status/master \
239
- | jq -re "select(.sha != \"$TRAVIS_COMMIT\")
240
- | .statuses[] | select(.context == \"travis-ci/$NAME\").description
239
+ PREV=$(curl -u "${ MBED_BOT} " https://api.github.com/repos/${ TRAVIS_REPO_SLUG} /status/master \
240
+ | jq -re "select(.sha != \"${ TRAVIS_COMMIT} \")
241
+ | .statuses[] | select(.context == \"travis-ci/${ NAME} \").description
241
242
| capture(\"runtime is (?<runtime>[0-9]+)\").runtime" \
242
243
|| echo 0)
243
244
244
- #STATUSM="Passed, runtime is ${CURR} cycles"
245
- #if [ "$PREV" -ne 0 ]
246
- #then
247
- # STATUSM="$STATUSM ($(python -c "print '%+d' % ($CURR-$PREV)") cycles)"
248
- #fi
245
+ delta=""
246
+ [ "${PREV}" -ne 0 ] && delta="($(printf "%+d" "$(( ${CURR} - ${PREV} ))" cycles)"
247
+
248
+ set_status "success" "Success! Runtime is ${CURR} cycles. ${delta}"
249
249
250
250
- << : *extended-vm
251
251
name : " littlefs"
@@ -269,7 +269,7 @@ matrix:
269
269
- git -C littlefs_fuse checkout 3f1ed6e37799e49e3710830dc6abb926d5503cf2
270
270
- echo '*' > littlefs_fuse/.mbedignore
271
271
- rm -rf littlefs_fuse/littlefs/*
272
- - cp -r $(git ls-tree --name-only HEAD $LITTLEFS/littlefs/) littlefs_fuse/littlefs
272
+ - cp -r $(git ls-tree --name-only HEAD ${ LITTLEFS} /littlefs/) littlefs_fuse/littlefs
273
273
# Create file-backed disk
274
274
- mkdir MOUNT
275
275
- sudo chmod a+rw /dev/loop0
@@ -279,44 +279,43 @@ matrix:
279
279
script :
280
280
# Check that example compiles
281
281
- export CFLAGS="-Werror -Wno-format"
282
- - sed -n '/``` c++/,/```/{/```/d;p;}' $LITTLEFS/README.md > main.cpp
282
+ - sed -n '/``` c++/,/```/{/```/d;p;}' ${ LITTLEFS} /README.md > main.cpp
283
283
- python tools/make.py -t GCC_ARM -m K82F --source=. --build=BUILD/K82F/GCC_ARM -j0
284
284
# Run local littlefs tests
285
- - make -C$LITTLEFS/littlefs test QUIET=1
285
+ - make -C${ LITTLEFS} /littlefs test QUIET=1
286
286
# Run local littlefs tests with set of variations
287
- - make -C$LITTLEFS/littlefs test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=64 -DLFS_PROG_SIZE=64"
288
- - make -C$LITTLEFS/littlefs test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=1 -DLFS_PROG_SIZE=1"
289
- - make -C$LITTLEFS/littlefs test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=512 -DLFS_PROG_SIZE=512"
290
- - make -C$LITTLEFS/littlefs test QUIET=1 CFLAGS+="-DLFS_BLOCK_COUNT=1023 -DLFS_LOOKAHEAD=2048"
291
- - make -C$LITTLEFS/littlefs clean test QUIET=1 CFLAGS+="-DLFS_NO_INTRINSICS"
287
+ - make -C${ LITTLEFS} /littlefs test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=64 -DLFS_PROG_SIZE=64"
288
+ - make -C${ LITTLEFS} /littlefs test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=1 -DLFS_PROG_SIZE=1"
289
+ - make -C${ LITTLEFS} /littlefs test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=512 -DLFS_PROG_SIZE=512"
290
+ - make -C${ LITTLEFS} /littlefs test QUIET=1 CFLAGS+="-DLFS_BLOCK_COUNT=1023 -DLFS_LOOKAHEAD=2048"
291
+ - make -C${ LITTLEFS} /littlefs clean test QUIET=1 CFLAGS+="-DLFS_NO_INTRINSICS"
292
292
# Self-hosting littlefs fuzz test with littlefs-fuse
293
293
- make -Clittlefs_fuse
294
294
- littlefs_fuse/lfs --format /dev/loop0
295
295
- littlefs_fuse/lfs /dev/loop0 MOUNT
296
296
- ls MOUNT
297
297
- mkdir MOUNT/littlefs
298
- - cp -r $(git ls-tree --name-only HEAD $LITTLEFS/littlefs/) MOUNT/littlefs
298
+ - cp -r $(git ls-tree --name-only HEAD ${ LITTLEFS} /littlefs/) MOUNT/littlefs
299
299
- ls MOUNT/littlefs
300
300
- CFLAGS="-Wno-format" make -CMOUNT/littlefs -B test_dirs test_files QUIET=1
301
301
# Compile and find the code size with smallest configuration
302
- - cd $TRAVIS_BUILD_DIR/$ LITTLEFS/littlefs
302
+ - cd ${ TRAVIS_BUILD_DIR}/${ LITTLEFS} /littlefs
303
303
- make clean size
304
304
CC='arm-none-eabi-gcc -mthumb'
305
305
OBJ="$(ls lfs*.o | tr '\n' ' ')"
306
306
CFLAGS+="-DLFS_NO_ASSERT -DLFS_NO_DEBUG -DLFS_NO_WARN -DLFS_NO_ERROR"
307
307
| tee sizes
308
308
after_success :
309
- # update status if we succeeded, compare with master if possible
309
+ # Update status, comparing with master if possible.
310
310
- |
311
311
CURR=$(tail -n1 sizes | awk '{print $1}')
312
- PREV=$(curl -u "$MBED_BOT" https://api.github.com/repos/$TRAVIS_REPO_SLUG/status/master \
313
- | jq -re "select(.sha != \"$TRAVIS_COMMIT\")
314
- | .statuses[] | select(.context == \"travis-ci/$NAME\").description
312
+ PREV=$(curl -u "${ MBED_BOT} " https://api.github.com/repos/${ TRAVIS_REPO_SLUG} /status/master \
313
+ | jq -re "select(.sha != \"${ TRAVIS_COMMIT} \")
314
+ | .statuses[] | select(.context == \"travis-ci/${ NAME} \").description
315
315
| capture(\"code size is (?<size>[0-9]+)\").size" \
316
316
|| echo 0)
317
317
318
- #STATUSM="Passed, code size is ${CURR}B"
319
- #if [ "$PREV" -ne 0 ]
320
- #then
321
- # STATUSM="$STATUSM ($(python -c "print '%+.2f' % (100*($CURR-$PREV)/$PREV.0)")%)"
322
- #fi
318
+ delta=""
319
+ [ "${PREV}" -ne 0 ] && delta="($(printf "%+0.2f%%" "$(<<< "100 * ((${CURR} - ${PREV})/${PREV})" bc -l)"))"
320
+
321
+ set_status "success" "Success! Code size is ${CURR}B. ${delta}"
0 commit comments