mirror of
https://github.com/0xMassi/webclaw.git
synced 2026-04-24 15:56:23 +02:00
fix(ci): release workflow must include webclaw-server
v0.4.0 shipped tarballs without the new webclaw-server binary because the release workflow predates that binary and was hardcoded for two: - Package step used `cp ... 2>/dev/null || true`, so a missing binary was silently skipped instead of failing the job. - Docker job's download step copied only webclaw + webclaw-mcp into the build context, so Dockerfile.ci's COPY webclaw-server step then died with 'file not found'. - Homebrew formula's install block only covered the same two, so brew users would have gotten a release with a missing binary. Three changes: 1. Package step now explicitly copies all three binaries and drops the swallow-all-errors pattern. If a future binary gets renamed or removed this step screams instead of silently publishing half a release. 2. Docker Download step copies webclaw-server alongside the other binaries into the build context. 3. Homebrew formula installs webclaw-server too. v0.4.0 tag + GitHub Release will be deleted and re-pushed on top of this commit so the canonical v0.4.0 artifacts are complete. No users affected — download count was 0 on every broken asset.
This commit is contained in:
parent
eff914e84f
commit
ccdb6d364b
1 changed files with 10 additions and 2 deletions
12
.github/workflows/release.yml
vendored
12
.github/workflows/release.yml
vendored
|
|
@ -66,8 +66,14 @@ jobs:
|
|||
tag="${GITHUB_REF#refs/tags/}"
|
||||
staging="webclaw-${tag}-${{ matrix.target }}"
|
||||
mkdir "$staging"
|
||||
cp target/${{ matrix.target }}/release/webclaw "$staging/" 2>/dev/null || true
|
||||
cp target/${{ matrix.target }}/release/webclaw-mcp "$staging/" 2>/dev/null || true
|
||||
# Fail loud if any binary is missing. A silent `|| true` on the
|
||||
# copy was how v0.4.0 shipped tarballs that lacked webclaw-server —
|
||||
# don't repeat that mistake. If a future binary gets renamed or
|
||||
# removed, this step should scream, not quietly publish an
|
||||
# incomplete release.
|
||||
cp target/${{ matrix.target }}/release/webclaw "$staging/"
|
||||
cp target/${{ matrix.target }}/release/webclaw-mcp "$staging/"
|
||||
cp target/${{ matrix.target }}/release/webclaw-server "$staging/"
|
||||
cp README.md LICENSE "$staging/"
|
||||
tar czf "$staging.tar.gz" "$staging"
|
||||
echo "ASSET=$staging.tar.gz" >> $GITHUB_ENV
|
||||
|
|
@ -134,6 +140,7 @@ jobs:
|
|||
mkdir -p "binaries-${target}"
|
||||
cp "${dir}/webclaw" "binaries-${target}/webclaw"
|
||||
cp "${dir}/webclaw-mcp" "binaries-${target}/webclaw-mcp"
|
||||
cp "${dir}/webclaw-server" "binaries-${target}/webclaw-server"
|
||||
chmod +x "binaries-${target}"/*
|
||||
done
|
||||
ls -laR binaries-*/
|
||||
|
|
@ -220,6 +227,7 @@ jobs:
|
|||
def install
|
||||
bin.install "webclaw"
|
||||
bin.install "webclaw-mcp"
|
||||
bin.install "webclaw-server"
|
||||
end
|
||||
|
||||
test do
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue