name: Build on: [push, pull_request] jobs: build: strategy: matrix: idf_ver: ["latest", "release-v4.1", "release-v4.2", "release-v4.3", "release-v4.4"] example: ["pppos_client", "modem_console", "ap_to_pppos", "simple_cmux_client"] idf_target: ["esp32"] exclude: - idf_ver: "release-v4.1" example: modem_console - idf_ver: "release-v4.1" example: ap_to_pppos - idf_ver: "release-v4.1" example: simple_cmux_client - idf_ver: "release-v4.2" example: simple_cmux_client runs-on: ubuntu-20.04 container: espressif/idf:${{ matrix.idf_ver }} steps: - name: Checkout esp-protocols uses: actions/checkout@master with: path: esp-protocols - name: Build ${{ matrix.example }} with IDF-${{ matrix.idf_ver }} for ${{ matrix.idf_target }} env: IDF_TARGET: ${{ matrix.idf_target }} shell: bash run: | . ${IDF_PATH}/export.sh cd $GITHUB_WORKSPACE/esp-protocols/components/esp_modem/examples/${{ matrix.example }} idf.py build