Skip to content

feat(windows): add project tab close controls #176

feat(windows): add project tab close controls

feat(windows): add project tab close controls #176

Workflow file for this run

name: Windows CI
on:
pull_request:
paths:
- "windows/**"
- "rust/**"
- "shared/**"
- "scripts/build-windows.ps1"
- "scripts/classify-ci-changes.sh"
- "scripts/test-classify-ci-changes.sh"
- "scripts/verify-windows-boundaries.ps1"
- ".github/workflows/ci-windows.yml"
push:
branches:
- main
paths:
- "windows/**"
- "rust/**"
- "shared/**"
- "scripts/build-windows.ps1"
- "scripts/classify-ci-changes.sh"
- "scripts/test-classify-ci-changes.sh"
- "scripts/verify-windows-boundaries.ps1"
- ".github/workflows/ci-windows.yml"
workflow_dispatch:
permissions:
contents: read
jobs:
changes:
name: Classify changes
runs-on: ubuntu-latest
outputs:
full: ${{ steps.classify.outputs.full }}
steps:
- name: Check out source
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Test CI change classifier
shell: bash
run: ./scripts/test-classify-ci-changes.sh
- name: Classify changed content
id: classify
env:
EVENT_NAME: ${{ github.event_name }}
PR_BASE_SHA: ${{ github.event.pull_request.base.sha }}
PUSH_BASE_SHA: ${{ github.event.before }}
shell: bash
run: |
if [[ "$EVENT_NAME" == "workflow_dispatch" ]]; then
echo "full=true" >> "$GITHUB_OUTPUT"
exit 0
fi
base_sha="$PUSH_BASE_SHA"
if [[ "$EVENT_NAME" == "pull_request" ]]; then
base_sha="$PR_BASE_SHA"
fi
./scripts/classify-ci-changes.sh "$base_sha" "$GITHUB_SHA" >> "$GITHUB_OUTPUT"
build:
name: Build and test Windows implementation
needs: changes
if: needs.changes.outputs.full == 'true'
runs-on: windows-latest
steps:
- name: Check out source
uses: actions/checkout@v4
- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-pc-windows-msvc
- name: Set up Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: "1.3.12"
- name: Build Windows Tauri application
shell: pwsh
run: ./scripts/build-windows.ps1 -Configuration Release
- name: Verify Windows boundaries
shell: pwsh
run: ./scripts/verify-windows-boundaries.ps1
- name: Run Rust tests
shell: pwsh
run: |
cargo test --manifest-path rust/Cargo.toml
cargo test --manifest-path windows/tauri/src-tauri/Cargo.toml