chore: changes made on the ai tool installation, project states vs gl… #31
This file contains hidden or 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: 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 |