.

Revision:
3:0afcfcd3941b
Parent:
1:2bfc377bcc2a
Child:
25:65a9183a2178
--- a/.travis.yml	Fri Dec 15 20:45:15 2017 +0000
+++ b/.travis.yml	Fri Dec 15 21:00:16 2017 +0000
@@ -1,9 +1,29 @@
+
+env:
+  matrix:
+    - TARGET=K82F
+    - TARGET=NRF52840_DK
+    - TARGET=K64F
+    - TARGET=UBLOX_EVK_ODIN_W2
+    - TARGET=NUCLEO_F429ZI
+  global:
+    - >
+      STATUS=$'curl -so/dev/null --user $MBED_BOT --request POST
+      https://api.github.com/repos/$TRAVIS_REPO_SLUG/statuses/${TRAVIS_PULL_REQUEST_SHA:-$TRAVIS_COMMIT}
+      --data @- << DATA\n{
+      "state": "$0",
+      "description": "$1",
+      "context": "travis-ci/$TARGET",
+      "target_url": "https://travis-ci.org/$TRAVIS_REPO_SLUG/jobs/$TRAVIS_JOB_ID"
+      }\nDATA'
+
 cache:
   pip: true
   directories:
     - $HOME/.cache/apt
 
 before_install:
+  - bash -c "$STATUS" pending "Build $TARGET in progress"
   # Make sure pipefail
   - set -o pipefail
   # Setup apt to cache
@@ -14,6 +34,12 @@
   - sudo add-apt-repository -y ppa:team-gcc-arm-embedded/ppa
   - sudo apt-get update -qq
 
+after_success:
+  - bash -c "$STATUS" success "Build $TARGET has passed"
+
+after_failure:
+  - bash -c "$STATUS" failure "Build $TARGET has failed"
+
 install:
   # Install dependencies
   - sudo apt-get install gcc-arm-embedded
@@ -28,37 +54,21 @@
 
 script:
   # Check that example compiles with littlefs + spif
-  - mbed compile -t GCC_ARM -m K82F -j0
-  - mbed compile -t GCC_ARM -m NRF52840_DK -j0
-  - mbed compile -t GCC_ARM -m K64F -j0
-  - mbed compile -t GCC_ARM -m UBLOX_EVK_ODIN_W2 -j0
-  - mbed compile -t GCC_ARM -m NUCLEO_F429ZI -j0
+  - mbed compile -t GCC_ARM -m $TARGET -j0
 
   # Check that example compiles with littlefs + dataflash
   - sed -i 's/SPIFBlockDevice bd/DataFlashBlockDevice bd/g' main.cpp
   - sed -i 's/MBED_CONF_SPIF_DRIVER/MBED_CONF_DATAFLASH/g' main.cpp
-  - mbed compile -t GCC_ARM -m K82F -j0
-  - mbed compile -t GCC_ARM -m NRF52840_DK -j0
-  - mbed compile -t GCC_ARM -m K64F -j0
-  - mbed compile -t GCC_ARM -m UBLOX_EVK_ODIN_W2 -j0
-  - mbed compile -t GCC_ARM -m NUCLEO_F429ZI -j0
+  - mbed compile -t GCC_ARM -m $TARGET -j0
 
   # Check that example compiles with fatfs + sd
   - sed -i 's/LittleFileSystem fs/FATFileSystem fs/g' main.cpp
   - sed -i 's/DataFlashBlockDevice bd/SDBlockDevice bd/g' main.cpp
   - sed -i 's/MBED_CONF_DATAFLASH/MBED_CONF_SD/g' main.cpp
-  - mbed compile -t GCC_ARM -m K82F -j0
-  - mbed compile -t GCC_ARM -m NRF52840_DK -j0
-  - mbed compile -t GCC_ARM -m K64F -j0
-  - mbed compile -t GCC_ARM -m UBLOX_EVK_ODIN_W2 -j0
-  - mbed compile -t GCC_ARM -m NUCLEO_F429ZI -j0
+  - mbed compile -t GCC_ARM -m $TARGET -j0
 
   # Check that example compiles with fatfs + heap
   - sed -i 's/SDBlockDevice bd(/HeapBlockDevice bd(1024*512, 512);/g' main.cpp
   - sed -i '/MBED_CONF_SD/d' main.cpp
-  - mbed compile -t GCC_ARM -m K82F -j0
-  - mbed compile -t GCC_ARM -m NRF52840_DK -j0
-  - mbed compile -t GCC_ARM -m K64F -j0
-  - mbed compile -t GCC_ARM -m UBLOX_EVK_ODIN_W2 -j0
-  - mbed compile -t GCC_ARM -m NUCLEO_F429ZI -j0
+  - mbed compile -t GCC_ARM -m $TARGET -j0