Updated to latest preview Mac image for CI. #212
This file contains 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: DeepSea | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
env: | |
CTEST_OUTPUT_ON_FAILURE: '1' | |
GTEST_OUTPUT: xml:${{ github.workspace }}/test-results/ | |
cores_count: '2' | |
cores_mac_count: '3' | |
ctest_args: "-E DeepSeaRenderBootstrapTest" | |
dependency_location: "${{ github.workspace }}/dependencies" | |
gtest_version: release-1.12.1 | |
test_results_location: "${{ github.workspace }}/test-results" | |
jobs: | |
Linux: | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
include: | |
- lib_type: Static | |
cmake_args: "-DDEEPSEA_SHARED=OFF" | |
- lib_type: Shared | |
cmake_args: "-DDEEPSEA_SHARED=ON" | |
- lib_type: Single-Shared | |
cmake_args: "-DDEEPSEA_SINGLE_SHARED=ON" | |
steps: | |
- name: checkout | |
uses: actions/checkout@v3 | |
- name: Download submodules | |
run: |- | |
./update.sh -s -t -l linux | |
sudo apt-get update | |
sudo apt-get install -y libfreetype6-dev libharfbuzz-dev libsdl2-dev libgl1-mesa-dev | |
working-directory: "${{ github.workspace }}" | |
- name: Build debug | |
run: |- | |
mkdir -p build/Debug | |
cd build/Debug | |
cmake -DCMAKE_BUILD_TYPE=Debug ${{ matrix.cmake_args }} ${{ github.workspace }} | |
cmake --build . -j ${{ env.cores_count }} | |
working-directory: "${{ github.workspace }}" | |
- name: Run tests debug | |
continue-on-error: true | |
timeout-minutes: 5 | |
run: ctest ${{ env.ctest_args }} | |
working-directory: "${{ github.workspace }}/build/Debug" | |
- name: Publish test results | |
uses: EnricoMi/publish-unit-test-result-action@v2 | |
with: | |
check_name: Tests (Linux ${{ matrix.lib_type }} Debug) | |
junit_files: "${{ env.test_results_location }}/*.xml" | |
- name: Clear test results | |
run: rm *.xml | |
working-directory: "${{ env.test_results_location }}" | |
- name: Build release | |
run: |- | |
mkdir -p build/Release | |
cd build/Release | |
cmake -DCMAKE_BUILD_TYPE=Release ${{ matrix.cmake_args }} ${{ github.workspace }} | |
cmake --build . -j ${{ env.cores_count }} | |
working-directory: "${{ github.workspace }}" | |
- name: Run tests release | |
continue-on-error: true | |
timeout-minutes: 5 | |
run: ctest ${{ env.ctest_args }} | |
working-directory: "${{ github.workspace }}/build/Release" | |
- name: Publish test results | |
uses: EnricoMi/publish-unit-test-result-action@v2 | |
with: | |
check_name: Tests (Linux ${{ matrix.lib_type }} Release) | |
junit_files: "${{ env.test_results_location }}/*.xml" | |
Android: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
config: | |
- Debug | |
- Release | |
steps: | |
- name: checkout | |
uses: actions/checkout@v3 | |
- name: Download submodules | |
run: "./update.sh -s -t -l android-all" | |
working-directory: "${{ github.workspace }}" | |
- name: Build | |
run: "./gradlew bundle${{ matrix.config }}" | |
working-directory: "${{ github.workspace }}/android" | |
Mac: | |
runs-on: macos-13 | |
strategy: | |
matrix: | |
include: | |
- lib_type: Static | |
cmake_args: "-DDEEPSEA_SHARED=OFF" | |
- lib_type: Shared | |
cmake_args: "-DDEEPSEA_SHARED=ON" | |
- lib_type: Single-Shared | |
cmake_args: "-DDEEPSEA_SINGLE_SHARED=ON" | |
steps: | |
- name: checkout | |
uses: actions/checkout@v3 | |
- name: Download submodules | |
run: "./update.sh -s -t -l mac-x86_64" | |
working-directory: "${{ github.workspace }}" | |
- name: Build debug | |
run: |- | |
mkdir -p build/Debug | |
cd build/Debug | |
xcode-select -switch /Applications/Xcode_15.1.app | |
cmake -DCMAKE_BUILD_TYPE=Debug ${{ matrix.cmake_args }} ${{ github.workspace }} | |
cmake --build . -j ${{ env.cores_mac_count }} | |
working-directory: "${{ github.workspace }}" | |
- name: Run tests debug | |
continue-on-error: true | |
timeout-minutes: 5 | |
run: ctest ${{ env.ctest_args }} | |
working-directory: "${{ github.workspace }}/build/Debug" | |
- name: Publish test results | |
uses: EnricoMi/publish-unit-test-result-action/composite@v2 | |
with: | |
check_name: Tests (Mac ${{ matrix.lib_type }} Debug) | |
junit_files: "${{ env.test_results_location }}/*.xml" | |
- name: Clear test results | |
run: rm *.xml | |
working-directory: "${{ env.test_results_location }}" | |
- name: Build release | |
run: |- | |
mkdir -p build/Release | |
cd build/Release | |
xcode-select -switch /Applications/Xcode_15.1.app | |
cmake -DCMAKE_BUILD_TYPE=Release ${{ matrix.cmake_args }} ${{ github.workspace }} | |
cmake --build . -j ${{ env.cores_mac_count }} | |
working-directory: "${{ github.workspace }}" | |
- name: Run tests release | |
continue-on-error: true | |
timeout-minutes: 5 | |
run: ctest ${{ env.ctest_args }} | |
working-directory: "${{ github.workspace }}/build/Release" | |
- name: Publish test results | |
uses: EnricoMi/publish-unit-test-result-action/composite@v2 | |
with: | |
check_name: Tests (Mac ${{ matrix.lib_type }} Release) | |
junit_files: "${{ env.test_results_location }}/*.xml" | |
Windows: | |
runs-on: windows-latest | |
strategy: | |
matrix: | |
include: | |
- arch: Win32 | |
libs: win32 | |
lib_type: Static | |
cmake_args: "-DDEEPSEA_SHARED=OFF" | |
- arch: Win32 | |
libs: win32 | |
lib_type: Shared | |
cmake_args: "-DDEEPSEA_SHARED=ON" | |
- arch: x64 | |
libs: win64 | |
lib_type: Single-Shared | |
cmake_args: "-DDEEPSEA_SINGLE_SHARED=ON" | |
- arch: x64 | |
libs: win64 | |
lib_type: Static | |
cmake_args: "-DDEEPSEA_SHARED=OFF" | |
- arch: x64 | |
libs: win64 | |
lib_type: Shared | |
cmake_args: "-DDEEPSEA_SHARED=ON" | |
- arch: x64 | |
libs: win64 | |
lib_type: Single-Shared | |
cmake_args: "-DDEEPSEA_SINGLE_SHARED=ON" | |
steps: | |
- name: checkout | |
uses: actions/checkout@v3 | |
- name: Download submodules | |
run: "./update.sh -m -t -l ${{ matrix.libs }}" | |
shell: bash | |
working-directory: "${{ github.workspace }}" | |
- name: Run CMake | |
run: |- | |
mkdir build | |
cd build | |
cmake ${{ matrix.cmake_args }} -A ${{ matrix.arch }} -T v141 ${{ github.workspace }} | |
working-directory: "${{ github.workspace }}" | |
- name: Build debug | |
run: cmake --build . --config Debug | |
working-directory: "${{ github.workspace }}/build" | |
- name: Run tests debug | |
continue-on-error: true | |
timeout-minutes: 5 | |
run: ctest ${{ env.ctest_args }} -C Debug | |
working-directory: "${{ github.workspace }}/build" | |
- name: Publish test results | |
uses: EnricoMi/publish-unit-test-result-action/composite@v2 | |
with: | |
check_name: Tests (Windows ${{ matrix.arch }} ${{ matrix.lib_type }} Debug) | |
junit_files: "${{ env.test_results_location }}/*.xml" | |
- name: Clear test results | |
run: rm *.xml | |
shell: bash | |
working-directory: "${{ env.test_results_location }}" | |
- name: Build release | |
run: cmake --build . --config Release | |
working-directory: "${{ github.workspace }}/build" | |
- name: Run tests release | |
continue-on-error: true | |
timeout-minutes: 5 | |
run: ctest ${{ env.ctest_args }} -C Release | |
working-directory: "${{ github.workspace }}/build" | |
- name: Publish test results | |
uses: EnricoMi/publish-unit-test-result-action/composite@v2 | |
with: | |
check_name: Tests (Windows ${{ matrix.arch }} ${{ matrix.lib_type }} Release) | |
junit_files: "${{ env.test_results_location }}/*.xml" | |
# vim: ts=2 sts=2 sw=2 et |