Skip to content

Commit 8beb815

Browse files
jamiepineclaude
andcommitted
bundle sd-cli into server release tarball
Build both sd-server and sd-cli in a single cargo invocation (shared dependency compilation) and ship them together. Downloads of sd-server-linux-<arch>.tar.gz now include the CLI so headless deployments have a way to manage the daemon. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent e56621e commit 8beb815

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

.github/workflows/release.yml

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,27 +54,31 @@ jobs:
5454
bun install
5555
cd apps/web && bun run build
5656
57-
- name: Build server binary
57+
- name: Build server and CLI binaries
5858
run: |
59-
cargo build --release --bin sd-server --features sd-core/heif,sd-core/ffmpeg,sd-core/ai --target ${{ matrix.settings.target }}
59+
cargo build --release --bin sd-server --bin sd-cli --features sd-core/heif,sd-core/ffmpeg,sd-core/ai --target ${{ matrix.settings.target }}
6060
env:
6161
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER: aarch64-linux-gnu-gcc
6262

63-
- name: Prepare server binary
63+
- name: Prepare binaries
6464
run: |
6565
mkdir -p dist
6666
cp target/${{ matrix.settings.target }}/release/sd-server dist/sd-server-${{ matrix.settings.platform }}
67-
chmod +x dist/sd-server-${{ matrix.settings.platform }}
67+
cp target/${{ matrix.settings.target }}/release/sd-cli dist/sd-cli-${{ matrix.settings.platform }}
68+
chmod +x dist/sd-server-${{ matrix.settings.platform }} dist/sd-cli-${{ matrix.settings.platform }}
6869
69-
- name: Generate checksum
70+
- name: Generate checksums
7071
run: |
7172
cd dist
7273
sha256sum sd-server-${{ matrix.settings.platform }} > sd-server-${{ matrix.settings.platform }}.sha256
74+
sha256sum sd-cli-${{ matrix.settings.platform }} > sd-cli-${{ matrix.settings.platform }}.sha256
7375
7476
- name: Create archive
7577
run: |
7678
cd dist
77-
tar -czf sd-server-${{ matrix.settings.platform }}.tar.gz sd-server-${{ matrix.settings.platform }} sd-server-${{ matrix.settings.platform }}.sha256
79+
tar -czf sd-server-${{ matrix.settings.platform }}.tar.gz \
80+
sd-server-${{ matrix.settings.platform }} sd-server-${{ matrix.settings.platform }}.sha256 \
81+
sd-cli-${{ matrix.settings.platform }} sd-cli-${{ matrix.settings.platform }}.sha256
7882
7983
- name: Upload artifacts
8084
uses: actions/upload-artifact@v4
@@ -265,7 +269,6 @@ jobs:
265269
with:
266270
draft: true
267271
files: |
268-
cli-*/*
269272
server-*/*
270273
*/*.dmg
271274
*/*.exe

0 commit comments

Comments
 (0)