# Builds the Windows installer on a Windows runner (node-pty must be # compiled with MSVC, which cannot be cross-compiled from macOS) and # attaches it to the GitHub release for the pushed tag. name: Release (Windows) on: push: tags: - 'v*' workflow_dispatch: permissions: contents: write jobs: windows: runs-on: windows-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: 20 # The node-gyp version pulled in by the dependency tree (v9) cannot # detect Visual Studio 2022 on current runner images — point npm at # the latest node-gyp for the node-pty native rebuild. - name: Use latest node-gyp (VS2022 detection) shell: pwsh run: | npm install -g node-gyp@latest "npm_config_node_gyp=$(npm root -g)\node-gyp\bin\node-gyp.js" | Out-File -FilePath $env:GITHUB_ENV -Append -Encoding utf8 - name: Install dependencies run: npm ci - name: Build run: npm run build - name: Package and publish Windows installer run: npx electron-builder --win --publish always env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}