wrangler-action icon indicating copy to clipboard operation
wrangler-action copied to clipboard

uploading environment secrets doesn't work with pages deploy

Open qqpann opened this issue 1 year ago • 5 comments

https://github.com/cloudflare/wrangler-action/blob/cd8a317efbc7fab418e9bd7092c8643d88c03321/src/index.ts#L251

When the repository is pages directory, it needs to run

wrangler pages secret bulk

Otherwise it will run into the following error:

🔑 Uploading secrets...
  /opt/hostedtoolcache/node/18.20.4/x64/bin/npx wrangler secret:bulk
  
   ⛅️ wrangler 3.81.0
  -------------------
  
  
  ✘ [ERROR] It looks like you've run a Workers-specific command in a Pages project.
  
    For Pages, please run `wrangler pages secret bulk` instead.
  
  
  🪵  Logs were written to "/home/runner/.config/.wrangler/logs/wrangler-2024-10-20_12-06-13_693.log"
  Error: The process '/opt/hostedtoolcache/node/18.20.4/x64/bin/npx' failed with exit code 1
Error: Failed to upload secrets.
Error: 🚨 Action failed

qqpann avatar Oct 20 '24 13:10 qqpann

This appears to be throwing errors on Worker deploys, too.

🔑 Uploading secrets...
  /usr/local/bin/npx wrangler secret:bulk
   ⛅️ wrangler 3.78.10 (update available 3.83.0)
  ----------------------------------------------
  ▲ [WARNING] `wrangler secret:bulk` is deprecated and will be removed in a future major version.
    Please use `wrangler secret bulk` instead, which accepts exactly the same arguments.
  🌀 Creating the secrets for the Worker "[redacted]" 
  Finished processing secrets JSON file:
  ✨ 0 secrets successfully uploaded
  ✘ [ERROR] 🚨 3 secrets failed to upload

Using: actions/checkout@v4 & cloudflare/wrangler-action@v3

ckhicks avatar Oct 24 '24 20:10 ckhicks

Does this issue persist if you update the deprecated command and use the latest wrangler version?

nprogers avatar Nov 12 '24 17:11 nprogers

Looks like we may need to adjust behavior here to allow setting secrets for Pages, such as with a pages_secrets: field (or somehow detect if the project is a Pages project before uploading secrets.)

Until then, users can work around this by manually uploading secrets in the Cloudflare dashboard, or locally using wrangler secret put

jahands avatar Nov 18 '24 19:11 jahands

Aye, that's generally how I've gotten around these with failing Workers deployments. Seems like these deprecated commands come through every now and then through normal usage of the Wrangler CLI so it's hard to know exactly when it breaks...until it does!

ckhicks avatar Nov 18 '24 20:11 ckhicks

I just ran into this problem as well. What would be the best practice to still be able to set secrets for pages? Create a .dev.vars in the CI runner, filled with the secrets, and then run wrangler pages secret bulk .dev.vars in the preCommands?

Crease29 avatar Feb 09 '25 08:02 Crease29