Arduino-BLE-MIDI/ci/build-arduino.sh

58 lines
1.9 KiB
Bash

#!/bin/bash
# Exit immediately if a command exits with a non-zero status.
set -e
# Enable the globstar shell option
shopt -s globstar
# Make sure we are inside the github workspace
cd $GITHUB_WORKSPACE
# Create directories
mkdir $HOME/Arduino -p
mkdir $HOME/Arduino/libraries -p
# Install Arduino IDE
export PATH=$PATH:$GITHUB_WORKSPACE/bin
curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh
arduino-cli config init
arduino-cli config set library.enable_unsafe_install true
# arduino-cli core update-index --additional-urls https://arduino.esp8266.com/stable/package_esp8266com_index.json
#arduino-cli core update-index --additional-urls https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
sed -i 's+\[\]+\[https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json\]+g' /home/runner/.arduino15/arduino-cli.yaml
arduino-cli core update-index
# Install Arduino AVR core
arduino-cli core install arduino:avr
arduino-cli core install arduino:samd
# arduino-cli core install esp8266:esp8266
arduino-cli core install esp32:esp32
# List the boards
arduino-cli board listall
# Link Arduino library
ln -s $GITHUB_WORKSPACE $HOME/Arduino/libraries/CI_Test_Library
arduino-cli lib install "MIDI library"
arduino-cli lib install ArduinoBLE
arduino-cli lib install NimBLE-Arduino
# Compile all *.ino files for the Arduino Uno
# for f in **/AVR_*.ino ; do
# arduino-cli compile -b arduino:avr:uno $f
# done
# Compile all *.ino files for the Arduino Uno
# for f in **/SAMD_*.ino ; do
# arduino-cli compile -b arduino:samd:mkrzero $f
# done
# Compile all *.ino files for the Arduino Uno
# for f in **/ESP8266_*.ino ; do
# arduino-cli compile -b arduino:esp8266:??? $f
# done
# Compile all *.ino files for the Arduino Uno
for f in **/*.ino ; do
echo "Project $f"
arduino-cli compile -b esp32:esp32:esp32 $f
arduino-cli complile --clean
done