Skip to main content

baseshift

Command-line client for Baseshift. Create dubs (masked or subsetted copies of a source database), take snapshots, and start clones for development and testing.

Install

pip install baseshift

Platform wheels ship for:

  • macOS (Intel and Apple Silicon)
  • Linux (x86_64 and arm64)
  • Windows (amd64)

The default install talks to clones over WireGuard. For Tailscale, install the companion extra so both packages stay on the same version:

pip install 'baseshift[ts]'

Confirm the install:

baseshift --version
baseshift --help

Quick start

# Browser OAuth (default). Use --method=direct for email/password.
baseshift auth login

# Optional: write ~/.baseshift/config (org token and default dub)
baseshift init

# Create a cloud dub with demo data, or point at your own Postgres.
baseshift dub create --name my-dub --use-demo-db --encryption-password MyKey123
baseshift dub list

# Snapshot, then start a clone and print connection details.
baseshift snapshot create --dub my-dub --wait
baseshift server-clone start --dub my-dub
baseshift server-clone list --dub my-dub
baseshift server-clone stop

--dub accepts a name or a UUID. A name is resolved by the API; pass --org-token (or set BASESHIFT_ORG_TOKEN / orgToken in config) when the same name exists in more than one org. A UUID never needs --org-token.

dub create and dub list use your only organization when --org-token is omitted. When you belong to more than one organization, pass --org-token.

Commands

Command What it does
auth Log in, log out, and check authentication status
init Create ~/.baseshift/config with default org and dub
dub Create and manage dubs (cloud or self-hosted Helm)
data-env Create and manage data environments and their snapshots
server-clone Start, stop, and list clones on Baseshift servers
local-clone Pull or run a dub's snapshot image with local Docker
snapshot Create, check, and list snapshots of a dub

Run baseshift <command> --help (and baseshift dub create -h) for flags. Common dub actions: create, list, describe, status, health-check, validate-values, configure-source, subset, masking.

Cloud dub against your database

baseshift dub create --name my-dub \
  --hostname mydb.example.com --database acme --username app \
  --password-stdin --encryption-password MyKey123

Self-hosted dub (Helm values)

baseshift dub create --deployment self-hosted --name my-onprem-dub \
  --hostname mydb.example.com --database acme --username dubhub \
  --password-stdin --registry-type none
baseshift dub validate-values --values-file values.yaml

Local Docker clone

baseshift local-clone pull --dub my-dub
baseshift local-clone run --dub my-dub -- --publish 5432:5432

Configuration

Values resolve as CLI flag → environment variable → ~/.baseshift/config → default.

baseshift init writes JSON to ~/.baseshift/config:

{
    "orgToken": "<org-uuid>",
    "dubUuid": "<dub-uuid>"
}
Setting Flag Environment Config key
Organization --org-token BASESHIFT_ORG_TOKEN orgToken
Default dub --dub / --dub-uuid BASESHIFT_DUB_UUID dubUuid

Useful environment variables:

  • BASESHIFT_VERBOSE=1 — DEBUG logs and full tracebacks (same as -v)
  • BASESHIFT_DISABLE_SENTRY=1 — disable error telemetry
  • BASESHIFT_HELM_BIN — override the bundled Helm binary used by dub validate-values

License

BSD 2-Clause. See LICENSE, THIRD-PARTY-NOTICES, and LICENSES-Apache-2.0-Helm.txt (bundled Helm).

Metadata

Release files for baseshift 3.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for baseshift 3.8.0
File Actions
baseshift-3.8.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details for baseshift-3.8.0-py3-none-win_amd64.whl
baseshift-3.8.0-py3-none-manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details for baseshift-3.8.0-py3-none-manylinux2014_x86_64.whl
baseshift-3.8.0-py3-none-manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details for baseshift-3.8.0-py3-none-manylinux2014_aarch64.whl
baseshift-3.8.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details for baseshift-3.8.0-py3-none-macosx_11_0_arm64.whl
baseshift-3.8.0-py3-none-macosx_10_9_x86_64.whl Python 3 none macOS 10.9+ x86-64 Details for baseshift-3.8.0-py3-none-macosx_10_9_x86_64.whl

Total release size: 107.9 MB

Release files / baseshift-3.8.0-py3-none-win_amd64.whl

Download URL baseshift-3.8.0-py3-none-win_amd64.whl
Size 22.2 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
831b7825a25dcd8ac4d10515ea8d74d9c3d00c1c75c1f668a9a03c50d5c0f0c7
BLAKE2b-256 checksum
How to use checksums
9e3ee2a1bc63501df58030df90fffa46c45eb6745afd99d40571eeeb30899883
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / baseshift-3.8.0-py3-none-manylinux2014_x86_64.whl

Download URL baseshift-3.8.0-py3-none-manylinux2014_x86_64.whl
Size 21.8 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
a0c0abb21a59afc828185220f3f893d9d992185f4106734b4f9e11e9b334b4d2
BLAKE2b-256 checksum
How to use checksums
1940e3c5938d36ca0784c4d2ece8687b40775e7da888ae33311b496bb31486c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / baseshift-3.8.0-py3-none-manylinux2014_aarch64.whl

Download URL baseshift-3.8.0-py3-none-manylinux2014_aarch64.whl
Size 19.8 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
f235e81da4dfe9c06988e18dc1fbb94b92f8a47902c8dfe844e079c3f51c3e6a
BLAKE2b-256 checksum
How to use checksums
78b12b22c245b1870df8572f2d604a23f500cb69710f2576a8c80bca64658543
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / baseshift-3.8.0-py3-none-macosx_11_0_arm64.whl

Download URL baseshift-3.8.0-py3-none-macosx_11_0_arm64.whl
Size 21.4 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
434fc0e690f489a380d6797ff455ecf26337d40b432ae320ef45a08e4361ddc5
BLAKE2b-256 checksum
How to use checksums
1aba3198da6a744c4bc5dcb04b9062abca0f6e3b07db82e939658525f0d06c85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / baseshift-3.8.0-py3-none-macosx_10_9_x86_64.whl

Download URL baseshift-3.8.0-py3-none-macosx_10_9_x86_64.whl
Size 22.6 MB
Tags Python 3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
f615e2da661a95cd33ac1c6cbc76cc218fdf4cb0a5aea1428b0d155774db8cba
BLAKE2b-256 checksum
How to use checksums
b924319ae006f71e3f47beabe3ba654ebd827d41a97a3610ade8103b2f492058
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Security for baseshift 3.8.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

3.8.0 This release

5 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page