Add MtsClient for MTS-ESP client interactions #80
Workflow file for this run
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: Releases | |
on: | |
push: | |
tags: | |
- '*' | |
env: | |
CARGO_TERM_COLOR: always | |
OCTASINE_SEMVER_VERSION: "v0.9" | |
jobs: | |
cargo-deny: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: EmbarkStudios/cargo-deny-action@v1 | |
with: | |
log-level: warn | |
command: check licenses | |
arguments: --all-features --workspace | |
build-macos: | |
runs-on: macos-11 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install latest Rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
targets: aarch64-apple-darwin | |
- name: Setup Rust dependency caching | |
uses: Swatinem/rust-cache@v2 | |
# It's unclear if xtask will be affected by env vars | |
- name: Build and bundle plugin | |
run: | | |
echo -e "[octasine]\nname = \"OctaSine $OCTASINE_SEMVER_VERSION\"" > bundler.toml | |
export SDKROOT=$(xcrun -sdk macosx11.1 --show-sdk-path) | |
echo "SDKROOT=$SDKROOT" | |
export MACOSX_DEPLOYMENT_TARGET=$(xcrun -sdk macosx11.1 --show-sdk-platform-version) | |
echo "MACOSX_DEPLOYMENT_TARGET=$MACOSX_DEPLOYMENT_TARGET" | |
cargo xtask bundle-universal -p octasine --release --verbose --features "vst2" | |
cargo xtask bundle-universal -p octasine --release --verbose --features "clap" | |
env: | |
DEVELOPER_DIR: /Applications/Xcode_12.4.app/Contents/Developer | |
shell: bash | |
- name: Install cargo-about | |
run: cargo install --debug --locked cargo-about | |
- name: Get the version | |
id: get_version | |
run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} | |
shell: bash | |
- name: Create release zip | |
run: | | |
mkdir releases | |
mkdir -p "release-tmp/OctaSine/VST2" | |
mkdir -p "release-tmp/OctaSine/CLAP" | |
cd release-tmp | |
cp -r "../target/bundled/OctaSine $OCTASINE_SEMVER_VERSION.vst" "OctaSine/VST2/OctaSine $OCTASINE_SEMVER_VERSION.vst" | |
cp -r "../target/bundled/OctaSine $OCTASINE_SEMVER_VERSION.clap" "OctaSine/CLAP/OctaSine $OCTASINE_SEMVER_VERSION.clap" | |
cargo-about generate -o "OctaSine/LICENSES.html" "../about.hbs" -m "../octasine/Cargo.toml" | |
zip -9 -r "../releases/OctaSine-${{ steps.get_version.outputs.VERSION }}-macOS.zip" "OctaSine" | |
shell: bash | |
- uses: ncipollo/release-action@v1 | |
with: | |
artifacts: "releases/*.zip" | |
draft: true | |
allowUpdates: true | |
artifactErrorsFailBuild: true | |
token: ${{ secrets.GITHUB_TOKEN }} | |
build-windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install latest Rust | |
uses: dtolnay/rust-toolchain@stable | |
- name: Setup Rust dependency caching | |
uses: Swatinem/rust-cache@v2 | |
- name: Setup MSVC shell | |
uses: ilammy/msvc-dev-cmd@v1 | |
- name: Build and bundle plugin (VST2) | |
run: cargo xtask bundle -p octasine --release --verbose --features "vst2" | |
- name: Build and bundle plugin (clap) | |
run: cargo xtask bundle -p octasine --release --verbose --features "clap" | |
- name: Install cargo-about | |
run: cargo install --debug --locked cargo-about | |
- name: Get the version | |
id: get_version | |
run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} | |
shell: bash | |
- name: Create release file | |
run: | | |
mkdir releases | |
New-Item "tmp\OctaSine" -ItemType Directory -ea 0 | |
New-Item "tmp\OctaSine\VST2" -ItemType Directory -ea 0 | |
New-Item "tmp\OctaSine\CLAP" -ItemType Directory -ea 0 | |
Copy-Item "LICENSE" -Destination "tmp\OctaSine\LICENSE.txt" | |
cargo-about generate -o "tmp\OctaSine\LICENSES.html" "about.hbs" -m "octasine\Cargo.toml" | |
$version = $env:OCTASINE_SEMVER_VERSION | |
Copy-Item "target\bundled\octasine.dll" -Destination "tmp\OctaSine\VST2\OctaSine $version.dll" | |
Copy-Item "target\bundled\octasine.clap" -Destination "tmp\OctaSine\CLAP\OctaSine $version.clap" | |
Compress-Archive -Path "tmp\OctaSine" -DestinationPath releases\OctaSine-${{ steps.get_version.outputs.VERSION }}-Windows.zip -CompressionLevel Optimal | |
- uses: ncipollo/release-action@v1 | |
with: | |
artifacts: "releases/*.zip" | |
draft: true | |
allowUpdates: true | |
artifactErrorsFailBuild: true | |
token: ${{ secrets.GITHUB_TOKEN }} | |
build-linux: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install baseview dependencies | |
run: | | |
sudo apt update | |
sudo apt install libgl-dev libx11-xcb-dev libxcb1-dev libxcb-dri2-0-dev libxcb-icccm4-dev libxcursor-dev libxkbcommon-dev libxcb-shape0-dev libxcb-xfixes0-dev | |
- name: Install latest Rust | |
uses: dtolnay/rust-toolchain@stable | |
- name: Setup Rust dependency caching | |
uses: Swatinem/rust-cache@v2 | |
- name: Build and bundle plugin (VST2) | |
run: cargo xtask bundle -p octasine --release --verbose --features "vst2" | |
- name: Build and bundle plugin (clap) | |
run: cargo xtask bundle -p octasine --release --verbose --features "clap" | |
- name: Install cargo-about | |
run: cargo install --debug --locked cargo-about | |
- name: Get the version | |
id: get_version | |
run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} | |
shell: bash | |
- name: Create release zip | |
run: | | |
mkdir releases | |
mkdir -p "release-tmp/OctaSine/VST2" | |
mkdir -p "release-tmp/OctaSine/CLAP" | |
cd release-tmp | |
cp -r ../target/bundled/octasine.so "OctaSine/VST2/OctaSine $OCTASINE_SEMVER_VERSION.so" | |
cp -r ../target/bundled/octasine.clap "OctaSine/CLAP/OctaSine $OCTASINE_SEMVER_VERSION.clap" | |
cargo-about generate -o "OctaSine/LICENSES.html" "../about.hbs" -m "../octasine/Cargo.toml" | |
zip -9 -r "../releases/OctaSine-${{ steps.get_version.outputs.VERSION }}-Ubuntu-20_04.zip" "OctaSine" | |
shell: bash | |
- uses: ncipollo/release-action@v1 | |
with: | |
artifacts: "releases/*.zip" | |
draft: true | |
allowUpdates: true | |
artifactErrorsFailBuild: true | |
token: ${{ secrets.GITHUB_TOKEN }} |