Skip to content

ci: pack local dirs for the registry bridge instead of pkg.pr.new#2038

Open
fengmk2 wants to merge 8 commits into
mainfrom
ci/bridge-action-local-pack
Open

ci: pack local dirs for the registry bridge instead of pkg.pr.new#2038
fengmk2 wants to merge 8 commits into
mainfrom
ci/bridge-action-local-pack

Conversation

@fengmk2

@fengmk2 fengmk2 commented Jul 3, 2026

Copy link
Copy Markdown
Member

Moves the PR preview publish fully onto the registry bridge and drops pkg.pr.new.

  • Bumps the bridge action to its local-pack version (Publish action packs local package dirs instead of downloading from pkg.pr.new pkg-pr-registry-bridge#56, merged as 711e22a2, pinned here): it packs the built package directories with pnpm pack and uploads them, instead of downloading them back from pkg.pr.new.
  • Removes the pkg-pr-new publish step. Nothing in the PR-build install path uses pkg.pr.new anymore: install.sh, vp migrate, and the Docker preview all resolve commit builds through the bridge. Direct https://pkg.pr.new/... URL installs stop existing for new builds.
  • The bridge step now fails the job on error instead of continue-on-error: a silently missing ref would only surface later as a broken install.
  • The published set now also includes packages/cli/cli-npm/*, so @voidzero-dev/vite-plus-cli-* gets real bridge-served tarballs with integrity (previously they 302'd to pkg.pr.new with empty integrity).
  • Renames the workflow file to publish-preview.yml (display name "Publish preview build"; older runs stay under the previous workflow entry) and the trigger label to preview-build (the repo label was renamed in place, so labeled PRs keep it). The rust cache-key keeps its name to keep warm caches.
  • Updates docs/comments that described pkg.pr.new as the publish destination (MAINTENANCE.md, upgrade guide, Dockerfile, install scripts, migrate test harness).

Note: both labels exist during the transition: pkg.pr.new still triggers main's current workflow on other PRs until this merges, and preview-build triggers this PR's workflow. Delete the pkg.pr.new label after the merge.

Verified per head along the way, most recently: publish run green with no pkg.pr.new step, 19 packages packed locally and served from R2 with byte-verified integrity, VP_PR_VERSION=2038 resolving and installing entirely through the bridge, and the Docker preview building from the bridge build.

@fengmk2 fengmk2 self-assigned this Jul 3, 2026
@netlify

netlify Bot commented Jul 3, 2026

Copy link
Copy Markdown

Deploy Preview for viteplus-preview canceled.

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

@fengmk2 fengmk2 added the preview-build Publish this PR's commits to the registry bridge as preview builds label Jul 3, 2026
@pkg-pr-new

pkg-pr-new Bot commented Jul 3, 2026

Copy link
Copy Markdown

Open in StackBlitz

vite-plus

npm i https://pkg.pr.new/voidzero-dev/vite-plus@2038

@voidzero-dev/vite-plus-core

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-core@2038

@voidzero-dev/vite-plus-prompts

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-prompts@2038

@voidzero-dev/vite-plus-cli-darwin-arm64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-darwin-arm64@2038

@voidzero-dev/vite-plus-cli-darwin-x64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-darwin-x64@2038

@voidzero-dev/vite-plus-cli-linux-arm64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-arm64-gnu@2038

@voidzero-dev/vite-plus-cli-linux-arm64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-arm64-musl@2038

@voidzero-dev/vite-plus-cli-linux-x64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-x64-gnu@2038

@voidzero-dev/vite-plus-cli-linux-x64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-x64-musl@2038

@voidzero-dev/vite-plus-cli-win32-arm64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-win32-arm64-msvc@2038

@voidzero-dev/vite-plus-cli-win32-x64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-win32-x64-msvc@2038

@voidzero-dev/vite-plus-darwin-arm64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-darwin-arm64@2038

@voidzero-dev/vite-plus-darwin-x64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-darwin-x64@2038

@voidzero-dev/vite-plus-linux-arm64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-arm64-gnu@2038

@voidzero-dev/vite-plus-linux-arm64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-arm64-musl@2038

@voidzero-dev/vite-plus-linux-x64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-x64-gnu@2038

@voidzero-dev/vite-plus-linux-x64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-x64-musl@2038

@voidzero-dev/vite-plus-win32-arm64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-win32-arm64-msvc@2038

@voidzero-dev/vite-plus-win32-x64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-win32-x64-msvc@2038

commit: 4d06ccc

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Registry bridge build (1914fa8)

This commit build is published to the registry bridge, which serves these as ordinary npm versions (every other package proxies to npmjs):

Package Version
vite-plus 0.0.0-commit.1914fa8195a09e79305a81656dafb5bdd094df75
@voidzero-dev/vite-plus-core 0.0.0-commit.1914fa8195a09e79305a81656dafb5bdd094df75

Install the Vite+ CLI built from this commit, then migrate a project:

# macOS / Linux
curl -fsSL https://vite.plus | VP_PR_VERSION=2038 bash
# Windows (PowerShell)
$env:VP_PR_VERSION="2038"; irm https://vite.plus/ps1 | iex

After installing, upgrade the current project's vite-plus to this test build with:

vp migrate

Or point your package manager at the bridge registry https://registry-bridge.viteplus.dev/:

Package manager Registry config
npm / pnpm / Bun .npmrc: registry=https://registry-bridge.viteplus.dev/
Yarn (v2+) .yarnrc.yml: npmRegistryServer: "https://registry-bridge.viteplus.dev/"

Then pin the build (vite aliases to vite-plus-core; pnpm can use a catalog, npm an overrides entry):

{
  "devDependencies": {
    "vite-plus": "0.0.0-commit.1914fa8195a09e79305a81656dafb5bdd094df75",
    "vite": "npm:@voidzero-dev/vite-plus-core@0.0.0-commit.1914fa8195a09e79305a81656dafb5bdd094df75"
  }
}

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

🐳 Docker preview image

Built from this PR's registry bridge build:

Image Compressed size
ghcr.io/voidzero-dev/vite-plus:pr-2038 240MB
# remove any stale local copy from a previous run, then pull fresh
docker rmi ghcr.io/voidzero-dev/vite-plus:pr-2038 2>/dev/null; docker pull ghcr.io/voidzero-dev/vite-plus:pr-2038

Quick check:

docker run --rm ghcr.io/voidzero-dev/vite-plus:pr-2038 vp --version

See docs/guide/docker.md for usage.

@fengmk2 fengmk2 marked this pull request as ready for review July 4, 2026 11:21
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Jul 4, 2026
fengmk2 added 5 commits July 4, 2026 21:31
Bump the pkg-pr-registry-bridge action to its local-pack version (PR #56):
it now packs the built package directories with pnpm pack and uploads them,
so the bridge step no longer downloads from pkg.pr.new and no longer depends
on the publish step above. Pass the package list explicitly, matching the
pkg-pr-new publish list; it now also includes packages/cli/cli-npm/*, so the
@voidzero-dev/vite-plus-cli-* binaries land on the bridge with real integrity.

Pinned to the PR #56 branch head for verification; repin to main after merge.
The bridge step was continue-on-error from when it depended on pkg.pr.new
being reachable. Now that install.sh and the Docker preview install PR builds
through the bridge, a silently missing ref would only surface later as a
broken install, so fail loudly instead. The sticky-comment step keeps its own
continue-on-error: a comment API hiccup should not fail a publish.
Nothing in the PR-build install path uses pkg.pr.new anymore: install.sh,
vp migrate, and the Docker preview all resolve commit builds through the
registry bridge, and the bridge action packs local directories. Drop the
pkg-pr-new publish step and update the comments and sticky-comment wording
accordingly.

The pkg.pr.new label, this workflow's file name, and the rust cache-key keep
their names: the label for muscle memory, the file name to preserve Actions
run history, the cache-key to keep warm caches.
Preview builds now publish only to the registry bridge, so update the content
that still described pkg.pr.new as the publish destination: MAINTENANCE.md's
preview section (the direct pkg.pr.new URL install no longer exists for new
builds), the upgrade guide, Dockerfile comments, install script and code
comments, and the migrate test harness (its manual-register fallback advice is
replaced by re-labeling the PR, since a bare registered ref has no artifacts
to fall back to anymore).

Kept as-is: the pkg.pr.new label and file/flag/env names (muscle memory and
API stability), pkg.pr.new-style URL/header descriptors (accurate style
descriptions), legacy pkg.pr.new-URL migration tests and fixtures (the
migrator still rewrites those specs from existing projects), and historical
RFCs.
@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

✅ Staging deployment successful!

Preview: https://viteplus-staging.void.app/
Commit: f0384fb

@fengmk2 fengmk2 force-pushed the ci/bridge-action-local-pack branch from 3d02c9d to 6808780 Compare July 4, 2026 13:31
@fengmk2 fengmk2 requested review from Boshen, Brooooooklyn and wan9chi and removed request for Brooooooklyn July 4, 2026 13:38
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Jul 4, 2026
The workflow no longer publishes to pkg.pr.new, and the display name already
says 'Publish preview build'. Older runs stay viewable under the previous
workflow entry in the Actions UI. The pkg.pr.new trigger label keeps its name.
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Jul 4, 2026
The pkg.pr.new label was the last legacy name in the flow; rename it to
preview-build to match what the workflow actually does. The repo label is
renamed in place, so PRs currently carrying it keep it under the new name.
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Jul 4, 2026
fengmk2 added a commit that referenced this pull request Jul 4, 2026
…preview build

Preview builds now publish/install through the registry bridge (PR #2038),
not pkg.pr.new. Rename step 4 to "preview build smoke test", switch the
trigger label to preview-build, use the "Publish preview build" workflow
name, and drop the pkg-pr-new bot / install-URL references. Kept names that
#2038 preserves: the publish-to-pkg.pr.new.yml filename and the
test-pkg-pr-new-migrate script/skill.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

preview-build Publish this PR's commits to the registry bridge as preview builds

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant