Skip to content

Merge upstream

Merge upstream #392

Workflow file for this run

name: Main CI
on:
push:
branches: [ main ]
paths:
- '.github/workflows/main_ci.yml'
- 'cmake/**'
- 'include/**'
- 'src/**'
- 'tests/**'
- 'CMakeLists.txt'
- 'CMakePresets.json'
- 'conanfile.py'
- 'vcpkg.json'
pull_request:
branches: [ main, feature/* ]
workflow_dispatch:
env:
VCPKG_COMMIT_ID: fc3f61366102c1f0d4547c06d03c523bb18c13a7
jobs:
build-and-test-vcpkg:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
build-type:
- debug
- release
runtime:
- all
- flatrim
- ae
- se
- vr
compiler:
- msvc
- clang-cl
steps:
- name: Checkout
uses: actions/checkout@v2
with:
path: main
- name: Setup MSVC Environment
uses: ilammy/[email protected]
- name: Setup vcpkg
uses: lukka/[email protected]
with:
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT_ID }}
doNotCache: true
- name: Build
uses: lukka/[email protected]
with:
cmakeListsTxtPath: ${{ github.workspace }}/main/CMakeLists.txt
configurePreset: build-${{ matrix.build-type }}-${{ matrix.compiler }}-vcpkg-${{ matrix.runtime }}
buildPreset: ${{ matrix.build-type }}-${{ matrix.compiler }}-vcpkg-${{ matrix.runtime }}
- name: Unit tests
timeout-minutes: 5
working-directory: ${{ github.workspace }}/main/build/${{ matrix.build-type }}-${{ matrix.compiler }}-vcpkg-${{ matrix.runtime }}
run: .\CommonLibSSETests.exe
build-and-test-conan:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
build-type:
- debug
- release
runtime:
- all
- flatrim
- ae
- se
- vr
compiler:
- msvc
- clang-cl
steps:
- name: Checkout
uses: actions/checkout@v2
with:
path: main
- name: Setup MSVC Environment
uses: ilammy/[email protected]
- name: Install Conan
uses: turtlebrowser/get-conan@main
- name: Run Conan
working-directory: ${{ github.workspace }}/main
run: conan install --build=missing -o commonlibsse-ng:testing=True .
- name: Build with CMake
uses: lukka/[email protected]
with:
cmakeListsTxtPath: ${{ github.workspace }}/main/CMakeLists.txt
configurePreset: build-${{ matrix.build-type }}-${{ matrix.compiler }}-conan-${{ matrix.runtime }}
buildPreset: ${{ matrix.build-type }}-${{ matrix.compiler }}-conan-${{ matrix.runtime }}
- name: Build with Conan
if: matrix.compiler == 'msvc' && matrix.runtime == 'all'
working-directory: ${{ github.workspace }}/main
run: conan build .
- name: Unit tests
timeout-minutes: 5
working-directory: ${{ github.workspace }}/main/build/${{ matrix.build-type }}-${{ matrix.compiler }}-conan-${{ matrix.runtime }}
run: .\CommonLibSSETests.exe
- name: Create Conan Package
if: matrix.compiler == 'msvc' && matrix.runtime == 'all'
working-directory: ${{ github.workspace }}/main
run: conan create .