rebase bucket

Manage object storage buckets addressed by key.

Synopsis

rebase bucket create <name>
rebase bucket list
rebase bucket get <name>
rebase bucket uri <name>
rebase bucket ls <name> [prefix] [--delimiter /] [--all]
rebase bucket stat <name> <key>
rebase bucket put <name> <local-path> [key]
rebase bucket download <name> <key> [local-path]
rebase bucket rm <name> <key> [--recursive] [--force]
rebase bucket delete <name> [--force]

Subcommands

SubcommandDescription
createCreate a bucket. Idempotent: returns the existing bucket if the name is taken.
listList buckets in the active workspace.
getShow bucket metadata (provider, real bucket name, URI, location).
uriPrint the gs:// URI alone, for piping into other tools.
lsList objects under a prefix. --delimiter / groups them folder-style; --all follows pagination.
statShow metadata for one object, including size, checksums and generation.
putUpload a local file or directory. Directories upload recursively.
downloadDownload one object.
rmDelete one object, or everything under a prefix with --recursive.
deleteDelete the bucket. Refuses unless it is already empty.

Behavior

ls shows one page by default and tells you when more remain. Pass --all to follow pagination to the end — worth remembering on a bucket with many objects, since the default page is 1000.

rm --recursive empties from your machine, one page at a time, and prompts unless --force. This is deliberate: draining a large bucket inside a single API request would time out before finishing, and the retry would resume against a half-emptied bucket.

delete removes only an empty bucket. Empty it first with rm --recursive. A bucket still attached to a deployed function or ASGI app is also refused, and the error names what is holding it.

Uploads and downloads move over presigned URLs, directly between you and object storage, never through the platform API. A directory upload signs its URLs in one batch rather than one request per file.

Permissions

buckets:read for the read commands, buckets:write for create, put, rm and delete. Both are granted to the Developer role.

See Buckets for the SDK and the tradeoff against Volumes.

On this page