prepareDeployArtifact omits worker.vars that the CLI managed deploy includes
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
- Domain
- devtools
Research direction
Find prepareDeployArtifact() and compare its assembleVoidManifest(...) call with the calls in deploy-managed-full.ts and deploy-managed-framework.ts; the issue names these entry points but not their file paths. Start by tracing how worker.vars reaches the manifest in those CLI paths. Done when the programmatic artifact includes the configured vars, matching the CLI managed deploy.
Written by the indexing model from the issue text.
Description
Version: 1.1.12
void/deploy's prepareDeployArtifact() builds the manifest with assembleVoidManifest(...) but never passes vars. The CLI managed deploy paths do pass them (deploy-managed-full.ts and deploy-managed-framework.ts: vars: voidConfig.worker?.vars).
As a result, an artifact prepared through the programmatic API has no manifest.vars, even when:
void.config.tssetsworker: { vars: { ... } }, and- the build output (
dist/ssr/wrangler.json) contains those vars.
The platform emits plain-text bindings only from manifest.vars, so these vars never reach the deployed Worker on that path.
Repro
- Create a project whose
void.config.tshasworker: { vars: { FOO: "bar" } }. - Run
vp build.dist/ssr/wrangler.jsonnow hasvars.FOO. - Call
prepareDeployArtifact(root). The result hasartifact.manifest.vars === undefined.
Expected: prepareDeployArtifact produces the same vars as the CLI managed deploy.
We work around it by copying wrangler.json vars into the manifest.
A related note that may belong in the docs: keys declared in env.ts are refused as worker.vars ("Server env keys cannot be Worker plaintext vars"). Plain config therefore has to live only in worker.vars.
- Dominant language
- TypeScript
- Stars
- 402
- Forks
- 32
- Avg merge
- 10h 51m
- Merged PRs (30d)
- 100
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from voidzero-dev/void
-
bug
Difficulty 1/5 1-3 hours Newbie friendliness 78/100
voidzero-dev/void#428 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 56/100
voidzero-dev/void#527 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 54/100
voidzero-dev/void#525 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 67/100
voidzero-dev/void#524 ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 1-2 days Newbie friendliness 52/100
voidzero-dev/void#523 · 1 comment ·
Maintainers usually reply within 1 day
All issues in voidzero-dev/void
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
endora-commerce/endora-commerce#397 ·
Maintainers usually reply within 1 day
-
level/task
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
wazuh/wazuh-dashboard-plugins#9472 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 63/100
Maintainers usually reply within 1 day
-
ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
xavxyz/bei-shan-lin-shui#57 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
opennextjs/opennextjs-cloudflare#1461 ·
Maintainers usually reply within 1 day