on-push.sh 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #!/bin/bash
  2. set -e
  3. if [ ! -z "$TRAVIS_BUILD_DIR" ]; then
  4. export GITHUB_WORKSPACE="$TRAVIS_BUILD_DIR"
  5. export GITHUB_REPOSITORY="$TRAVIS_REPO_SLUG"
  6. elif [ -z "$GITHUB_WORKSPACE" ]; then
  7. export GITHUB_WORKSPACE="$PWD"
  8. export GITHUB_REPOSITORY="me-no-dev/ESPAsyncWebServer"
  9. fi
  10. TARGET_PLATFORM="$1"
  11. CHUNK_INDEX=$2
  12. CHUNKS_CNT=$3
  13. BUILD_PIO=0
  14. if [ "$#" -lt 1 ]; then
  15. TARGET_PLATFORM="esp32"
  16. fi
  17. if [ "$#" -lt 3 ] || [ "$CHUNKS_CNT" -le 0 ]; then
  18. CHUNK_INDEX=0
  19. CHUNKS_CNT=1
  20. elif [ "$CHUNK_INDEX" -gt "$CHUNKS_CNT" ]; then
  21. CHUNK_INDEX=$CHUNKS_CNT
  22. elif [ "$CHUNK_INDEX" -eq "$CHUNKS_CNT" ]; then
  23. BUILD_PIO=1
  24. fi
  25. if [ "$BUILD_PIO" -eq 0 ]; then
  26. # ArduinoIDE Test
  27. source ./.github/scripts/install-arduino-ide.sh
  28. echo "Installing ESPAsyncWebServer ..."
  29. cp -rf "$GITHUB_WORKSPACE" "$ARDUINO_USR_PATH/libraries/ESPAsyncWebServer"
  30. echo "Installing ArduinoJson ..."
  31. git clone https://github.com/bblanchon/ArduinoJson "$ARDUINO_USR_PATH/libraries/ArduinoJson" > /dev/null 2>&1
  32. if [[ "$TARGET_PLATFORM" == "esp32" ]]; then
  33. echo "Installing AsyncTCP ..."
  34. git clone https://github.com/me-no-dev/AsyncTCP "$ARDUINO_USR_PATH/libraries/AsyncTCP" > /dev/null 2>&1
  35. FQBN="espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app"
  36. source ./.github/scripts/install-arduino-core-esp32.sh
  37. echo "BUILDING ESP32 EXAMPLES"
  38. else
  39. echo "Installing ESPAsyncTCP ..."
  40. git clone https://github.com/me-no-dev/ESPAsyncTCP "$ARDUINO_USR_PATH/libraries/ESPAsyncTCP" > /dev/null 2>&1
  41. FQBN="esp8266com:esp8266:generic:eesz=4M1M,ip=lm2f"
  42. source ./.github/scripts/install-arduino-core-esp8266.sh
  43. echo "BUILDING ESP8266 EXAMPLES"
  44. fi
  45. build_sketches "$FQBN" "$GITHUB_WORKSPACE/examples" "$CHUNK_INDEX" "$CHUNKS_CNT"
  46. else
  47. # PlatformIO Test
  48. source ./.github/scripts/install-platformio.sh
  49. python -m platformio lib --storage-dir "$GITHUB_WORKSPACE" install
  50. echo "Installing ArduinoJson ..."
  51. python -m platformio lib -g install https://github.com/bblanchon/ArduinoJson.git > /dev/null 2>&1
  52. if [[ "$TARGET_PLATFORM" == "esp32" ]]; then
  53. BOARD="esp32dev"
  54. echo "Installing AsyncTCP ..."
  55. python -m platformio lib -g install https://github.com/me-no-dev/AsyncTCP.git > /dev/null 2>&1
  56. echo "BUILDING ESP32 EXAMPLES"
  57. else
  58. BOARD="esp12e"
  59. echo "Installing ESPAsyncTCP ..."
  60. python -m platformio lib -g install https://github.com/me-no-dev/ESPAsyncTCP.git > /dev/null 2>&1
  61. echo "BUILDING ESP8266 EXAMPLES"
  62. fi
  63. build_pio_sketches "$BOARD" "$GITHUB_WORKSPACE/examples"
  64. fi