Workflow update #15
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: Scyclone | |
on: | |
workflow_dispatch: # lets you run a build from github.com | |
push: | |
branches: [ develop ] | |
# When pushing new commits, cancel any running builds on that branch | |
concurrency: | |
group: ${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) | |
BUILD_TYPE: Debug | |
CMAKE_BUILD_PARALLEL_LEVEL: 4 # Use up to 3 cpus to build juceaide, etc | |
# jobs are run in paralell on different machines | |
# all steps run in series | |
jobs: | |
cmake-build_and_ctest: | |
name: ${{ matrix.name }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false # show all errors for each platform (vs. cancel jobs on error) | |
matrix: | |
include: | |
- name: macOS | |
os: macos-latest | |
ccache: ccache | |
- name: Windows | |
os: windows-latest | |
ccache: sccache | |
steps: | |
# This lets us use sscache on Windows | |
# We need to install ccache here for Windows to grab the right version | |
- name: install Windows deps | |
if: ${{ matrix.name == 'Windows' }} | |
shell: bash | |
run: choco install ccache | |
- name: install macOS deps | |
if: ${{ matrix.name == 'macOS' }} | |
run: brew install osxutils | |
# The uses keyword tells the job to retrieve the action named actions/checkout. This is an action that checks out your repository and downloads it to the runner, allowing you to run actions against your code (such as testing tools). You must use the checkout action any time your workflow will run against the repository's code or you are using an action defined in the repository. | |
- uses: actions/checkout@v3 | |
# This will get the submodles on the runner | |
with: | |
submodules: true | |
- name: ccache | |
uses: hendrikmuhs/ccache-action@main | |
with: | |
key: v3-macos-latest-${{ env.BUILD_TYPE }} | |
variant: ccache | |
- name: cmake configure | |
run: cmake -B build -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} -DCMAKE_C_COMPILER_LAUNCHER=${{ matrix.ccache }} -DCMAKE_CXX_COMPILER_LAUNCHER=${{ matrix.ccache }} | |
- name: cmake build | |
run: cmake --build build --config ${{ env.BUILD_TYPE }} --parallel ${{ env.CMAKE_BUILD_PARALLEL_LEVEL }} | |
- name: ctest | |
working-directory: ${{github.workspace}}/build | |
run: ctest --verbose |