Skip to content

Commit 3e115e1

Browse files
committed
chore: update CI configuration for ARM64 and Windows builds
- Change Linux build environment to ARM64 with updated target settings. - Modify artifact paths and checksum generation for ARM64. - Add new Windows build job for x86_64 with appropriate setup and artifact handling. - Ensure compatibility with Rust toolchain and Bun for both platforms. 🤖 Generated with [Claude Code](https://claude.ai/code)
1 parent 4429c23 commit 3e115e1

File tree

1 file changed

+53
-10
lines changed

1 file changed

+53
-10
lines changed

.github/workflows/ci.yml

Lines changed: 53 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ on:
1919

2020
jobs:
2121
build-linux:
22-
runs-on: ubuntu-latest
23-
name: Build Linux x86_64
22+
runs-on: ubuntu-latest-arm
23+
name: Build Linux ARM64
2424

2525
steps:
2626
- uses: actions/checkout@v4
@@ -39,7 +39,7 @@ jobs:
3939
- name: Setup Rust
4040
uses: dtolnay/rust-toolchain@stable
4141
with:
42-
targets: x86_64-unknown-linux-gnu
42+
targets: aarch64-unknown-linux-gnu
4343

4444
- name: Setup Rust cache
4545
uses: Swatinem/rust-cache@v2
@@ -53,20 +53,63 @@ jobs:
5353
run: bun install
5454

5555
- name: Build Tauri app
56-
run: bun run tauri build --target x86_64-unknown-linux-gnu
56+
run: bun run tauri build --target aarch64-unknown-linux-gnu
5757

5858
- name: Create artifacts directory
5959
run: |
60-
mkdir -p dist/linux-x86_64
61-
cp src-tauri/target/x86_64-unknown-linux-gnu/release/bundle/deb/*.deb dist/linux-x86_64/ || true
62-
cp src-tauri/target/x86_64-unknown-linux-gnu/release/bundle/appimage/*.AppImage dist/linux-x86_64/ || true
60+
mkdir -p dist/linux-arm64
61+
cp src-tauri/target/aarch64-unknown-linux-gnu/release/bundle/deb/*.deb dist/linux-arm64/ || true
62+
cp src-tauri/target/aarch64-unknown-linux-gnu/release/bundle/appimage/*.AppImage dist/linux-arm64/ || true
6363
6464
# Generate checksums
65-
cd dist/linux-x86_64
65+
cd dist/linux-arm64
6666
sha256sum * > checksums.txt
6767
6868
- name: Upload artifacts
6969
uses: actions/upload-artifact@v4
7070
with:
71-
name: linux-x86_64
72-
path: dist/linux-x86_64/*
71+
name: linux-arm64
72+
path: dist/linux-arm64/*
73+
74+
build-windows:
75+
runs-on: windows-latest
76+
name: Build Windows x86_64
77+
78+
steps:
79+
- uses: actions/checkout@v4
80+
81+
- name: Setup Rust
82+
uses: dtolnay/rust-toolchain@stable
83+
with:
84+
targets: x86_64-pc-windows-msvc
85+
86+
- name: Setup Rust cache
87+
uses: Swatinem/rust-cache@v2
88+
with:
89+
workspaces: src-tauri
90+
91+
- name: Setup Bun
92+
uses: oven-sh/setup-bun@v2
93+
94+
- name: Install dependencies
95+
run: bun install
96+
97+
- name: Build Tauri app
98+
run: bun run tauri build
99+
100+
- name: Create artifacts directory
101+
run: |
102+
New-Item -ItemType Directory -Force -Path dist\windows-x86_64
103+
Copy-Item -Path "src-tauri\target\x86_64-pc-windows-msvc\release\bundle\msi\*.msi" -Destination "dist\windows-x86_64\" -ErrorAction SilentlyContinue
104+
Copy-Item -Path "src-tauri\target\x86_64-pc-windows-msvc\release\bundle\nsis\*.exe" -Destination "dist\windows-x86_64\" -ErrorAction SilentlyContinue
105+
106+
# Generate checksums
107+
cd dist\windows-x86_64
108+
Get-ChildItem | ForEach-Object { Get-FileHash $_.Name -Algorithm SHA256 | Select-Object Hash, @{Name="File";Expression={$_.Path | Split-Path -Leaf}} } | Format-Table -HideTableHeaders | Out-File -Encoding UTF8 checksums.txt
109+
shell: pwsh
110+
111+
- name: Upload artifacts
112+
uses: actions/upload-artifact@v4
113+
with:
114+
name: windows-x86_64
115+
path: dist/windows-x86_64/*

0 commit comments

Comments
 (0)