2024-01-24 00:39:50 +08:00
|
|
|
name: Full build and test
|
|
|
|
on:
|
|
|
|
schedule:
|
|
|
|
- cron: '0 1 * * *' # run at 1 AM UTC
|
|
|
|
# Allow manual runs
|
|
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
|
|
IPV6: 0
|
|
|
|
jobs:
|
|
|
|
linux:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
cc: [gcc, clang, g++, clang++]
|
|
|
|
target: [test, mip_test]
|
2024-05-16 21:56:51 +08:00
|
|
|
ssl: ["", BUILTIN, MBEDTLS, OPENSSL, WOLFSSL]
|
2024-01-24 00:39:50 +08:00
|
|
|
select: ["-DMG_ENABLE_POLL=0 -DMG_ENABLE_EPOLL=0", "-DMG_ENABLE_POLL=1 -DMG_ENABLE_EPOLL=0", "-DMG_ENABLE_POLL=0 -DMG_ENABLE_EPOLL=1"]
|
|
|
|
exclude:
|
|
|
|
- ssl: MBEDTLS
|
|
|
|
select: "-DMG_ENABLE_POLL=0 -DMG_ENABLE_EPOLL=0"
|
|
|
|
- ssl: MBEDTLS
|
|
|
|
select: "-DMG_ENABLE_POLL=1 -DMG_ENABLE_EPOLL=0"
|
|
|
|
- ssl: OPENSSL
|
|
|
|
select: "-DMG_ENABLE_POLL=0 -DMG_ENABLE_EPOLL=0"
|
|
|
|
- ssl: OPENSSL
|
|
|
|
select: "-DMG_ENABLE_POLL=1 -DMG_ENABLE_EPOLL=0"
|
2024-05-15 18:22:12 +08:00
|
|
|
- ssl: WOLFSSL
|
|
|
|
select: "-DMG_ENABLE_POLL=0 -DMG_ENABLE_EPOLL=0"
|
|
|
|
- ssl: WOLFSSL
|
|
|
|
select: "-DMG_ENABLE_POLL=1 -DMG_ENABLE_EPOLL=0"
|
2024-01-24 00:39:50 +08:00
|
|
|
name: linux ${{ matrix.target }} CC=${{ matrix.cc }} SSL=${{ matrix.ssl }} TFLAGS=${{ matrix.select }}
|
|
|
|
env:
|
|
|
|
CC: ${{ matrix.cc }}
|
|
|
|
SSL: ${{ matrix.ssl }}
|
|
|
|
TFLAGS: ${{ matrix.select }}
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-05-15 18:22:12 +08:00
|
|
|
- run: ./test/setup_ga_network.sh && sudo apt -y update ; sudo apt -y install libmbedtls-dev libwolfssl-dev && make -C test ${{ matrix.target }}
|
2024-01-24 00:39:50 +08:00
|
|
|
s390:
|
|
|
|
runs-on: ubuntu-latest
|
2024-03-26 05:33:51 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-05-16 21:56:51 +08:00
|
|
|
ssl: ["", BUILTIN]
|
2024-03-26 05:33:51 +08:00
|
|
|
name: S390 SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: sudo apt -y update ; sudo apt -y install qemu binfmt-support qemu-user-static && docker run --rm --privileged multiarch/qemu-user-static --reset -p yes && make -C test s390 SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
armhf:
|
|
|
|
runs-on: ubuntu-latest
|
2024-03-26 05:33:51 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", BUILTIN]
|
|
|
|
name: ArmHF SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: sudo apt -y update ; sudo apt -y install qemu binfmt-support qemu-user-static && docker run --rm --privileged multiarch/qemu-user-static --reset -p yes && make -C test armhf SSL=${{ matrix.ssl }}
|
2024-04-05 04:15:42 +08:00
|
|
|
unamalgamated-mg_prefix:
|
2024-01-24 00:39:50 +08:00
|
|
|
runs-on: ubuntu-latest
|
2024-04-05 04:15:42 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-05-16 21:56:51 +08:00
|
|
|
ssl: ["", BUILTIN, MBEDTLS, OPENSSL, WOLFSSL]
|
2024-04-05 04:15:42 +08:00
|
|
|
name: unamalgamated-mg_prefix SSL=${{ matrix.ssl }}
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
with: { fetch-depth: 2 }
|
2024-05-15 18:22:12 +08:00
|
|
|
- run: sudo apt -y update ; sudo apt -y install libmbedtls-dev libwolfssl-dev
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: make -C test unamalgamated && make -C test mg_prefix
|
2024-04-05 04:15:42 +08:00
|
|
|
valgrind:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-05-16 21:56:51 +08:00
|
|
|
ssl: ["", BUILTIN, MBEDTLS, OPENSSL, WOLFSSL]
|
2024-04-05 04:15:42 +08:00
|
|
|
name: Valgrind SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-05-15 18:22:12 +08:00
|
|
|
- run: sudo apt -y update ; sudo apt -y install libmbedtls-dev libwolfssl-dev valgrind
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: make -C test valgrind SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
macos:
|
|
|
|
runs-on: macos-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-05-16 21:56:51 +08:00
|
|
|
ssl: ["", BUILTIN, MBEDTLS, OPENSSL, WOLFSSL]
|
2024-01-24 00:39:50 +08:00
|
|
|
select: [-DMG_ENABLE_POLL=0, -DMG_ENABLE_POLL=1]
|
|
|
|
exclude:
|
|
|
|
- ssl: MBEDTLS
|
|
|
|
select: -DMG_ENABLE_POLL=0
|
|
|
|
- ssl: OPENSSL
|
|
|
|
select: -DMG_ENABLE_POLL=0
|
2024-05-15 18:22:12 +08:00
|
|
|
- ssl: WOLFSSL
|
|
|
|
select: -DMG_ENABLE_POLL=0
|
2024-01-24 00:39:50 +08:00
|
|
|
name: macos SSL=${{ matrix.ssl }} TFLAGS=${{ matrix.select }}
|
|
|
|
env:
|
|
|
|
SSL: ${{ matrix.ssl }}
|
|
|
|
TFLAGS: ${{ matrix.select }} -DNO_SNTP_CHECK -Wno-sign-conversion # Workaround for MbedTLS 3.5.0
|
|
|
|
HOMEBREW_NO_AUTO_UPDATE: 1
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-05-16 21:56:51 +08:00
|
|
|
- run: brew install mbedtls wolfssl # jq openssl already pre-installed
|
2024-05-15 18:22:12 +08:00
|
|
|
- run: make -C test test ASAN_OPTIONS= MBEDTLS=$(echo $(brew --cellar)/mbedtls*/*) OPENSSL=$(echo $(brew --cellar)/openssl*/*) WOLFSSL=$(echo $(brew --cellar)/wolfssl*/*)
|
2024-01-24 00:39:50 +08:00
|
|
|
windows:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
2024-04-05 04:15:42 +08:00
|
|
|
max-parallel: 1 # no parallel runs, to minimize MQTT errors
|
2024-01-24 00:39:50 +08:00
|
|
|
matrix:
|
|
|
|
target: [vc98, vc17, vc22, mingw, mingw++]
|
2024-03-26 05:33:51 +08:00
|
|
|
ssl: ["", BUILTIN]
|
2024-01-24 00:39:50 +08:00
|
|
|
select: [-DMG_ENABLE_POLL=0, -DMG_ENABLE_POLL=1]
|
|
|
|
exclude:
|
|
|
|
- target: vc98
|
|
|
|
select: -DMG_ENABLE_POLL=1
|
2024-03-26 05:33:51 +08:00
|
|
|
name: windows ${{ matrix.target }} SSL=${{ matrix.ssl }} TFLAGS=${{ matrix.select }}
|
2024-01-24 00:39:50 +08:00
|
|
|
env:
|
2024-03-26 05:33:51 +08:00
|
|
|
SSL: SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
TFLAGS: ${{ matrix.select }}
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: make -C test ${{ matrix.target }}
|
2024-01-24 00:39:50 +08:00
|
|
|
arm:
|
|
|
|
runs-on: ubuntu-latest
|
2024-03-26 05:33:51 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", BUILTIN]
|
|
|
|
name: Arm SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: make -C test arm SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
riscv:
|
|
|
|
runs-on: ubuntu-latest
|
2024-03-26 05:33:51 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", BUILTIN]
|
|
|
|
name: RISC-V SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: make -C test riscv SSL=${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
examples:
|
|
|
|
runs-on: ubuntu-latest
|
2024-04-11 04:07:12 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: examples ${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-05-16 21:56:51 +08:00
|
|
|
- run: sudo apt -y install libpcap-dev
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: make -C test examples CFLAGS_EXTRA="${{ matrix.ssl }}"
|
|
|
|
- run: make -C test clean_examples
|
2024-01-24 00:39:50 +08:00
|
|
|
examples_win:
|
|
|
|
runs-on: windows-latest
|
2024-04-11 04:07:12 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: examples_win ${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
# - uses: egor-tensin/setup-mingw@v2
|
|
|
|
# with:
|
|
|
|
# platform: x64
|
|
|
|
- name: test they build
|
2024-04-20 05:28:13 +08:00
|
|
|
run: make -C test examples_win CFLAGS_EXTRA="${{ matrix.ssl }}"
|
2024-01-24 00:39:50 +08:00
|
|
|
shell: cmd
|
|
|
|
- name: test they clean
|
2024-04-20 05:28:13 +08:00
|
|
|
run: make -C test clean_examples_win
|
2024-01-24 00:39:50 +08:00
|
|
|
shell: cmd
|
|
|
|
examples_mac:
|
|
|
|
runs-on: macos-latest
|
|
|
|
env: { HOMEBREW_NO_AUTO_UPDATE: 1 }
|
2024-04-11 04:07:12 +08:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: examples_mac ${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-04-20 05:28:13 +08:00
|
|
|
- run: make -C test examples_mac CFLAGS_EXTRA="${{ matrix.ssl }}"
|
|
|
|
- run: make -C test clean_examples_mac
|
2024-01-24 00:39:50 +08:00
|
|
|
|
2024-04-25 03:01:25 +08:00
|
|
|
refprojs:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: reference-projects ${{ matrix.ssl }}
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- run: make -C test refprojs CFLAGS_EXTRA="${{ matrix.ssl }}"
|
|
|
|
- run: make -C test clean_refprojs
|
|
|
|
refprojs_win:
|
|
|
|
runs-on: windows-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: reference-projects_win ${{ matrix.ssl }}
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
# - uses: egor-tensin/setup-mingw@v2
|
|
|
|
# with:
|
|
|
|
# platform: x64
|
|
|
|
- name: test they build
|
2024-04-26 01:33:58 +08:00
|
|
|
run: make -C test refprojs_win CFLAGS_EXTRA="${{ matrix.ssl }}"
|
2024-04-25 03:01:25 +08:00
|
|
|
shell: cmd
|
|
|
|
- name: test they clean
|
2024-04-26 01:33:58 +08:00
|
|
|
run: make -C test clean_refprojs_win
|
2024-04-25 03:01:25 +08:00
|
|
|
shell: cmd
|
|
|
|
refprojs_mac:
|
|
|
|
runs-on: macos-latest
|
|
|
|
env: { HOMEBREW_NO_AUTO_UPDATE: 1 }
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: reference-projects_mac ${{ matrix.ssl }}
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- run: make -C test refprojs CFLAGS_EXTRA="${{ matrix.ssl }}"
|
|
|
|
- run: make -C test clean_refprojs
|
|
|
|
|
|
|
|
tutorials:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: tutorials ${{ matrix.ssl }}
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
2024-05-16 21:56:51 +08:00
|
|
|
- run: sudo apt -y install libpcap-dev
|
2024-04-25 03:01:25 +08:00
|
|
|
- run: make -C test tutorials CFLAGS_EXTRA="${{ matrix.ssl }}"
|
|
|
|
- run: make -C test clean_tutorials
|
|
|
|
tutorials_win:
|
|
|
|
runs-on: windows-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: tutorials_win ${{ matrix.ssl }}
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
# - uses: egor-tensin/setup-mingw@v2
|
|
|
|
# with:
|
|
|
|
# platform: x64
|
|
|
|
- name: test they build
|
|
|
|
run: make -C test tutorials_win CFLAGS_EXTRA="${{ matrix.ssl }}"
|
|
|
|
shell: cmd
|
|
|
|
- name: test they clean
|
|
|
|
run: make -C test clean_tutorials_win
|
|
|
|
shell: cmd
|
|
|
|
tutorials_mac:
|
|
|
|
runs-on: macos-latest
|
|
|
|
env: { HOMEBREW_NO_AUTO_UPDATE: 1 }
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
|
|
|
name: tutorials_mac ${{ matrix.ssl }}
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- run: make -C test tutorials_mac CFLAGS_EXTRA="${{ matrix.ssl }}"
|
|
|
|
- run: make -C test clean_tutorials_mac
|
|
|
|
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
arduino:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-27 01:32:58 +08:00
|
|
|
- run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: make -C examples/arduino arduino-xiao
|
|
|
|
# - run: make -C examples/arduino arduino-nano
|
|
|
|
- run: make -C examples/arduino clean
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
|
|
|
|
generic_examples:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
example:
|
|
|
|
- path: esp32/uart-bridge
|
|
|
|
- path: esp32/micropython
|
|
|
|
- path: esp8266/http-client-server
|
|
|
|
name: ${{ matrix.example.path }}
|
|
|
|
env:
|
|
|
|
GO: 0
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
|
|
|
- run: if ./test/match_changed_files.sh '^src|^examples/${{ matrix.example.path }}'; then echo GO=1 >> $GITHUB_ENV ; fi
|
2024-01-27 01:32:58 +08:00
|
|
|
- run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: make -C examples/${{ matrix.example.path }} build
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
generic_examples_arm:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
example:
|
|
|
|
- path: microchip/same54-xpro/mqtt-client
|
|
|
|
- path: infineon/infineon-xmc4700_4800-lwip-rtx-rtos
|
|
|
|
- path: nxp/nxp-mimxrt1020-azurertos
|
|
|
|
- path: nxp/nxp-frdmk66f-freertos
|
|
|
|
- path: nxp/nxp-lpcxpresso54s018m-freertos
|
|
|
|
- path: nxp/nxp-mimxrt1020-freertos
|
|
|
|
- path: nxp/nxp-evkbimxrt1050-lwip-freertos
|
|
|
|
- path: nxp/nxp-evkmimxrt1020-lwip-freertos
|
|
|
|
- path: nxp/nxp-evkmimxrt1024-lwip-freertos
|
|
|
|
- path: nxp/nxp-evkmimxrt1060-lwip-freertos
|
|
|
|
- path: nxp/nxp-evkmimxrt1064-lwip-freertos
|
|
|
|
- path: nxp/nxp-evkmimxrt1160-cm7-lwip-freertos
|
|
|
|
- path: nxp/nxp-evkmimxrt1170-cm7-lwip-freertos
|
|
|
|
- path: nxp/nxp-frdmk64f-lwip-freertos
|
|
|
|
- path: nxp/nxp-frdmk66f-lwip-freertos
|
|
|
|
- path: nxp/nxp-lpcxpresso54018-lwip-freertos
|
|
|
|
- path: nxp/nxp-lpcxpresso54608-lwip-freertos
|
|
|
|
- path: nxp/nxp-lpcxpresso54618-lwip-freertos
|
|
|
|
- path: nxp/nxp-lpcxpresso54628-lwip-freertos
|
|
|
|
- path: nxp/nxp-twrk65f180m-lwip-freertos
|
|
|
|
- path: nxp/nxp-twrkv58f220m-lwip-freertos
|
|
|
|
- path: rp2040/pico-rmii
|
|
|
|
- path: stm32/nucleo-f429zi-make-baremetal-builtin-rndis
|
|
|
|
- path: stm32/nucleo-f746zg-make-baremetal-builtin-rndis
|
|
|
|
- path: stm32/nucleo-g031-make-baremetal-builtin
|
|
|
|
- path: ti/ti-ek-tm4c1294xl-http-server
|
|
|
|
- path: ti/ek-tm4c1294xl-make-baremetal-builtin-rndis
|
|
|
|
name: ${{ matrix.example.path }}
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/${{ matrix.example.path }} build
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
device_dashboard_examples:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
example:
|
|
|
|
- path: esp32/device-dashboard
|
|
|
|
name: ${{ matrix.example.path }}
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-27 01:32:58 +08:00
|
|
|
- run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: make -C examples/${{ matrix.example.path }} build
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
device_dashboard_examples_arm:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-04-11 04:07:12 +08:00
|
|
|
ssl: ["", -DMG_TLS=MG_TLS_BUILTIN]
|
2024-01-24 00:39:50 +08:00
|
|
|
example:
|
2024-05-28 01:31:44 +08:00
|
|
|
- path: infineon/infineon-xmc7200
|
2024-01-24 00:39:50 +08:00
|
|
|
- path: microchip/same54-xpro/device-dashboard
|
|
|
|
- path: nxp/rt1020-evk-make-baremetal-builtin
|
|
|
|
- path: nxp/rt1020-evk-make-freertos-builtin
|
|
|
|
- path: nxp/rt1060-evk-make-baremetal-builtin
|
|
|
|
- path: nxp/rt1060-evk-make-freertos-builtin
|
2024-03-25 20:45:46 +08:00
|
|
|
- path: nxp/rt1170-evk-make-baremetal-builtin
|
2024-05-30 23:23:19 +08:00
|
|
|
- path: nxp/rt1170-evk-make-freertos-builtin
|
2024-03-25 20:45:46 +08:00
|
|
|
- path: renesas/ek-ra6m4-make-baremetal-builtin
|
2024-01-24 00:39:50 +08:00
|
|
|
- path: rp2040/pico-rndis-dashboard
|
|
|
|
- path: rp2040/pico-w
|
|
|
|
- path: rp2040/pico-w5500
|
|
|
|
- path: stm32/nucleo-f429zi-make-baremetal-builtin
|
|
|
|
- path: stm32/nucleo-f429zi-make-freertos-builtin
|
|
|
|
- path: stm32/nucleo-f746zg-make-baremetal-builtin
|
|
|
|
- path: stm32/nucleo-f746zg-make-freertos-builtin
|
|
|
|
- path: stm32/nucleo-f746zg-make-freertos-tcp
|
|
|
|
- path: stm32/nucleo-f746zg-make-baremetal-builtin-cmsis_driver
|
|
|
|
- path: stm32/nucleo-h563zi-make-baremetal-builtin
|
|
|
|
- path: stm32/nucleo-h563zi-make-freertos-builtin
|
|
|
|
- path: stm32/nucleo-h723zg-make-freertos-builtin
|
|
|
|
- path: stm32/nucleo-h743zi-make-baremetal-builtin
|
|
|
|
- path: stm32/nucleo-h743zi-make-freertos-builtin
|
|
|
|
- path: stm32/stm32h573i-dk-make-baremetal-builtin
|
|
|
|
- path: stm32/stm32h573i-dk-make-freertos-builtin
|
|
|
|
- path: ti/ek-tm4c1294xl-make-baremetal-builtin
|
|
|
|
- path: ti/ek-tm4c1294xl-make-freertos-builtin
|
2024-04-11 04:07:12 +08:00
|
|
|
name: ${{ matrix.example.path }} ${{ matrix.ssl }}
|
2024-01-24 00:39:50 +08:00
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
2024-04-11 04:07:12 +08:00
|
|
|
- run: make -C examples/${{ matrix.example.path }} build CFLAGS_EXTRA="${{ matrix.ssl }}"
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
# mqtt_dashboard_examples:
|
|
|
|
# runs-on: ubuntu-latest
|
|
|
|
# strategy:
|
|
|
|
# fail-fast: false
|
|
|
|
# matrix:
|
|
|
|
# example:
|
|
|
|
# - path:
|
|
|
|
# name: ${{ matrix.example.path }}
|
|
|
|
# steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
# - uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
# with: { fetch-depth: 2 }
|
2024-01-27 01:32:58 +08:00
|
|
|
# - run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
# - run: make -C examples/${{ matrix.example.path }} build
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
mqtt_dashboard_examples_arm:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
example:
|
|
|
|
- path: rp2040/pico-rndis-device
|
|
|
|
name: ${{ matrix.example.path }}
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/${{ matrix.example.path }} build
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
# dual_examples:
|
|
|
|
# runs-on: ubuntu-latest
|
|
|
|
# strategy:
|
|
|
|
# fail-fast: false
|
|
|
|
# matrix:
|
|
|
|
# example:
|
|
|
|
# - path:
|
|
|
|
# name: ${{ matrix.example.path }}
|
|
|
|
# steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
# - uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
# with: { fetch-depth: 2 }
|
2024-01-27 01:32:58 +08:00
|
|
|
# - run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
# - run: make -C examples/${{ matrix.example.path }} device_dashboard
|
|
|
|
# - run: make -C examples/${{ matrix.example.path }} mqtt_dashboard
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
dual_examples_arm:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
example:
|
|
|
|
- path: stm32/nucleo-h723zg-make-baremetal-builtin
|
|
|
|
name: ${{ matrix.example.path }}
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/${{ matrix.example.path }} device_dashboard
|
|
|
|
- run: make -C examples/${{ matrix.example.path }} mqtt_dashboard
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
cube_examples:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-27 01:32:58 +08:00
|
|
|
- run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: cd test/cube && make
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
zephyr_examples:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/zephyr init
|
2024-01-24 00:39:50 +08:00
|
|
|
- name: minify manifest
|
|
|
|
uses: mikefarah/yq@master
|
|
|
|
with:
|
|
|
|
cmd: yq -i eval '(.manifest.defaults, .manifest.remotes, .manifest.projects[] | select(.name == "cmsis" or .name == "hal_stm32" or .name == "mbedtls" or .name == "mcuboot" or .name == "picolibc" | del(.null) ), .manifest.self) as $i ireduce({};setpath($i | path; $i)) | del(.manifest.projects.[].null) | del(..|select(length==0))' examples/zephyr/zephyrproject/zephyr/west.yml
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: make -C examples/zephyr update
|
|
|
|
- run: make -C examples/zephyr/device-dashboard build
|
|
|
|
- run: make -C examples/zephyr/http-client build
|
|
|
|
- run: make -C examples/zephyr/http-server build
|
|
|
|
- run: make -C examples/zephyr/mqtt-aws-client build
|
|
|
|
- run: make -C examples/zephyr/websocket-server build
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_f7:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/stm32/nucleo-f746zg-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/stm32/nucleo-f746zg-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/stm32/nucleo-f746zg-make-freertos-tcp test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
- name: Cube
|
2024-01-27 01:32:58 +08:00
|
|
|
run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-f746zg-cube-baremetal-builtin VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=5
|
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-f746zg-cube-freertos-builtin VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=5
|
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-f746zg-cube-freertos-lwip VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=5
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_f4:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/stm32/nucleo-f429zi-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/stm32/nucleo-f429zi-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
- name: Cube
|
2024-01-27 01:32:58 +08:00
|
|
|
run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-f429zi-cube-baremetal-builtin VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=2
|
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-f429zi-cube-freertos-builtin VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=2
|
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-f429zi-cube-freertos-lwip VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=2
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_h743:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 3 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/stm32/nucleo-h743zi-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/stm32/nucleo-h743zi-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
- name: Cube
|
2024-01-27 01:32:58 +08:00
|
|
|
run: echo # nothing specific to install or do
|
2024-01-26 23:46:53 +08:00
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-h743zi-cube-baremetal-builtin VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=6
|
|
|
|
- run: make -C test/cube test PROJECTS=../../examples/stm32/nucleo-h743zi-cube-freertos-builtin VCON_API_KEY=${{secrets.VCON_API_KEY}} DEVICE=6
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_h723:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 3 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/stm32/nucleo-h723zg-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/stm32/nucleo-h723zg-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_h5:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 3 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/stm32/nucleo-h563zi-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/stm32/nucleo-h563zi-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_rt1020:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 3 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/nxp/rt1020-evk-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/nxp/rt1020-evk-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_rt1060:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 3 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/nxp/rt1060-evk-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/nxp/rt1060-evk-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
|
2024-04-05 04:15:42 +08:00
|
|
|
test_rt1170:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
with: { fetch-depth: 3 }
|
|
|
|
- name: baremetal
|
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/nxp/rt1170-evk-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-05-30 23:23:19 +08:00
|
|
|
- run: make -C examples/nxp/rt1170-evk-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-04-05 04:15:42 +08:00
|
|
|
|
|
|
|
test_ra6m4:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
with: { fetch-depth: 3 }
|
|
|
|
- name: baremetal
|
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/renesas/ek-ra6m4-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
# - run: make -C examples/renesas/ek-ra6m4-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
|
2024-01-24 00:39:50 +08:00
|
|
|
test_tm4c:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/ti/ek-tm4c1294xl-make-baremetal-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/ti/ek-tm4c1294xl-make-freertos-builtin test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_same54:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
|
|
|
- name: baremetal
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/microchip/same54-xpro/device-dashboard test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
|
|
|
- run: make -C examples/microchip/same54-xpro/mqtt-client test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
|
|
|
|
test_pico_w5500:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2024-04-05 04:15:42 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-01-24 00:39:50 +08:00
|
|
|
with: { fetch-depth: 2 }
|
|
|
|
- name: SDK
|
2024-01-26 23:46:53 +08:00
|
|
|
run: sudo apt -y update && sudo apt -y install gcc-arm-none-eabi
|
|
|
|
- run: make -C examples/rp2040/pico-w5500 test VCON_API_KEY=${{secrets.VCON_API_KEY}}
|
2024-01-24 00:39:50 +08:00
|
|
|
|