Feature/769 libuv package and thread header #4520
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: Celix MacOS | |
| on: | |
| push: | |
| pull_request: | |
| schedule: | |
| - cron: '0 0 * * *' | |
| env: | |
| CONAN_USER_HOME: "${{ github.workspace }}/release/" | |
| CONAN_USER_HOME_SHORT: "${{ github.workspace }}/release/short" | |
| CONAN_HOME: "${{ github.workspace }}/release/" | |
| CCACHE_DIR: "${{ github.workspace }}/.ccache" | |
| CCACHE_SLOPPINESS: include_file_ctime,include_file_mtime | |
| jobs: | |
| macos-build-conan: | |
| runs-on: macOS-15 | |
| timeout-minutes: 120 | |
| steps: | |
| - name: Checkout source code | |
| uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c #v3.3.0 | |
| - name: Set up Python | |
| uses: actions/setup-python@7f4fc3e22c37d6ff65e88745f38bd3157c663f7c #v4.9.1 | |
| with: | |
| python-version: '3.x' | |
| - name: Install Conan | |
| run: pip install conan | |
| - name: Setup Conan Profile | |
| run: | | |
| conan profile detect -f | |
| echo "[tool_requires]" >> `conan profile path default` | |
| echo "cmake/3.26.4" >> `conan profile path default` | |
| - name: Conan Cache | |
| id: cache-conan | |
| uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf #v4.2.2 | |
| env: | |
| cache-name: cache-conan2-modules | |
| with: | |
| path: ${{ env.CONAN_HOME }} | |
| key: ${{ runner.os }}-test-builder-${{ env.cache-name }}-Release-${{ hashFiles('conanfile.py') }} | |
| restore-keys: ${{ runner.os }}-test-builder-${{ env.cache-name }}-Release- | |
| - name: Prepare ccache timestamp | |
| id: ccache_cache_timestamp | |
| run: | | |
| echo timestamp=`date +"%Y-%m-%d-%H;%M;%S"` >> $GITHUB_OUTPUT | |
| - name: ccache Cache | |
| uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf #v4.2.2 | |
| with: | |
| path: ${{ env.CCACHE_DIR }} | |
| key: ${{ runner.os }}-test-ccache-Release-${{ steps.ccache_cache_timestamp.outputs.timestamp }} | |
| restore-keys: | | |
| ${{ runner.os }}-test-ccache-Release- | |
| - name: Install Dependencies and Build | |
| env: | |
| CONAN_BUILD_OPTIONS: | | |
| -o celix/*:enable_testing=True | |
| -o celix/*:enable_benchmarking=True | |
| -o celix/*:enable_address_sanitizer=True | |
| -o celix/*:build_all=True | |
| -o celix/*:enable_cmake_warning_tests=True | |
| -o celix/*:enable_testing_on_ci=True | |
| -o celix/*:framework_curlinit=False | |
| -o celix/*:enable_ccache=True | |
| run: | | |
| conan build . -c tools.cmake.cmaketoolchain:generator=Ninja -pr:b default -pr:h default -s:b build_type=Release -s:h build_type=Release -of build ${CONAN_BUILD_OPTIONS} -b missing | |
| - name: Test | |
| run: | | |
| cd build | |
| source conanrun.sh | |
| ctest --output-on-failure | |
| source deactivate_conanrun.sh | |
| macos-build-brew: | |
| runs-on: macOS-15 | |
| timeout-minutes: 120 | |
| steps: | |
| - name: Checkout source code | |
| uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c #v3.3.0 | |
| - name: Install dependencies | |
| run: | | |
| brew install lcov jansson rapidjson libzip ccache ninja openssl@1.1 google-benchmark libuv | |
| - name: Prepare ccache timestamp | |
| id: ccache_cache_timestamp | |
| run: | | |
| echo timestamp=`date +"%Y-%m-%d-%H;%M;%S"` >> $GITHUB_OUTPUT | |
| - name: ccache Cache | |
| uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf #v4.2.2 | |
| with: | |
| path: ${{ env.CCACHE_DIR }} | |
| key: ${{ runner.os }}-brew-test-ccache-Release-${{ steps.ccache_cache_timestamp.outputs.timestamp }} | |
| restore-keys: | | |
| ${{ runner.os }}-brew-test-ccache-Release- | |
| - name: Build | |
| env: | |
| BUILD_OPTIONS: | | |
| -DENABLE_TESTING=ON | |
| -DENABLE_BENCHMARKING=ON | |
| -DENABLE_ADDRESS_SANITIZER=ON | |
| -DENABLE_TESTING_ON_CI=ON | |
| -DCMAKE_BUILD_TYPE=Release | |
| -DENABLE_CCACHE=ON | |
| -DCMAKE_POLICY_VERSION_MINIMUM=3.5 | |
| -G Ninja | |
| run: | | |
| mkdir build install | |
| cd build | |
| cmake ${BUILD_OPTIONS} -DCMAKE_INSTALL_PREFIX=../install .. | |
| ninja && ninja install | |
| - name: Test | |
| run: | | |
| cd $GITHUB_WORKSPACE/build | |
| export DYLD_LIBRARY_PATH=$(brew --prefix openssl@1.1)/lib/:$DYLD_LIBRARY_PATH:$(pwd)/utils:$(pwd)/framework:$(pwd)/dfi | |
| ctest --output-on-failure |