2026-08-31 21:05:03 commit #19
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: E2E Test | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: e2e-test-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| e2e: | |
| name: E2E (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 45 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| # os: [ubuntu-24.04, windows-latest, macos-latest] | |
| os: [ubuntu-24.04, macos-latest] | |
| steps: | |
| - name: Checkout Code | |
| uses: actions/checkout@v6 | |
| - name: Setup Node.js 22 | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: '22' | |
| - name: Setup Rust (wasm32) | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| targets: wasm32-unknown-unknown | |
| - name: Cache Rust dependencies | |
| uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: | | |
| ./lib_test -> target | |
| ./server-rs -> target | |
| - name: Setup LLVM for WASM (macOS) | |
| if: runner.os == 'macOS' | |
| run: | | |
| brew install llvm | |
| echo "CC=$(brew --prefix llvm)/bin/clang" >> $GITHUB_ENV | |
| echo "AR=$(brew --prefix llvm)/bin/llvm-ar" >> $GITHUB_ENV | |
| - name: Install wrangler | |
| run: npm i -g wrangler@4.120.0 | |
| - name: Free up port 80 (Linux) | |
| if: runner.os == 'Linux' | |
| run: sudo sysctl -w net.ipv4.ip_unprivileged_port_start=0 | |
| - name: Free up port 80 (Windows) | |
| if: runner.os == 'Windows' | |
| shell: powershell | |
| run: | | |
| Stop-Service -Name W3SVC -Force -ErrorAction SilentlyContinue | |
| Stop-Service -Name PeerDistSvc -Force -ErrorAction SilentlyContinue | |
| Stop-Service -Name SyncShareSvc -Force -ErrorAction SilentlyContinue | |
| - name: Run full E2E suite | |
| working-directory: ./lib_test | |
| run: | | |
| if [ "$RUNNER_OS" == "macOS" ]; then | |
| sudo -E cargo run | |
| else | |
| cargo run | |
| fi | |
| shell: bash |