39 lines
1.4 KiB
YAML
39 lines
1.4 KiB
YAML
name: Check and build
|
|
on: [push, pull_request, workflow_dispatch]
|
|
permissions:
|
|
contents: read
|
|
jobs:
|
|
core:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
with:
|
|
components: rustfmt, clippy
|
|
- run: cargo fmt --all --check
|
|
- run: cargo test --workspace --locked
|
|
- run: cargo clippy --workspace --all-targets --locked -- -D warnings
|
|
plugin:
|
|
strategy:
|
|
matrix:
|
|
os: [windows-latest, ubuntu-latest]
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dtolnay/rust-toolchain@stable
|
|
- name: Linux GUI and audio headers
|
|
if: runner.os == 'Linux'
|
|
run: sudo apt-get update && sudo apt-get install -y libasound2-dev libjack-jackd2-dev libgl1-mesa-dev libx11-dev libxcursor-dev libx11-xcb-dev libxcb1-dev libxcb-dri2-0-dev libxcb-icccm4-dev libxkbcommon-x11-dev
|
|
- run: cargo fmt --manifest-path plugins/motif-storyboard/Cargo.toml --check
|
|
- run: cargo test --manifest-path plugins/motif-storyboard/Cargo.toml --locked
|
|
- name: Windows CLAP
|
|
if: runner.os == 'Windows'
|
|
run: python scripts/build-plugin.py
|
|
- name: Linux CLAP and standalone
|
|
if: runner.os == 'Linux'
|
|
run: python3 scripts/build-plugin.py --standalone
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: motif-storyboard-${{ runner.os }}
|
|
path: dist/
|