Skip to content

Commit 2393429

Browse files
committed
dist: the release job attaches what it collected, not a glob that never matched
Every leg runs the same distributer, and dist.sh prefers `zip` and writes a `.tar.gz` only when zip is absent - and the Linux job installs zip while macOS has it - so `artifacts/*.tar.gz` matched nothing on every cut. Under `set -eu` an unmatched glob is fatal, so the FIRST real release built all six targets successfully and then failed in the attach step, which is how a published release ends up with no assets while every build leg is green. `artifacts/*` is what was collected - the six archives plus the `SHA256SUMS.txt` the previous step writes - and it covers a `.tar.gz` leg too if one ever appears. Verified by attaching this release's own artifacts by hand from the run that built them at the tagged commit.
1 parent b023692 commit 2393429

1 file changed

Lines changed: 10 additions & 1 deletion

File tree

‎.github/workflows/distribute.yml‎

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -326,5 +326,14 @@ jobs:
326326
# existing one just gets the assets added (or replaced).
327327
gh release view "$tag" >/dev/null 2>&1 || \
328328
gh release create "$tag" --title "$tag" --generate-notes --target "$GITHUB_SHA"
329-
gh release upload "$tag" artifacts/*.zip artifacts/*.tar.gz artifacts/SHA256SUMS.txt --clobber
329+
# `artifacts/*`, NOT a list of extensions. Every leg runs the same
330+
# distributer, and dist.sh PREFERS `zip` and writes a `.tar.gz` only
331+
# when zip is absent - and this job installs zip on Linux and macOS
332+
# has it - so `artifacts/*.tar.gz` matched nothing on every cut, and an
333+
# unmatched glob under `set -eu` killed this step: the first release
334+
# built all six targets and then published a release with no assets.
335+
# Whatever was collected is what gets attached, checksums included,
336+
# and a leg that ever does produce a `.tar.gz` is covered by the same
337+
# pattern instead of needing this line edited again.
338+
gh release upload "$tag" artifacts/* --clobber
330339
echo "Attached $(ls artifacts | wc -l) file(s) to $tag."

0 commit comments

Comments
 (0)