RadioSonde/libraries/SD/.travis.yml
2022-08-24 08:28:06 +02:00

90 lines
3.4 KiB
YAML
Executable File

# default language
language: generic
env:
global:
- CLI_VERSION=latest
matrix:
include:
# compile example sketches for the following boards
- env:
- BOARD='arduino:avr:mega:cpu=atmega2560'
install:
- arduino-cli core install arduino:avr
- env:
- BOARD='arduino:samd:mkrzero'
install:
- arduino-cli core install arduino:samd
- env:
- BOARD='arduino:megaavr:uno2018:mode=on'
install:
- arduino-cli core install arduino:megaavr
- env:
- BOARD='arduino:sam:arduino_due_x'
install:
- arduino-cli core install arduino:sam
# check all code files for compliance with the Arduino code formatting style
- env:
- NAME='Code Formatting Check'
language: minimal
before_install:
# install Artistic Style code formatter tool: http://astyle.sourceforge.net
- |
mkdir "${HOME}/astyle";
wget --no-verbose --output-document="${HOME}/astyle/astyle.tar.gz" "https://iweb.dl.sourceforge.net/project/astyle/astyle/astyle%203.1/astyle_3.1_linux.tar.gz";
tar --extract --file="${HOME}/astyle/astyle.tar.gz" --directory="${HOME}/astyle";
cd "${HOME}/astyle/astyle/build/gcc";
make;
export PATH="$PWD/bin:$PATH";
cd "$TRAVIS_BUILD_DIR"
# download Arduino's Artistic Style configuration file
- wget --directory-prefix="${HOME}/astyle" https://raw.githubusercontent.com/arduino/Arduino/master/build/shared/examples_formatter.conf
script:
# check code formatting
- find . -regextype posix-extended -path './.git' -prune -or \( -iregex '.*\.((ino)|(h)|(hpp)|(hh)|(hxx)|(h\+\+)|(cpp)|(cc)|(cxx)|(c\+\+)|(cp)|(c)|(ipp)|(ii)|(ixx)|(inl)|(tpp)|(txx)|(tpl))$' -and -type f \) -print0 | xargs -0 -L1 bash -c 'if ! diff "$0" <(astyle --options=${HOME}/astyle/examples_formatter.conf --dry-run < "$0"); then echo "Non-compliant code formatting in $0"; false; fi'
# check all files for commonly misspelled words
- env:
- NAME='Spell Check'
language: python
python: 3.6
before_install:
# https://github.com/codespell-project/codespell
- pip install codespell
script:
# codespell will ignore any words in extras/codespell-ignore-words-list.txt, which may be used to fix false positives
- codespell --skip="${TRAVIS_BUILD_DIR}/.git" --ignore-words="${TRAVIS_BUILD_DIR}/extras/codespell-ignore-words-list.txt" "${TRAVIS_BUILD_DIR}"
# default phases shared by the compilation tests
before_install:
- wget http://downloads.arduino.cc/arduino-cli/arduino-cli-$CLI_VERSION-linux64.tar.bz2
- tar xf arduino-cli-$CLI_VERSION-linux64.tar.bz2
- mkdir -p "$HOME/bin"
- mv arduino-cli "$HOME/bin"
- export PATH="$PATH:$HOME/bin"
- arduino-cli core update-index
- buildExampleSketch() { arduino-cli compile --verbose --warnings all --fqbn $BOARD "$PWD/examples/$1"; }
- mkdir -p "$HOME/Arduino/libraries"
- ln -s "$PWD" "$HOME/Arduino/libraries/."
script:
- buildExampleSketch CardInfo
- buildExampleSketch Datalogger
- buildExampleSketch DumpFile
- buildExampleSketch Files
- buildExampleSketch listfiles
- buildExampleSketch ReadWrite
notifications:
webhooks:
# use TravisBuddy to comment on any pull request that results in a failed CI build
urls:
- https://www.travisbuddy.com/
on_success: never
on_failure: always