Update CI configurations (#2347) #64
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: "PR Checks" | |
on: push | |
jobs: | |
build-test-windows: | |
name: "Build and Test on Windows" | |
runs-on: windows-2019 | |
env: | |
VCPKG_BINARY_SOURCES: 'clear;nuget,GitHub,readwrite' | |
steps: | |
- name: "Checkout Repository" | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: "Checkout vcpkg" | |
uses: actions/checkout@v2 | |
with: | |
repository: microsoft/vcpkg | |
ref: 2023.12.12 | |
path: vcpkg | |
- name: "Setup NuGet Credentials" | |
run: nuget sources add | |
-source "https://nuget.pkg.github.com/tangrams/index.json" | |
-name GitHub | |
-username tangrams | |
-password ${{ secrets.GITHUB_TOKEN }} | |
-storepasswordincleartext | |
- name: "Configure CMake" | |
run: cmake -S . -B .\build -G "Visual Studio 16 2019" | |
-DCMAKE_TOOLCHAIN_FILE=".\vcpkg\scripts\buildsystems\vcpkg.cmake" | |
-DCMAKE_BUILD_TYPE=Debug | |
-DTANGRAM_BUILD_TESTS=1 | |
- name: "Run Build" | |
run: cmake --build .\build | |
- name: "Run Tests" | |
run: .\tests\Debug\tests.out.exe | |
working-directory: .\build | |
build-test-macos: | |
name: "Build and Test on macOS" | |
runs-on: macos-12 | |
steps: | |
- name: "Checkout Repository" | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: "Install dependencies" | |
run: brew install ninja ccache | |
- name: "Cache ccache directory" | |
uses: actions/cache@v2 | |
with: | |
path: ~/Library/Caches/ccache | |
key: macos-ccache-v1-${{ github.sha }} | |
restore-keys: macos-ccache-v1- | |
- name: "Reset ccache stats" | |
run: ccache --zero-stats | |
- name: "Configure CMake" | |
run: cmake -S . -B ./build -G Ninja | |
-DCMAKE_BUILD_TYPE=Debug | |
-DCMAKE_C_COMPILER_LAUNCHER=ccache | |
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache | |
-DTANGRAM_BUILD_TESTS=1 | |
- name: "Run build" | |
run: cmake --build ./build | |
- name: "Print ccache stats" | |
run: ccache --show-stats | |
- name: "Run Tests" | |
run: ./tests/tests.out | |
working-directory: ./build | |
- name: "Upload demo app" | |
uses: actions/upload-artifact@v2 | |
with: | |
name: macos-app | |
path: build/*.app | |
retention-days: 60 | |
build-ios: | |
name: "Build for iOS" | |
runs-on: macos-12 | |
steps: | |
- name: "Checkout Repository" | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: "Install dependencies" | |
run: brew install ccache | |
- name: "Cache ccache directory" | |
uses: actions/cache@v2 | |
with: | |
path: ~/Library/Caches/ccache | |
key: ios-ccache-v1-${{ github.sha }} | |
restore-keys: ios-ccache-v1- | |
- name: "Reset ccache stats" | |
run: ccache --zero-stats | |
- name: "Build iOS simulator app with framework" | |
run: make ios-sim BUILD_TYPE=Debug CMAKE_OPTIONS="-DTANGRAM_XCODE_USE_CCACHE=1" | |
- name: "Build iOS simulator app with static library" | |
run: make ios-static-sim BUILD_TYPE=Debug CMAKE_OPTIONS="-DTANGRAM_XCODE_USE_CCACHE=1" | |
- name: "Build iOS Swift app" | |
run: make ios-swift-sim BUILD_TYPE=Debug CMAKE_OPTIONS="-DTANGRAM_XCODE_USE_CCACHE=1" | |
- name: "Print ccache stats" | |
run: ccache --show-stats |