Skip to main content

Cardano Local Testnet

Project description

Ruff PyPi Version

Cardonnay

Cardonnay logo

Cardonnay is a command-line tool for setting up and managing local Cardano testnets.
It supports multiple preconfigured testnet types and makes it easy to inspect and control their lifecycle.


🚀 Getting Started

1. Create a local_fast testnet

$ cardonnay create -t local_fast
Starting the testnet cluster with `/var/tmp/cardonnay-of-user/cluster0_local_fast/start-cluster`:
[...]
Cluster started 🚀

ℹ️ Pro Tip: Add -b to create the testnet in the background, or -c "comment" to add a comment.

2. List running testnet instances

$ cardonnay control ls

[
  {
    "instance": 0,
    "type": "local_fast",
    "state": "started",
    "comment": null
  }
]

3. Inspect the testnet faucet

$ cardonnay inspect faucet -i 0

{
  "address": "addr_test1vpgm9cj9u3k63642vju9jqgeqy393upttt0qtwptlesy08gx620qd",
  "vkey_file": "/var/tmp/cardonnay-of-user/state-cluster0/shelley/genesis-utxo.vkey",
  "skey_file": "/var/tmp/cardonnay-of-user/state-cluster0/shelley/genesis-utxo.skey"
}

4. Work with the testnet

source <(cardonnay control print-env -i 0)
cardano-cli query tip --testnet-magic 42

5. Stop all running testnet instances

$ cardonnay control stop-all
Stopping the testnet cluster with `/var/tmp/cardonnay-of-user/state-cluster0/stop-cluster`:
[...]
Cluster terminated!

🛠️ Installation

Option 1: Using Nix

If you use Nix, you can spin up a development shell with all dependencies:

nix develop

This will provide a fully set-up environment, including Python, Cardano binaries, and jq.

ℹ️ NOTE: To use the latest master branch of cardano-node, run

nix flake update --accept-flake-config --override-input cardano-node github:IntersectMBO/cardano-node/master
nix develop --accept-flake-config

Option 2: Using pip

Ensure the following dependencies are installed and available in your PATH:

  • python3
  • jq
  • cardano-node
  • cardano-cli
  • optional: cardano-submit-api

Then install Cardonnay in a virtual environment:

# Create and activate a virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install Cardonnay
pip install -U --require-virtualenv cardonnay

# (Optional) Enable shell completions for Bash
source completions/cardonnay.bash-completion

⚙️ db-sync (optional)

db-sync is started automatically when DBSYNC_SCHEMA_DIR points to the cardano-db-sync schema directory (cardano-db-sync must be on your PATH). It stays off otherwise.

Set these env vars before cardonnay create:

Env var Effect
DBSYNC_SCHEMA_DIR Path to the db-sync schema dir; enables db-sync.
SMASH Truthy (1/true/yes/on) also starts a SMASH server.
DBSYNC_ALLOW_PRIVATE_OFFCHAIN_URLS Truthy lets db-sync fetch off-chain anchor data (pool/governance metadata) served from localhost. Needed on a local testnet; off by default.
export DBSYNC_SCHEMA_DIR=/path/to/cardano-db-sync/schema
export DBSYNC_ALLOW_PRIVATE_OFFCHAIN_URLS=true
cardonnay create -t local_fast

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cardonnay-0.4.0.tar.gz (79.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cardonnay-0.4.0-py3-none-any.whl (84.0 kB view details)

Uploaded Python 3

File details

Details for the file cardonnay-0.4.0.tar.gz.

File metadata

  • Download URL: cardonnay-0.4.0.tar.gz
  • Upload date:
  • Size: 79.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for cardonnay-0.4.0.tar.gz
Algorithm Hash digest
SHA256 270daa66d38490629d81127dc3abdfcd538f52cce41fb4c3d98218c784e5b2ca
MD5 89f7a483c212c0260300feecfbec9a0f
BLAKE2b-256 466c82152c40965372d22431ff22633f36efc9f0af4f42f71b76f30bf4f49204

See more details on using hashes here.

File details

Details for the file cardonnay-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: cardonnay-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 84.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for cardonnay-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 71265fdd6f2f8239c2fcee99042975c292871279530cd411bce0fe50920434fd
MD5 2ff3850b9744b559d782703889c761e0
BLAKE2b-256 6016bf407371fb40808e45016f535c41d61ec4aa0700520f8b97dbc05744c67a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page