chore(main): release 10.0.0 #5788
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| name: Continuous Integration | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| merge_group: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ${{ github.ref }}-${{ github.workflow }} | |
| cancel-in-progress: true | |
| env: | |
| CMAKE_BUILD_PARALLEL_LEVEL: 2 | |
| GTEST_COLOR: 1 | |
| jobs: | |
| host_build_test_ubuntu: | |
| name: Host Build & Test (ubuntu-latest) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }}-ubuntu-latest | |
| - uses: seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6 | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "host" | |
| buildPreset: "host-Debug-WithPackage" | |
| testPreset: "host" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" | |
| - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: emil | |
| path: build/host/emil-*-Linux.tar.gz | |
| if-no-files-found: error | |
| - name: Upload test logs | |
| if: ${{ failure() }} | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: test-logs | |
| path: build/host/Testing/Temporary/ | |
| host_build_test_container: | |
| name: Host Build & Test (amp-devcontainer-cpp) | |
| runs-on: ubuntu-latest | |
| container: ghcr.io/philips-software/amp-devcontainer-cpp:8.0.1@sha256:489772f6e442f93804c0ccdb8879d84fbb1a70a203e8a2885ec97b39858bddee # 8.0.1 | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }}-ubuntu-latest | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "host" | |
| buildPreset: "host-RelWithDebInfo" | |
| testPreset: "host-RelWithDebInfo" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" | |
| - name: Upload test logs | |
| if: ${{ failure() }} | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: test-logs | |
| path: build/host/Testing/Temporary/ | |
| host_build_test_clang_msvc: | |
| name: Host Build & Test (clang-msvc) | |
| runs-on: ubuntu-latest | |
| container: ghcr.io/philips-software/amp-devcontainer-cpp:8.0.1@sha256:489772f6e442f93804c0ccdb8879d84fbb1a70a203e8a2885ec97b39858bddee # 8.0.1 | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| id: cache-winsdk | |
| with: | |
| path: /winsdk | |
| key: cache-winsdk-10.0.26100-14.43.17.13 | |
| - if: ${{ steps.cache-winsdk.outputs.cache-hit != 'true' }} | |
| run: xwin --accept-license --sdk-version "10.0.26100" --crt-version "14.43.17.13" splat --preserve-ms-arch-notation --include-debug-libs && mv .xwin-cache/splat/ /winsdk | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }}-clang-msvc | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "host-ClangMsvc" | |
| buildPreset: "host-ClangMsvc-Debug" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" | |
| - if: always() | |
| run: cat build/host-ClangMsvc/compile_commands.json | |
| host_build_test: | |
| name: Host Build & Test | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [macos-latest, windows-latest] | |
| fail-fast: false | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }}-${{ matrix.os }} | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "host-single-Debug" | |
| buildPreset: "host-single-Debug" | |
| testPreset: "host-single-Debug" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" | |
| - name: Upload test logs | |
| if: ${{ failure() }} | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: test-logs | |
| path: build/host/Testing/Temporary/ | |
| host_build_no_mbedtls: | |
| name: Host Build without MbedTLS | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }}-ubuntu-latest | |
| - uses: seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6 | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "host-no-mbedtls" | |
| buildPreset: "host-no-mbedtls-Debug" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" | |
| embedded_build: | |
| name: Embedded Build | |
| runs-on: ubuntu-latest | |
| needs: [host_build_test_ubuntu] | |
| strategy: | |
| matrix: | |
| gcc: ["7-2018-q2", "8-2019-q3", "9-2020-q2", "10.3-2021.10"] | |
| configuration: ["RelWithDebInfo", "Debug"] | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Install GNU Arm Embedded Toolchain ${{ matrix.gcc }} | |
| uses: carlosperate/arm-none-eabi-gcc-action@98c40e51546516419841748d3210c290df0d2c6c # v1.13.0 | |
| with: | |
| release: ${{ matrix.gcc }} | |
| - run: sudo apt-get update && sudo apt-get install ninja-build | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }}-${{ matrix.gcc }}-${{ matrix.configuration }} | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: emil | |
| - run: tar -zxvf emil-*.tar.gz | |
| - run: mkdir install && mv emil-*/* install/ | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "embedded" | |
| buildPreset: "embedded-${{ matrix.configuration }}" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" | |
| embedded_build_without_host_install: | |
| name: Embedded Build Without Host Install | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Install GNU Arm Embedded Toolchain 10.3-2021.10 | |
| uses: carlosperate/arm-none-eabi-gcc-action@98c40e51546516419841748d3210c290df0d2c6c # v1.13.0 | |
| with: | |
| release: "10.3-2021.10" | |
| - run: sudo apt-get update && sudo apt-get install ninja-build | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }} | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "embedded" | |
| buildPreset: "embedded-RelWithDebInfo" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" | |
| rtos: | |
| name: Embedded Build - RTOS | |
| runs-on: ubuntu-latest | |
| needs: [host_build_test_ubuntu] | |
| strategy: | |
| matrix: | |
| rtos: ["FreeRTOS", "ThreadX"] | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Install GNU Arm Embedded Toolchain 10.3-2021.10 | |
| uses: carlosperate/arm-none-eabi-gcc-action@98c40e51546516419841748d3210c290df0d2c6c # v1.13.0 | |
| with: | |
| release: "10.3-2021.10" | |
| - run: sudo apt-get update && sudo apt-get install ninja-build | |
| - uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23 | |
| with: | |
| key: ${{ github.job }} | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: emil | |
| - run: tar -zxvf emil-*.tar.gz | |
| - run: mkdir install && mv emil-*/* install/ | |
| - uses: lukka/run-cmake@5d55ea7949e25f69f0ecb516d8d572297e03a956 # v10.9 | |
| with: | |
| configurePreset: "embedded-${{ matrix.rtos }}" | |
| buildPreset: "embedded-${{ matrix.rtos }}-RelWithDebInfo" | |
| configurePresetAdditionalArgs: "['-DCMAKE_C_COMPILER_LAUNCHER=ccache', '-DCMAKE_CXX_COMPILER_LAUNCHER=ccache']" |