Skip to content

Commit

Permalink
Add workflow for building VST
Browse files Browse the repository at this point in the history
  • Loading branch information
Danand committed Jul 27, 2023
1 parent 5b8c892 commit 8cfc7f4
Showing 1 changed file with 81 additions and 0 deletions.
81 changes: 81 additions & 0 deletions .github/workflows/release-vst.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
name: Release Juicy Noise VST

on:
push:
tags:
- '*'

jobs:
build:
strategy:
matrix:
os: [
ubuntu-latest,
]

runs-on: ${{ matrix.os }}

steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive

- name: Build for Linux
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt update
sudo apt install \
libasound2-dev \
libjack-jackd2-dev \
ladspa-sdk \
libcurl4-openssl-dev \
libfreetype6-dev \
libx11-dev \
libxcomposite-dev \
libxcursor-dev \
libxcursor-dev \
libxext-dev \
libxinerama-dev \
libxrandr-dev \
libxrender-dev \
libwebkit2gtk-4.0-dev \
libglu1-mesa-dev \
mesa-common-dev
project_path="${PWD}/juicy-noise-fx/juicy-noise-fx.jucer"
pushd "JUCE/extras/Projucer/Builds/LinuxMakefile"
make
pushd "build"
chmod +x ./Projucer
./Projucer --resave "${project_path}"
popd
popd
make_dir="juicy-noise-fx/Builds/LinuxMakefile"
mkdir -p "${make_dir}"
pushd "${make_dir}"
make VST3
- name: Pack artifacts
run: |
vst_name="juicy-noise-fx.vst3"
find . -type d -name "${vst_name}" \
| while read -r vst_dir; do
for platform_dir in "${vst_dir}/Contents/"*; do
platform="$(basename "${platform_dir}")"
archive_name="juicy-noise-fx-${platform}"
mkdir "${archive_name}"
cp -r "${vst_dir}" "${archive_name}/${vst_name}"
pushd "${archive_name}"
zip -r "${archive_name}.zip" "${vst_name}/"
popd
cp "${archive_name}/${archive_name}.zip" "${archive_name}.zip"
rm -rf "${archive_name}"
done
done
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
token: ${{ secrets._GITHUB_PAT }}
files: juicy-noise-fx-*.zip

0 comments on commit 8cfc7f4

Please sign in to comment.