Merge pull request #7 from yamukha/main #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Datalog tiny | |
on: | |
push: | |
workflow_dispatch: | |
branches: | |
- master | |
- main | |
jobs: | |
esp8622: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install arduino-cli for esp8622 | |
run: | | |
sudo apt-get install curl git -y | |
pip3 install pyserial | |
cd ~ | |
mkdir arduino-init | |
cd arduino-init | |
curl -L -o arduino-cli.tar.bz2 https://downloads.arduino.cc/arduino-cli/arduino-cli-latest-linux64.tar.bz2 | |
tar xjf arduino-cli.tar.bz2 | |
sudo mv arduino-cli /usr/bin/arduino-cli | |
arduino-cli core update-index --config-file arduino-cli.yaml | |
ARDUINO_YAML=$(arduino-cli config init | awk '{ print $4 }') | |
echo board_manager: >> $ARDUINO_YAML | |
echo ' additional_urls:' >> $ARDUINO_YAML | |
echo ' - http://arduino.esp8266.com/stable/package_esp8266com_index.json' >> $ARDUINO_YAML | |
arduino-cli core update-index | |
arduino-cli core install esp8266:esp8266 | |
arduino-cli core install esp32:esp32 | |
- name: Clone datalog-tiny repo | |
run: | | |
echo " git clone" | |
cd ~ | |
git clone https://github.com/airalab/robonomics-client-cpp.git | |
cd robonomics-client-cpp | |
ARDUINO_SKETCH=$(arduino-cli config dump | grep sketchbook_path | awk '{ print $2 }') | |
mkdir $ARDUINO_SKETCH | |
cp -r libraries/ $ARDUINO_SKETCH/ | |
cp rpcjsonc/rpcjsonc.ino $ARDUINO_SKETCH/rpcjsonc.ino | |
cd .. | |
- name: Build | |
run: | | |
ARDUINO_SKETCH=$(arduino-cli config dump | grep sketchbook_path | awk '{ print $2 }') | |
cd $ARDUINO_SKETCH | |
/usr/bin/arduino-cli compile --fqbn esp8266:esp8266:nodemcuv2 rpcjsonc.ino | |
patch libraries/RpcRobonomics/Defines.h libraries/RpcRobonomics/esp32.diff | |
/usr/bin/arduino-cli compile --fqbn esp32:esp32:nodemcu-32s rpcjsonc.ino | |
/usr/bin/arduino-cli compile --fqbn esp32:esp32:esp32s3 rpcjsonc.ino | |
cd .. | |
# Upload | |
# sudo chmod a+rw /dev/ttyUSB0 | |
# sudo chmod a+rw /dev/ttyAMC0 | |
# arduino-cli upload --port /dev/ttyUSB0 --fqbn esp8266:esp8266:nodemcuv2 | |
# arduino-cli upload --port /dev/ttyUSB0 --fqbn esp32:esp32:nodemcu-32s:UploadSpeed=115200 | |
# arduino-cli upload --port /dev/ttyACM0 --fqbn esp32:esp32:esp32s3 | |
# Testing | |
- name: Install cryptopp from repo | |
run: | | |
git clone https://github.com/weidai11/cryptopp | |
cd cryptopp | |
make libcryptopp.a libcryptopp.so -j4 | |
sudo make install PREFIX=/usr/local -j4 | |
sudo ldconfig | |
- name: Library Unit tests | |
run: | | |
cd ~/robonomics-client-cpp/tests | |
g++ test_call.c -o test_call -DUNIT_TEST -L/usr/local/lib -lcryptopp | |
./test_call |