Skip to content

Commit 5e88022

Browse files
authored
ci: add manual windows packaging workflow (#460)
1 parent 02c8e75 commit 5e88022

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
name: Package Windows (Manual)
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
ref:
7+
description: 'Git ref to build (branch, tag, or SHA). Leave empty for current default ref.'
8+
required: false
9+
default: ''
10+
11+
permissions:
12+
contents: read
13+
14+
jobs:
15+
package-windows:
16+
runs-on: windows-latest
17+
18+
steps:
19+
- name: Checkout code
20+
uses: actions/checkout@v4
21+
with:
22+
ref: ${{ inputs.ref || github.ref }}
23+
fetch-depth: 0
24+
25+
- name: Setup Node.js
26+
uses: actions/setup-node@v6
27+
with:
28+
node-version: '24'
29+
30+
- name: Setup pnpm
31+
uses: pnpm/action-setup@v4
32+
33+
- name: Get pnpm store directory
34+
shell: bash
35+
run: |
36+
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
37+
38+
- name: Setup pnpm cache
39+
uses: actions/cache@v4
40+
with:
41+
path: ${{ env.STORE_PATH }}
42+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
43+
restore-keys: |
44+
${{ runner.os }}-pnpm-store-
45+
46+
- name: Install dependencies
47+
run: pnpm install
48+
49+
- name: Download uv binaries for Windows
50+
run: pnpm run uv:download:win
51+
52+
- name: Build Windows package (no publish)
53+
env:
54+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
55+
run: pnpm run build:vite && pnpm exec zx scripts/bundle-openclaw.mjs && pnpm exec electron-builder --win --publish never
56+
57+
- name: Upload Windows artifacts
58+
uses: actions/upload-artifact@v4
59+
with:
60+
name: windows-package
61+
path: |
62+
release/*.exe
63+
release/*.blockmap
64+
release/*.yml
65+
!release/builder-debug.yml
66+
retention-days: 7

0 commit comments

Comments
 (0)