mkmavrykchain
Helper program to generate values for the Mavryk chain Helm chart
Prerequisites
To run mkmavrykchain, you must either have docker or pymavryk installed.
Installing Docker
To be consistent with other documentation in this project, we describe how to install docker with minikube. We need to install:
- [docker](https://docs.docker.com/get-docker/),
- [minikube](https://minikube.sigs.k8s.io/docs/),
- [helm](https://helm.sh/),
- and `python3`.
Start minikube and configure your shell environment to use minikube's Docker daemon:
minikube start
eval $(minikube docker-env)
Installing pymavryk
This is documented at: https://pymavryk.mavryk.org/quick_start.html#requirements
Install mkmavrykchain
mkdir mkmavrykchain && cd mkmavrykchain
python3 -m venv .venv
. .venv/bin/activate
pip install wheel && pip install mkmavrykchain
Set unbuffered IO for python:
export PYTHONUNBUFFERED=x
Generate Helm Values
Set as an environment variable the name you would like to give to your chain:
export CHAIN_NAME=my-chain
Your chain is uniquely defined by a set of values such as bootstrap account keys, chain id, timestamp...
To generate these values run:
mkmavrykchain $CHAIN_NAME
This command will create a yaml file in your current working directory: <$CHAIN_NAME>_values.yaml
If you configure your chain to run over a Zerotier VPN, mkmavrykchain will create an additional file for invitees to join your network: <$CHAIN_NAME>_invite_values.yaml.
mkmavrykchain parameters
You can explicitly specify some values by:
- passing CLI parameters to
mkmavrykchain - directly modifying the values yaml file generated by
mkmavrykchain - passing arguments to helm install or helm upgrade commands using the
--setflag, which will selectively override the current yaml values
| YAML Key | mkmavrykchain argument | Description | Default |
|---|---|---|---|
| -h | mkmavrykchain help message | ||
| -v | mkmavrykchain version | ||
| --number-of-bakers | Number of baking nodes in the cluster | 1 | |
| --number-of-nodes | Number of non-baking nodes in the cluster | 0 | |
| bootstrap_peers | --bootstrap-peers | Peer ips to connect to | [] |
| expected_proof_of_work | --expected-proof-of-work | Node identity generation difficulty | 0 |
| images.mavkit | --mavkit-docker-image | Version of the Mavkit docker image to run | mavrykdynamics/mavryk:v19.3 |
| --use-docker (--no...) | Use (or don't use) docker to generate keys rather than pymavryk | autodetect | |
| zerotier_config.zerotier_network | --zerotier-network | Zerotier network id for external chain access | |
| zerotier_config.zerotier_token | --zerotier-token | Zerotier token for external chain access |
Create Mavryk Chain
Make sure you have the Mavryk Helm chart repo:
helm repo add mavryk-network https://mavryk-network.github.io/mavryk-helm-charts
Then install the Mavryk Helm chart:
helm install $CHAIN_NAME mavryk-network/mavryk-chain \
--values ./${CHAIN_NAME}_values.yaml \
--namespace mavryk-network --create-namespace
Metadata
Release files for mkmavrykchain 6.34.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mkmavrykchain-6.34.3-py3-none-any.whl | Python 3 | none | any | Details |
Release files / mkmavrykchain-6.34.3-py3-none-any.whl
| Download URL | mkmavrykchain-6.34.3-py3-none-any.whl |
|---|---|
| Size | 9.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
456cf9c2c40966f60d2f143c5824a15b2d3e395059678022b1ca735dee6f838f
|
|
BLAKE2b-256 checksum How to use checksums |
5e3c1e72389637917b5d95b50c43e9c9cb93a8eabc9a28b1bf4a844e73c4ee12
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|