windows-client.yml 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. name: Windows client
  2. on:
  3. workflow_dispatch:
  4. push:
  5. branches: ['codex/windows-client*']
  6. pull_request:
  7. paths: ['desktop/**', 'scripts/**', 'src/**', 'tests/**', 'package*.json', 'electron-builder.yml', '.github/workflows/windows-client.yml']
  8. permissions:
  9. contents: read
  10. jobs:
  11. windows:
  12. runs-on: windows-2022
  13. timeout-minutes: 30
  14. steps:
  15. - uses: actions/checkout@v4
  16. with:
  17. fetch-depth: 0
  18. - uses: actions/setup-node@v4
  19. with:
  20. node-version: '24'
  21. cache: npm
  22. - run: npm ci
  23. - run: npm run typecheck
  24. - run: npx vitest run tests/server/desktopEnvironments.test.ts tests/server/desktopHosts.test.ts
  25. - run: npm run desktop:pack:win
  26. - run: npm run desktop:test:win
  27. env:
  28. DESKTOP_TEST_EXECUTABLE: ${{ github.workspace }}\desktop-release\windows-x64\win-unpacked\Yaoyao.exe
  29. - run: node --test desktop/windows-upgrade.test.mjs
  30. env:
  31. DESKTOP_TEST_UPGRADE: '1'
  32. - uses: actions/upload-artifact@v4
  33. with:
  34. name: yaoyao-windows-x64-unsigned
  35. path: |
  36. desktop-release/windows-x64/*.exe
  37. desktop-release/windows-x64/*.blockmap
  38. desktop-release/windows-x64/latest.yml
  39. desktop-release/windows-x64/SHA256SUMS-win-x64.txt
  40. desktop-release/windows-x64/BUILD-INFO.json
  41. desktop-release/windows-x64/README.txt
  42. docs/windows-client.md
  43. if-no-files-found: error
  44. - uses: actions/upload-artifact@v4
  45. if: always()
  46. with:
  47. name: windows-client-test-evidence
  48. path: test-results/windows-client
  49. if-no-files-found: ignore