Files
mongoose/.github/workflows/on_demand.yml
T
2026-06-05 17:11:34 -03:00

64 lines
2.7 KiB
YAML

name: On demand ad hoc test
on:
workflow_dispatch:
env:
IPV6: 0
jobs:
mip:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
cc: [gcc]
target: [mip_tap_test]
ssl: ["", BUILTIN, MBEDTLS, OPENSSL, WOLFSSL]
# #3226: built-in TCP is currently not working with WolfSSL (builds fine)
exclude:
- ssl: WOLFSSL
target: mip_tap_test
name: ${{ matrix.target }} CC=${{ matrix.cc }} SSL=${{ matrix.ssl }}
env:
CC: ${{ matrix.cc }}
SSL: ${{ matrix.ssl }}
TFLAGS: -DMQTT_HOST -DNO_ABORT # -DMQTT_HOST_NAME=\"server\"
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 2 }
- uses: webfactory/ssh-agent@v0.9.1
with:
ssh-private-key: ${{ secrets.HEALTH_TESTS_SSH_KEY }}
- run: if [ "${{ matrix.target }}" == "mip_tap_test" ]; then source ./test/setup_ga_network.sh ; export IPV6=0; sed -i -e "s/127.0.0.1/$HOST_IP/" test/mosquitto.conf; ./test/setup_mqtt_server.sh; else export IPV6=1 ; fi && sudo apt -y update ; sudo apt -y install libmbedtls-dev libwolfssl-dev && make -C test ${{ matrix.target }} > log
- if: success() || failure()
run: |
cat log
test/health.awk < log > json
scp -o "StrictHostKeyChecking=no" json "root@176.9.217.245:/data/downloads/health/${{ matrix.target }}_${{ matrix.cc }}_${{ matrix.ssl }}_$(date +"%Y%m%d").json"
# macos:
# runs-on: macos-latest
# strategy:
# fail-fast: false
# matrix:
# ssl: [MBEDTLS, WOLFSSL]
# select: [-DMG_ENABLE_POLL=1]
# name: macos SSL=${{ matrix.ssl }} TFLAGS=${{ matrix.select }}
# env:
# SSL: ${{ matrix.ssl }}
# TFLAGS: ${{ matrix.select }} -DMQTT_LOCALHOST -DNO_ABORT -Wno-sign-conversion -Wno-undef # Workarounds for MbedTLS
# HOMEBREW_NO_AUTO_UPDATE: 1
# steps:
# - uses: actions/checkout@v4
# with: { fetch-depth: 2 }
# - uses: webfactory/ssh-agent@v0.9.1
# with:
# ssh-private-key: ${{ secrets.HEALTH_TESTS_SSH_KEY }}
# - run: brew install mbedtls wolfssl mosquitto gawk # jq openssl already pre-installed
# - run: /opt/homebrew/opt/mosquitto/sbin/mosquitto -c /Users/runner/work/mongoose/mongoose/test/mosquitto.conf.macos &
# - run: make -C test test ASAN_OPTIONS= MBEDTLS=$(echo $(brew --cellar)/mbedtls*/*) OPENSSL=$(echo $(brew --cellar)/openssl*/*) WOLFSSL=$(echo $(brew --cellar)/wolfssl*/*) > log
# - if: success() || failure()
# run: |
# cat log
# test/health.awk < log > json
# scp -o "StrictHostKeyChecking=no" json "root@176.9.217.245:/data/downloads/health/macos_test_cc_${{ matrix.ssl }}_${{ matrix.select }}_$(date +"%Y%m%d").json"