Skip to content

Commit

Permalink
Pull Request Workflow in place, for testing
Browse files Browse the repository at this point in the history
This is basically the things we care about from the PR
side of azure at least.
  • Loading branch information
baconpaul committed Jul 30, 2024
1 parent 844bb0d commit 81e29dd
Showing 1 changed file with 92 additions and 0 deletions.
92 changes: 92 additions & 0 deletions .github/workflows/build-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
name: Build Pull Request
on:
pull_request:

defaults:
run:
shell: bash

jobs:
build_plugin:
name: PR - ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- name: "windows msvc"
os: windows-latest
target: surge-xt_Standalone
cmakeConfig: -DCMAKE_BUILD_TYPE=Debug -A x64
runTests: false
- name: "windows clang"
os: windows-latest
target: surge-xt_Standalone
cmakeConfig: -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang
runTests: false
- name: "ubuntu standalone"
os: ubuntu-latest
target: scxt_plugin_Standalone
cmakeConfig: -DCMAKE_BUILD_TYPE=Debug
runTests: false
- name: "macos standalone"
os: macos-latest
target: scxt_plugin_Standalone
cmakeConfig: -DCMAKE_BUILD_TYPE=Debug -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
runTests: false

- name: "mac test runner"
os: macos-latest
target: surge-testrunner
cmakeConfig: -DCMAKE_BUILD_TYPE=Release
runTests: true
- name: "linux test runner"
os: ubuntu-latest
target: surge-testrunner
cmakeConfig: -DCMAKE_BUILD_TYPE=Release
runTests: true
- name: "windows test runner"
os: windows-latest
target: surge-testrunner
cmakeConfig: -A x64 -DCMAKE_BUILD_TYPE=Release
runTests: true
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive

- name: Prepare for JUCE
uses: surge-synthesizer/sst-githubactions/prepare-for-juce@main
with:
os: ${{ runner.os }}

- name: Build pull request version
run: |
cmake -S . -B ./build -DCMAKE_BUILD_TYPE=Debug ${{ matrix.cmakeConfig }}
cmake --build ./build --config Debug --target ${{ matrix.target }} --parallel 3
- name: Run Tests
if: ${{ matrix.runTests }}
run: |
set -e
cd build
ctest -j 4 || ctest --rerun-failed --output-on-failure
build_plugin_lindoc:
name: PR - U18 Docker
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive

- name: Build in Docker
uses: surge-synthesizer/sst-githubactions/cmake-in-docker@main
with:
username: ${{ github.actor }}
token: ${{ secrets.GITHUB_TOKEN }}
cmakeArgs: -DCMAKE_BUILD_TYPE=Debug -GNinja
target: surge-xt_Standalone

0 comments on commit 81e29dd

Please sign in to comment.