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.1.tar.gz (90.1 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.1-py3-none-any.whl (97.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cardonnay-0.4.1.tar.gz
  • Upload date:
  • Size: 90.1 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.1.tar.gz
Algorithm Hash digest
SHA256 074bc8398a62dbcd6b179b31f271682ed6cf568cd1fe1db27ff4ec94483b710c
MD5 609ce0aa0a485efb57fcec9457d421a1
BLAKE2b-256 79a4b74af8fed35bf53338938e2d2cfba73c7fb08f4fe8e7665e6b2abdc3c77c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cardonnay-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 97.4 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8d5064f458696ef99a07c37d12d63f35e92feef32a3ea58de5f61bdbb4c158f5
MD5 0b8128b0d435952459c00a96d79b6159
BLAKE2b-256 066d7caccb4b6a96b0fa7f81ef375d91c1e15dad84e9d6fe38e79454a876689f

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