Skip to content

Commit a88e529

Browse files
committed
use arduino-cli
1 parent 02744d5 commit a88e529

File tree

1 file changed

+42
-28
lines changed

1 file changed

+42
-28
lines changed

.github/workflows/test.yml

Lines changed: 42 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -27,46 +27,60 @@ jobs:
2727
- example: "ArduinoYunSecure"
2828
board: "arduino:avr:yun"
2929
- example: "ESP32DevelopmentBoard"
30-
board: "espressif:esp32:esp32:FlashFreq=80"
30+
board: "esp32:esp32:esp32:FlashFreq=80"
3131
- example: "ESP32DevelopmentBoardSecure"
32-
board: "espressif:esp32:esp32:FlashFreq=80"
32+
board: "esp32:esp32:esp32:FlashFreq=80"
3333
steps:
3434
- name: Checkout
35-
uses: actions/checkout@v2
35+
uses: actions/checkout@v3
36+
- name: Append Path
37+
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
3638
- name: Test
3739
env:
38-
IDE_VERSION: "1.8.19"
3940
EXAMPLE: ${{ matrix.example }}
4041
BOARD: ${{ matrix.board }}
4142
run: |
42-
/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_1.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :1 -ac -screen 0 1280x1024x16
43-
sleep 3
44-
export DISPLAY=:1.0
45-
wget https://downloads.arduino.cc/arduino-$IDE_VERSION-linux64.tar.xz
46-
tar xf arduino-$IDE_VERSION-linux64.tar.xz
47-
mv arduino-$IDE_VERSION ~/arduino-ide
48-
export PATH=$PATH:~/arduino-ide
43+
# ensure directory
44+
mkdir -p "$HOME/.local/bin"
45+
46+
# install arduino-cli into "$HOME/.local/bin"
47+
curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | BINDIR="$HOME/.local/bin" sh
48+
49+
# prepare config
50+
arduino-cli config init
51+
52+
# add cores to config
53+
arduino-cli config add board_manager.additional_urls https://arduino.esp8266.com/stable/package_esp8266com_index.json
54+
arduino-cli config add board_manager.additional_urls https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
55+
56+
# update index
57+
arduino-cli core update-index
58+
59+
# install core
4960
if [[ "$BOARD" =~ "esp8266:esp8266:" ]]; then
50-
arduino --pref "boardsmanager.additional.urls=https://arduino.esp8266.com/stable/package_esp8266com_index.json" --install-boards esp8266:esp8266;
51-
arduino --pref "boardsmanager.additional.urls=" --save-prefs;
61+
arduino-cli core install esp8266:esp8266;
5262
fi
53-
if [[ "$BOARD" =~ "espressif:esp32:" ]]; then
54-
mkdir -p ~/Arduino/hardware/espressif &&
55-
cd ~/Arduino/hardware/espressif &&
56-
git clone https://github.com/espressif/arduino-esp32.git esp32 &&
57-
cd esp32/tools/ &&
58-
python get.py &&
59-
cd $GITHUB_WORKSPACE;
63+
if [[ "$BOARD" =~ "esp32:esp32:" ]]; then
64+
arduino-cli core install esp32:esp32;
6065
fi
61-
if [[ "$BOARD" =~ "arduino:samd:mkrgsm1400" ]]; then
62-
arduino --install-boards arduino:samd;
63-
arduino --install-library MKRGSM;
66+
if [[ "$BOARD" =~ "arduino:samd:" ]]; then
67+
arduino-cli core install arduino:samd;
6468
fi
65-
if [[ "$BOARD" =~ "arduino:samd:mkrnb1500" ]]; then
66-
arduino --install-boards arduino:samd;
67-
arduino --install-library MKRNB;
69+
if [[ "$BOARD" =~ "arduino:avr:" ]]; then
70+
arduino-cli core install arduino:avr;
6871
fi
69-
arduino --install-library WiFi101
72+
73+
# install libraries
74+
arduino-cli lib install WiFi
75+
arduino-cli lib install WiFi101
76+
arduino-cli lib install MKRGSM
77+
arduino-cli lib install MKRNB
78+
arduino-cli lib install Ethernet
79+
arduino-cli lib install Bridge
80+
81+
# link library
7082
mkdir -p ~/Arduino/libraries
7183
ln -s $PWD ~/Arduino/libraries/.
72-
arduino --verbose-build --verify --board $BOARD $PWD/examples/$EXAMPLE/$EXAMPLE.ino;
84+
85+
# build example
86+
arduino-cli compile --fqbn $BOARD $PWD/examples/$EXAMPLE

0 commit comments

Comments
 (0)