Skip to content

chore: changes made on the ai tool installation, project states vs gl… #31

chore: changes made on the ai tool installation, project states vs gl…

chore: changes made on the ai tool installation, project states vs gl… #31

Workflow file for this run

name: Verify
on:
push:
branches:
- main
pull_request:
workflow_dispatch:
jobs:
verify-windows:
runs-on: windows-latest
env:
VERSION: 0.0.0
BUILD_DIR: build-verify-windows
ASIO_SDK_DIR: thirdparty/asio
steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 20
cache: npm
cache-dependency-path: frontend/package-lock.json
- name: Build frontend
shell: pwsh
run: |
cd frontend
npm ci
npm run build
- name: Install ASIO SDK
shell: pwsh
run: ./tools/setup-asio-sdk.ps1 -Destination $env:ASIO_SDK_DIR
- name: Install Windows prerequisite installers
shell: pwsh
run: ./tools/setup-windows-prereqs.ps1
- name: Configure CMake
shell: pwsh
run: |
cmake -S . -B $env:BUILD_DIR -A x64 `
"-DOPENSTUDIO_APP_VERSION=$env:VERSION" `
"-DJUCE_ASIOSDK_PATH=$env:GITHUB_WORKSPACE/$env:ASIO_SDK_DIR" `
"-DOPENSTUDIO_REQUIRE_ASIO=ON" `
"-DOPENSTUDIO_ENABLE_EXTERNAL_PYTHON_AI_FALLBACK=OFF" `
-DFETCHCONTENT_UPDATES_DISCONNECTED=ON
- name: Build OpenStudio
shell: pwsh
run: cmake --build $env:BUILD_DIR --config Release --target OpenStudio
- name: Validate Windows runtime bundle
shell: pwsh
run: ./tools/validate-runtime-bundle.ps1 -Platform windows -BundlePath "$env:BUILD_DIR/OpenStudio_artefacts/Release" -ExpectedVersion $env:VERSION -EnforceLeanBundle
- name: Run Windows startup self-test
shell: pwsh
run: |
$report = Join-Path $env:RUNNER_TEMP "OpenStudio_StartupSelfTest.txt"
& "$env:BUILD_DIR/OpenStudio_artefacts/Release/OpenStudio.exe" --startup-self-test --report $report
if ($LASTEXITCODE -ne 0) {
if (Test-Path $report) {
Get-Content $report
}
throw "Windows startup self-test failed."
}
verify-macos:
runs-on: macos-14
env:
VERSION: 0.0.0
BUILD_DIR: build-verify-macos
steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: 20
cache: npm
cache-dependency-path: frontend/package-lock.json
- name: Build frontend
shell: bash
run: |
cd frontend
npm ci
npm run build
- name: Configure CMake
shell: bash
run: |
cmake -S . -B "$BUILD_DIR" \
-DOPENSTUDIO_APP_VERSION="$VERSION" \
-DOPENSTUDIO_ENABLE_EXTERNAL_PYTHON_AI_FALLBACK=OFF \
-DFETCHCONTENT_UPDATES_DISCONNECTED=ON
- name: Build OpenStudio
shell: bash
run: cmake --build "$BUILD_DIR" --config Release --target OpenStudio
- name: Find app bundle
shell: bash
run: |
APP_BUNDLE="$(find "$BUILD_DIR" -name OpenStudio.app -type d -print -quit)"
if [ -z "$APP_BUNDLE" ]; then
echo "OpenStudio.app not found under $BUILD_DIR" >&2
exit 1
fi
echo "APP_BUNDLE=$APP_BUNDLE" >> "$GITHUB_ENV"
- name: Validate macOS runtime bundle
shell: bash
run: ./tools/validate-runtime-bundle.ps1 -Platform macos -BundlePath "$APP_BUNDLE" -ExpectedVersion "$VERSION" -EnforceLeanBundle
- name: Run macOS startup self-test
shell: bash
run: |
REPORT="$RUNNER_TEMP/OpenStudio_StartupSelfTest.txt"
"$APP_BUNDLE/Contents/MacOS/OpenStudio" --startup-self-test --report "$REPORT"
if [ $? -ne 0 ]; then
if [ -f "$REPORT" ]; then
cat "$REPORT"
fi
exit 1
fi