feat(desktop): migrate existing projects and worktrees

This commit is contained in:
Mohamed Boudra
2026-07-19 00:22:17 +02:00
parent 4d2acfbeb5
commit b447a650a7
108 changed files with 4576 additions and 5585 deletions

View File

@@ -87,6 +87,7 @@ jobs:
npm pack --dry-run --ignore-scripts --workspace=@getpaseo/protocol
npm pack --dry-run --ignore-scripts --workspace=@getpaseo/client
npm pack --dry-run --ignore-scripts --workspace=@getpaseo/server
npm run verify:package --workspace=@getpaseo/migrate
server-tests:
strategy:
@@ -181,6 +182,43 @@ jobs:
if-no-files-found: ignore
retention-days: 7
migration-electron:
runs-on: macos-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "22"
cache: "npm"
- name: Install dependencies with retry
run: node scripts/npm-retry.mjs ci
- name: Build app and server dependencies
run: |
npm run build:app-deps
npm run build:server
- name: Build migrator and Desktop main
run: |
npm run build --workspace=@getpaseo/migrate
npm run build:main --workspace=@getpaseo/desktop
- name: Run product migration behavior
run: npm run test:migration-electron --workspace=@getpaseo/desktop
- name: Upload migration behavior diagnostics
if: failure()
uses: actions/upload-artifact@v4
with:
name: migration-electron-macos
path: |
packages/app/test-results/
packages/app/playwright-report/
retention-days: 7
app-tests:
runs-on: ubuntu-latest
env:
@@ -228,9 +266,38 @@ jobs:
- name: Run client tests
run: npm run test --workspace=@getpaseo/client
- name: Run migrator tests
run: npm run test --workspace=@getpaseo/migrate
- name: Typecheck client examples
run: npm run typecheck:examples --workspace=@getpaseo/client
migrator-node18:
runs-on: ubuntu-latest
env:
ELECTRON_SKIP_BINARY_DOWNLOAD: "1"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "18"
cache: "npm"
- name: Install dependencies
run: node scripts/npm-retry.mjs ci
- name: Build published migrator
run: |
npm run build:server-deps
npm run build --workspace=@getpaseo/migrate
- name: Exercise the published CLI on Node 18
run: node packages/migrate/dist/cli.js conductor --database packages/migrate/fixtures/conductor/conductor.db --dry-run
- name: Verify published package contents
run: npm run verify:package --workspace=@getpaseo/migrate
playwright:
strategy:
fail-fast: false