Skip to main content

Python wrapper for cardano-cli for working with cardano cluster

Project description

Documentation Status PyPi Version Code style: black

README for cardano-clusterlib

Python wrapper for cardano-cli for working with cardano cluster.

Installation

# create and activate virtual env
$ python3 -m venv .env
$ . .env/bin/activate
# install it from PyPI
$ pip install cardano-clusterlib
# - OR - install it in develop mode together with dev requirements
$ make install

Usage

Needs working cardano-cli (the command is available on PATH, cardano-node is running, CARDANO_NODE_SOCKET_PATH is set). In state_dir it expects "shelley/genesis.json".

from cardano_clusterlib import clusterlib

# instantiate `ClusterLib`
cluster = clusterlib.ClusterLib(state_dir="path/to/cluster/state_dir")

src_address = "addr_test1vpst87uzwafqkxumyf446zr2jsyn44cfpu9fe8yqanyuh6glj2hkl"
src_skey_file = "/path/to/skey"

dst_addr = cluster.gen_payment_addr_and_keys(name="destination_address")
amount_lovelace = 10_000_000  # 10 ADA

# specify where to send funds and amounts to send
txouts = [clusterlib.TxOut(address=dst_addr.address, amount=amount_lovelace)]

# provide keys needed for signing the transaction
tx_files = clusterlib.TxFiles(signing_key_files=[src_skey_file])

# build, sign and submit the transaction
tx_raw_output = cluster.send_tx(
    src_address=src_address,
    tx_name="send_funds",
    txouts=txouts,
    tx_files=tx_files,
)

# check that the funds were received
cluster.get_utxo(dst_addr.address)

See cardano-node-tests for more examples, e.g. minting new tokens or minting new tokens with Plutus

Source Documentation

https://cardano-clusterlib-py.readthedocs.io/en/latest/cardano_clusterlib.html

Contributing

Install this package and its dependencies as described above.

Run pre-commit install to set up the git hook scripts that will check you changes before every commit. Alternatively run make lint manually before pushing your changes.

Follow the Google Python Style Guide, with the exception that formatting is handled automatically by Black (through pre-commit command).

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

cardano-clusterlib-0.3.0rc10.tar.gz (40.4 kB view details)

Uploaded Source

Built Distribution

cardano_clusterlib-0.3.0rc10-py3-none-any.whl (35.5 kB view details)

Uploaded Python 3

File details

Details for the file cardano-clusterlib-0.3.0rc10.tar.gz.

File metadata

File hashes

Hashes for cardano-clusterlib-0.3.0rc10.tar.gz
Algorithm Hash digest
SHA256 1854b144beae67dd565c7b5dbb74fbf3eb7e7173db9f08b9437f026cca504e4c
MD5 6b12f5a89d6609e6857059dc193a8ae4
BLAKE2b-256 a5dcde71f85d33df04187d305b86f9de9c9442cf22c9079bcf0eb7fb6fe4fa91

See more details on using hashes here.

File details

Details for the file cardano_clusterlib-0.3.0rc10-py3-none-any.whl.

File metadata

File hashes

Hashes for cardano_clusterlib-0.3.0rc10-py3-none-any.whl
Algorithm Hash digest
SHA256 31024cba488d0ed1074fada44a9eaad40ae512656c9795b1602f62a1c5222f7d
MD5 55f95c015f71eab33f0ef48252910fff
BLAKE2b-256 9b72b5fa16f6d12ab74e26527ff43aa9daf4db7b93a7f52e4f15ce41f2aea7a1

See more details on using hashes here.

Supported by

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