Files
espurna/ci_script.sh
2025-06-26 03:11:41 +03:00

43 lines
1022 B
Bash
Executable File

#!/bin/bash
set -x -e -v
cd code
case "$1" in
("generated")
# checks whether arduino.h was modified
scripts/generate_arduino_h.py espurna/config/arduino.h
git --no-pager diff --stat --exit-code
;;
("host")
# runs unit tests, using the host compiler and the esp8266 mock framework
# - https://github.com/esp8266/Arduino/blob/master/tests/host/Makefile
# - https://github.com/ThrowTheSwitch/Unity
pushd test/unit
cmake -B build
cmake --build build
cmake --build build --target test
popd
;;
("webui")
# checks whether the webui can be built
npm ci
node node_modules/gulp/bin/gulp.js
# note of varying zlib output, especially when using pigz
git --no-pager diff --stat
;;
("build")
# simply build the given environment
pio run -e $2
;;
("test")
# run generic build test with the specified environment as base
scripts/test_build.py -e $2
;;
(*)
echo -e "\e[1;33mUnknown stage name, exiting!\e[0m"
exit 1
;;
esac