Skip to content

ci(release): attach per-target vp binary archives to GitHub Releases#1665

Merged
fengmk2 merged 1 commit into
mainfrom
ci/release-vp-archives
May 24, 2026
Merged

ci(release): attach per-target vp binary archives to GitHub Releases#1665
fengmk2 merged 1 commit into
mainfrom
ci/release-vp-archives

Conversation

@Boshen
Copy link
Copy Markdown
Member

@Boshen Boshen commented May 22, 2026

Summary

  • Package the existing vite-global-cli-<target> matrix artifacts into per-platform .tar.gz (unix) / .zip (windows) archives inside reusable-release-build.yml, and attach them to the GitHub Release alongside the existing vp-setup-*.exe installers.
  • Asset names use the Rust target triple verbatim (vp-x86_64-unknown-linux-gnu.tar.gz, vp-x86_64-pc-windows-msvc.zip, ...) so no name-mapping table is needed on the CI side.
  • Permissions are preserved because the archive is produced inside the same matrix job that builds the binary (no upload/download round-trip strip).

Why

The release pipeline already cross-compiles vp for 8 targets, but only the Windows vp-setup.exe installer ever reaches the GitHub Release. Tools like mise (aqua: backend) and aqua itself expect to consume binaries from GitHub Releases rather than npm tarballs — see #943.

This is the minimal CI plumbing for that. Out of scope: aqua-registry PR, jdx/mise registry/viteplus.toml update, and resolving the runtime JS-sidecar dependency in crates/vite_global_cli/src/js_executor.rs — those are tracked separately on #943.

🤖 Generated with Claude Code

Package the existing `vite-global-cli-<target>` matrix artifacts into
per-platform `.tar.gz` (unix) / `.zip` (windows) archives and attach
them to the GitHub Release alongside the existing `vp-setup-*.exe`
installers. Naming uses the Rust target triple verbatim
(`vp-x86_64-unknown-linux-gnu.tar.gz`, etc.) so no name-mapping table
is needed in CI.

Unblocks consumers like mise / aqua that prefer GitHub Release assets
over the npm-only distribution path discussed in #943.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@netlify
Copy link
Copy Markdown

netlify Bot commented May 22, 2026

Deploy Preview for viteplus-preview canceled.

Name Link
🔨 Latest commit f706bf6
🔍 Latest deploy log https://app.netlify.com/projects/viteplus-preview/deploys/6a107b5b92f21d00088c7cbb

@fengmk2 fengmk2 merged commit 7462562 into main May 24, 2026
39 checks passed
@fengmk2 fengmk2 deleted the ci/release-vp-archives branch May 24, 2026 06:21
liangmiQwQ pushed a commit to liangmiQwQ/vite-plus that referenced this pull request May 26, 2026
…oidzero-dev#1665)

## Summary

- Package the existing `vite-global-cli-<target>` matrix artifacts into
per-platform `.tar.gz` (unix) / `.zip` (windows) archives inside
`reusable-release-build.yml`, and attach them to the GitHub Release
alongside the existing `vp-setup-*.exe` installers.
- Asset names use the Rust target triple verbatim
(`vp-x86_64-unknown-linux-gnu.tar.gz`, `vp-x86_64-pc-windows-msvc.zip`,
...) so no name-mapping table is needed on the CI side.
- Permissions are preserved because the archive is produced inside the
same matrix job that builds the binary (no upload/download round-trip
strip).

## Why

The release pipeline already cross-compiles `vp` for 8 targets, but only
the Windows `vp-setup.exe` installer ever reaches the GitHub Release.
Tools like mise (`aqua:` backend) and aqua itself expect to consume
binaries from GitHub Releases rather than npm tarballs — see
[voidzero-dev#943](voidzero-dev#943).

This is the minimal CI plumbing for that. Out of scope: aqua-registry
PR, `jdx/mise` `registry/viteplus.toml` update, and resolving the
runtime JS-sidecar dependency in
`crates/vite_global_cli/src/js_executor.rs` — those are tracked
separately on voidzero-dev#943.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@fengmk2 fengmk2 mentioned this pull request May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants