DOCSP-53340: Add converted .md docs to source code repo /docs-sdk dir for community access #1241
Workflow file for this run
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: CMake Build | |
| env: | |
| APIKEY: ${{ secrets.REALM_BAASAAS_API_KEY }} | |
| REALM_CI: true | |
| REALM_DISABLE_ANALYTICS: true | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| jobs: | |
| build-macos: | |
| runs-on: macos-14 | |
| name: macOS ${{ matrix.configuration }}, Xcode ${{ matrix.xcode }}, REALM_DISABLE_ALIGNED_STORAGE=${{ matrix.disable-aligned-storage }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| xcode: | |
| - '15.4' | |
| configuration: | |
| - Debug | |
| - Release | |
| disable-aligned-storage: | |
| - 1 | |
| - 0 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| with: | |
| submodules: 'recursive' | |
| - name: Setup Ccache | |
| uses: hendrikmuhs/ccache-action@v1.1 | |
| with: | |
| key: ccache-macos-${{ matrix.xcode }}-disable-aligned-storage-${{ matrix.disable-aligned-storage }}-${{ matrix.configuration }} | |
| - name: Setup Ninja | |
| uses: seanmiddleditch/gha-setup-ninja@master | |
| - name: Setup Xcode | |
| uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: ${{ matrix.xcode }} | |
| - uses: ammaraskar/gcc-problem-matcher@master | |
| - name: Configure | |
| run: cmake --preset macos -DCMAKE_VERBOSE_MAKEFILE=${RUNNER_DEBUG:-OFF} -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DREALM_ENABLE_EXPERIMENTAL=1 -DREALM_DISABLE_ALIGNED_STORAGE=${{ matrix.disable-aligned-storage }} -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache | |
| - name: Compile | |
| run: cmake --build --preset macos --config ${{ matrix.configuration }} | |
| - name: Non Sync Tests | |
| working-directory: .build/cmake-preset-macos/tests/${{ matrix.configuration }}/ | |
| run: ./cpprealm_db_tests | |
| - name: Publish Test Report | |
| uses: mikepenz/action-junit-report@v3 | |
| if: always() | |
| with: | |
| report_paths: '.build/**/TestResults.xml' | |
| annotate_only: true | |
| require_tests: true | |
| - name: Open a tmate debug session | |
| if: ${{ failure() && runner.debug }} | |
| uses: mxschmitt/action-tmate@v3 | |
| with: | |
| timeout-minutes: 15 | |
| build-linux: | |
| runs-on: ubuntu-latest | |
| name: Linux ${{ matrix.configuration }} (${{ matrix.compiler.name }} ${{ matrix.compiler.version }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| compiler: | |
| - name: gcc | |
| version: "8.3" | |
| - name: gcc | |
| version: "9.1" | |
| - name: gcc | |
| version: "10.1" | |
| - name: gcc | |
| version: "11.1" | |
| - name: gcc | |
| version: "12.1" | |
| - name: clang | |
| version: 15 | |
| configuration: | |
| - Debug | |
| - Release | |
| container: | |
| image: ${{ matrix.compiler.name == 'clang' && 'silkeh/clang' || matrix.compiler.name }}:${{ matrix.compiler.version }} | |
| steps: | |
| - name: Install Linux Dependencies | |
| run: | | |
| apt-get update | |
| apt-get install -y \ | |
| git \ | |
| libcurl4-openssl-dev \ | |
| libssl-dev \ | |
| libuv1-dev \ | |
| ninja-build \ | |
| sudo \ | |
| zlib1g-dev \ | |
| valgrind | |
| - name: Setup Ccache | |
| uses: hendrikmuhs/ccache-action@v1.1 | |
| with: | |
| key: ccache-linux-${{ matrix.compiler.name }}-${{ matrix.compiler.version }}-${{ matrix.configuration }} | |
| - name: Setup CMake | |
| uses: jwlawson/actions-setup-cmake@v1.13 | |
| with: | |
| cmake-version: latest | |
| - uses: ammaraskar/gcc-problem-matcher@master | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| with: | |
| submodules: 'recursive' | |
| - name: Configure | |
| run: cmake --preset linux -DCMAKE_VERBOSE_MAKEFILE=${RUNNER_DEBUG:-OFF} -DREALM_ENABLE_EXPERIMENTAL=1 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache | |
| - name: Compile | |
| run: cmake --build --preset linux --config ${{ matrix.configuration }} | |
| - name: Test | |
| working-directory: .build/cmake-preset-linux/tests/${{ matrix.configuration }}/ | |
| run: ./cpprealm_db_tests | |
| - name: Publish Test Report | |
| uses: mikepenz/action-junit-report@v4 | |
| if: always() | |
| with: | |
| report_paths: '.build/**/TestResults.xml' | |
| annotate_only: true | |
| require_tests: true | |
| - name: Open a tmate debug session | |
| if: ${{ failure() && runner.debug }} | |
| uses: mxschmitt/action-tmate@v3 | |
| with: | |
| timeout-minutes: 15 | |
| build-windows: | |
| runs-on: windows-2022 | |
| name: Windows ${{ matrix.configuration }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| configuration: | |
| - Debug | |
| - Release | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| with: | |
| submodules: 'recursive' | |
| - uses: ammaraskar/msvc-problem-matcher@master | |
| - name: Setup Ccache | |
| uses: hendrikmuhs/ccache-action@v1.2 | |
| with: | |
| key: windows-${{ matrix.configuration }} | |
| - name: Setup CMake | |
| uses: jwlawson/actions-setup-cmake@v1.13 | |
| with: | |
| cmake-version: latest | |
| - name: Configure | |
| run: cmake --preset windows-x64 -DENABLE_STATIC=1 -DREALM_ENABLE_EXPERIMENTAL=1 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache | |
| - name: Compile | |
| run: cmake --build --preset windows-x64 --config ${{ matrix.configuration }} | |
| - name: Non Sync Tests | |
| working-directory: .build/cmake-preset-windows-x64/tests/${{ matrix.configuration }}/ | |
| run: ./cpprealm_db_tests | |
| - name: Publish Test Report | |
| uses: mikepenz/action-junit-report@v3 | |
| if: always() | |
| with: | |
| report_paths: '.build/**/TestResults.xml' | |
| annotate_only: true | |
| require_tests: true |