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"