Skip to content

[Conan] Update sparrow version #292

[Conan] Update sparrow version

[Conan] Update sparrow version #292

Workflow file for this run

name: Windows build and test
on:
workflow_dispatch:
pull_request:
push:
branches: [main]
defaults:
run:
shell: bash -e -l {0}
jobs:
windows_build_from_conda_forge:
runs-on: windows-latest
strategy:
matrix:
build_type: [Release, Debug]
build_shared: [ON, OFF]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Create build environment
uses: mamba-org/setup-micromamba@v2
with:
environment-file: ./environment-dev.yml
environment-name: build_env
init-shell: bash
cache-environment: true
- name: Configure using cmake
run: |
if [ "${{ matrix.build_type }}" == "Release" ]; then
GLOB_PREFIX_PATH="$CONDA_PREFIX"
elif [ "${{ matrix.build_type }}" == "Debug" ]; then
GLOB_PREFIX_PATH="$CONDA_PREFIX/Library/debug;$CONDA_PREFIX"
fi
cmake -S ./ -B ./build \
-DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX \
-DCMAKE_PREFIX_PATH=$GLOB_PREFIX_PATH \
-DSPARROW_IPC_BUILD_SHARED=${{ matrix.build_shared }} \
-DSPARROW_IPC_BUILD_TESTS=ON \
-DSPARROW_IPC_BUILD_EXAMPLES=ON
- name: Build sparrow-ipc
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target sparrow-ipc
- name: Build tests
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target test_sparrow_ipc_lib
- name: Run tests
working-directory: build
run: |
cmake --build . --config ${{ matrix.build_type }} --target run_tests_with_junit_report
- name: Build example
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target write_and_read_streams
- name: Run example
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target run_example
- name: Install
working-directory: build
run: cmake --install . --config ${{ matrix.build_type }}
windows_build_fetch_from_source:
runs-on: windows-latest
strategy:
matrix:
build_type: [Release, Debug]
build_shared: [ON, OFF]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Enable tests coverage
if: matrix.build_type == 'Debug'
run: |
choco install opencppcoverage
echo "TEST_COVERAGE_ACTIVATION=-DSPARROW_IPC_ENABLE_COVERAGE=ON" >> $GITHUB_ENV
- name: Configure using cmake
run: |
cmake -S ./ -B ./build \
-DSPARROW_IPC_BUILD_SHARED=${{ matrix.build_shared }} \
-DSPARROW_IPC_BUILD_TESTS=ON \
-DSPARROW_IPC_BUILD_EXAMPLES=ON \
-DFETCH_DEPENDENCIES_WITH_CMAKE=MISSING \
$TEST_COVERAGE_ACTIVATION
- name: Build sparrow-ipc
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target sparrow-ipc
- name: Build tests
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target test_sparrow_ipc_lib
- name: Run tests
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target run_tests_with_junit_report
- name: Build example
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target write_and_read_streams
- name: Run example
working-directory: build
run: cmake --build . --config ${{ matrix.build_type }} --target run_example
- name: Install
working-directory: build
run: cmake --install . --config ${{ matrix.build_type }}
- name: Tests coverage
if: matrix.build_type == 'Debug'
working-directory: build
run: |
cmake --build . --config Debug --target sparrow_ipc_generate_cobertura
- name: Upload coverage to Codecov
if: matrix.build_type == 'Debug'
uses: codecov/codecov-action@v5
with:
directory: ./build/coverage_reports/
fail_ci_if_error: true
files: ./cobertura.xml
flags: unittests
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true