feat(wrangler): add wrangler tunnel#12492
Conversation
🦋 Changeset detectedLatest commit: d1462e5 The changes in this PR will be included in the next version bump. Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Converting to draft since this PR is to act as a spec for the final commands that are to be landed as part of this feature. |
packages/wrangler/src/__tests__/tunnel-cloudflared-redaction.test.ts
Outdated
Show resolved
Hide resolved
packages/wrangler/src/__tests__/tunnel-cloudflared-redaction.test.ts
Outdated
Show resolved
Hide resolved
|
Love it. It would be great if we could support something like |
I think that is a nice feature that is sort of orthogonal to this - except that they would both potentially download and run cloudflared. |
…ional fields - Re-throw UserError from withTunnelErrorHandling in run.ts catch block so detailed permission guidance isn't replaced by a generic message - Add ?? fallbacks for optional id/name fields in list.ts logger.table() to satisfy TableRow type constraint from CloudflareTunnel SDK type
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
Codeowners approval required for this PR:
Show detailed file reviewers |
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
petebacondarwin
left a comment
There was a problem hiding this comment.
This looks good!
Marking as approved but please address the current outstanding comments.
I'll download and have another play with it on Monday morning.
…n-JSON response - Add category: 'Networking & security' to tunnel namespace so it groups with cert and mtls-certificate in CLI help output - Add logger.debug in queryUpdateService JSON parse catch block - Update index.test.ts snapshots
petebacondarwin
left a comment
There was a problem hiding this comment.
Tried out locally seems to be working. There is still a lot of messages output, some of which look like scary errors but I can't tell whether this is expected or not.
Happy to land this (since it is experimental) and then let the team iterate on improvements.
Manage Cloudflare Tunnels
COMMANDS
wrangler tunnel create Create a new Cloudflare Tunnel
wrangler tunnel delete Delete a Cloudflare Tunnel
wrangler tunnel info Display details about a Cloudflare Tunnel
wrangler tunnel list List all Cloudflare Tunnels in your account
wrangler tunnel update Update a Cloudflare Tunnel
wrangler tunnel run [tunnel] Run a Cloudflare Tunnel using cloudflared
wrangler tunnel quick-start Start a free, temporary tunnel without an account (https://try.cloudflare.com)
wrangler tunnel route Configure routing for a Cloudflare Tunnel (DNS hostnames or private IP networks)
wrangler tunnel service Manage cloudflared as a system service
wrangler tunnel cleanup <tunnels..> Remove stale tunnel connections
wrangler tunnel token Fetch the credentials token for an existing tunnel (by name or UUID) that allows to run it
GLOBAL FLAGS
-c, --config Path to Wrangler configuration file [string]
--cwd Run as if Wrangler was started in the specified directory instead of the current working directory [string]
-e, --env Environment to use for operations, and for selecting .env and .dev.vars files [string]
--env-file Path to an .env file to load - can be specified multiple times - values from earlier files are overridden by values in later files [array]
-h, --help Show help [boolean]
-v, --version Show version number [boolean] commands for managing Cloudflare Tunnels
Adds tunnel management commands that align with the cloudflared CLI:
Includes automatic cloudflared binary download and caching in
~/.wrangler/cloudflared/ with SHA256 verification, platform detection,
and WRANGLER_CLOUDFLARED_PATH override support.
A picture of a cute animal (not mandatory, but encouraged)