forked from Links2004/arduinoWebSockets
add travis build test
This commit is contained in:
39
.travis.yml
Normal file
39
.travis.yml
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
sudo: false
|
||||||
|
language: bash
|
||||||
|
os:
|
||||||
|
- linux
|
||||||
|
env:
|
||||||
|
matrix:
|
||||||
|
- CPU="esp8266" BOARD="esp8266com:esp8266:generic:CpuFrequency=80" IDE_VERSION=1.6.5
|
||||||
|
- CPU="esp8266" BOARD="esp8266com:esp8266:generic:CpuFrequency=80,FlashSize=1M0,FlashMode=qio,FlashFreq=80" IDE_VERSION=1.8.5
|
||||||
|
- CPU="esp8266" BOARD="esp8266com:esp8266:generic:CpuFrequency=80,Debug=Serial1" IDE_VERSION=1.6.5
|
||||||
|
- CPU="avr" BOARD="arduino:avr:mega:cpu=atmega2560" IDE_VERSION=1.6.5
|
||||||
|
|
||||||
|
script:
|
||||||
|
- /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_1.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :1 -ac -screen 0 1280x1024x16
|
||||||
|
- sleep 3
|
||||||
|
- export DISPLAY=:1.0
|
||||||
|
- wget http://downloads.arduino.cc/arduino-$IDE_VERSION-linux64.tar.xz
|
||||||
|
- tar xf arduino-$IDE_VERSION-linux64.tar.xz
|
||||||
|
- mv arduino-$IDE_VERSION $HOME/arduino_ide
|
||||||
|
- export PATH="$HOME/arduino_ide:$PATH"
|
||||||
|
- which arduino
|
||||||
|
- mkdir -p $HOME/Arduino/libraries
|
||||||
|
- cp -r $TRAVIS_BUILD_DIR $HOME/Arduino/libraries/arduinoWebSockets
|
||||||
|
- source $TRAVIS_BUILD_DIR/travis/common.sh
|
||||||
|
- get_core $CPU
|
||||||
|
- cd $TRAVIS_BUILD_DIR
|
||||||
|
- arduino --board $BOARD --save-prefs
|
||||||
|
- arduino --get-pref sketchbook.path
|
||||||
|
- build_sketches arduino $HOME/Arduino/libraries/arduinoWebSockets/examples/$CPU $CPU
|
||||||
|
|
||||||
|
notifications:
|
||||||
|
email:
|
||||||
|
on_success: change
|
||||||
|
on_failure: change
|
||||||
|
webhooks:
|
||||||
|
urls:
|
||||||
|
- https://webhooks.gitter.im/e/1aa78fbe15080b0c2e37
|
||||||
|
on_success: change # options: [always|never|change] default: always
|
||||||
|
on_failure: always # options: [always|never|change] default: always
|
||||||
|
on_start: false # default: false
|
53
travis/common.sh
Normal file
53
travis/common.sh
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
function build_sketches()
|
||||||
|
{
|
||||||
|
local arduino=$1
|
||||||
|
local srcpath=$2
|
||||||
|
local platform=$3
|
||||||
|
local sketches=$(find $srcpath -name *.ino)
|
||||||
|
for sketch in $sketches; do
|
||||||
|
local sketchdir=$(dirname $sketch)
|
||||||
|
if [[ -f "$sketchdir/.$platform.skip" ]]; then
|
||||||
|
echo -e "\n\n ------------ Skipping $sketch ------------ \n\n";
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
echo -e "\n\n ------------ Building $sketch ------------ \n\n";
|
||||||
|
$arduino --verify $sketch;
|
||||||
|
local result=$?
|
||||||
|
if [ $result -ne 0 ]; then
|
||||||
|
echo "Build failed ($sketch) build verbose..."
|
||||||
|
$arduino --verify --verbose --preserve-temp-files $sketch
|
||||||
|
result=$?
|
||||||
|
fi
|
||||||
|
if [ $result -ne 0 ]; then
|
||||||
|
echo "Build failed ($1) $sketch"
|
||||||
|
return $result
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function get_core()
|
||||||
|
{
|
||||||
|
echo Setup core for $1
|
||||||
|
|
||||||
|
cd $HOME/arduino_ide/hardware
|
||||||
|
|
||||||
|
if [ "$1" = "esp8266" ] ; then
|
||||||
|
mkdir esp8266com
|
||||||
|
cd esp8266com
|
||||||
|
git clone https://github.com/esp8266/Arduino.git esp8266
|
||||||
|
cd esp8266/tools
|
||||||
|
python get.py
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$1" = "esp32" ] ; then
|
||||||
|
mkdir espressif
|
||||||
|
cd espressif
|
||||||
|
git clone https://github.com/espressif/arduino-esp32.git esp32
|
||||||
|
cd esp32/tools
|
||||||
|
python get.py
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
Reference in New Issue
Block a user