tool/package_windows.ps1 builds watch-together-<ver>-windows-x64.zip (same layout as the Linux tarball, libmpv bundled, update.bat and watch-together-server.exe). The release workflow gets a windows job; ci runs the updater tests on Windows. Publishing moves to tool/release_publish.dart (dart: only, no python/bash on Windows), which tolerates both jobs racing to create the release and replaces an asset on re-runs. release.sh writes both asset URLs into the manifest. Windows jobs check out with plain git (the host's cached actions/checkout clone was corrupt). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
60 lines
1.8 KiB
YAML
60 lines
1.8 KiB
YAML
name: ci
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
core:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dart-lang/setup-dart@v1
|
|
with:
|
|
sdk: stable
|
|
- run: dart pub get
|
|
working-directory: packages/core
|
|
- run: dart analyze
|
|
working-directory: packages/core
|
|
- run: dart test
|
|
working-directory: packages/core
|
|
|
|
server:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: dart-lang/setup-dart@v1
|
|
with:
|
|
sdk: stable
|
|
- run: dart pub get
|
|
working-directory: packages/server
|
|
- run: dart analyze
|
|
working-directory: packages/server
|
|
- run: dart test
|
|
working-directory: packages/server
|
|
# Compiling the dedicated server proves it stays Flutter-free.
|
|
- run: mkdir -p build && dart compile exe bin/server.dart -o build/watch-together-server
|
|
working-directory: packages/server
|
|
- run: build/watch-together-server --help
|
|
working-directory: packages/server
|
|
|
|
# The updater's Windows apply path (running exe parked as .old) only
|
|
# means something on real NTFS. Runner notes: see release.yml.
|
|
updater-windows:
|
|
runs-on: windows-latest
|
|
steps:
|
|
- name: Checkout
|
|
shell: powershell
|
|
run: |
|
|
git init -q .
|
|
git remote add origin "$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY.git"
|
|
git fetch -q origin "$env:GITHUB_SHA"
|
|
if ($LASTEXITCODE) { exit 1 }
|
|
git checkout -q --force FETCH_HEAD
|
|
- name: Setup Flutter
|
|
shell: powershell
|
|
run: powershell -NoProfile -ExecutionPolicy Bypass -File tool/setup_flutter_windows.ps1
|
|
- name: Updater tests
|
|
shell: powershell
|
|
working-directory: apps/desktop
|
|
run: flutter test test/updater_test.dart
|