From 37908aed84e3b92614f74cbb26016dbaa53ef41d Mon Sep 17 00:00:00 2001 From: Prathamesh Musale Date: Mon, 18 Aug 2025 12:32:54 +0530 Subject: [PATCH] Update instructions with prerequisites --- EXPERIMENT.md | 14 ++++++++++++- README.md | 49 ++++++++++++++++++++++++++++++++++++++++----- test-runs/README.md | 49 ++++++++++++++++++++++++++++++++++++++++----- 3 files changed, 101 insertions(+), 11 deletions(-) diff --git a/EXPERIMENT.md b/EXPERIMENT.md index bb5ff35..d031b3d 100644 --- a/EXPERIMENT.md +++ b/EXPERIMENT.md @@ -4,8 +4,20 @@ This guide explains how to use the interactive notebook to experiment with diffe ## Prerequisites +- Ubuntu 22 or 24 + + - **Note**: Other platforms are not supported yet for deployment + - [Python3](https://wiki.python.org/moin/BeginnersGuide/Download) `3.12.x` >= `python3 --version` >= `3.8.10` (the Python3 shipped in Ubuntu 20+ is good to go) -- [pip](https://pip.pypa.io/en/stable/installation/) (Python package manager) + + - Make sure that `ensurepip` is available for creating virtual environments: + + ```bash + python3 -m ensurepip --version + + # Ubuntu/Debian + sudo apt-get install python3-venv + ``` ## Quick Start diff --git a/README.md b/README.md index f032b63..ab9a299 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,31 @@ The lockdrop simulation validates the Zenith Network's token distribution mechan ## Prerequisites +- Software Requirements + + - Ubuntu 22 or 24 + + - **Note**: Other platforms are not supported yet for deployment + + - [Python3](https://wiki.python.org/moin/BeginnersGuide/Download) `3.12.x` >= `python3 --version` >= `3.8.10` (the Python3 shipped in Ubuntu 20+ is good to go) + + - Make sure that `ensurepip` is available for creating virtual environments: + + ```bash + python3 -m ensurepip --version + + # Ubuntu/Debian + sudo apt-get install python3-venv + ``` + + - Repository Access: SSH access to + + - If you are logging in to the host using SSH, make sure to use agent forwarding: + + ```bash + ssh -A + ``` + - Set zenith-stack version to use: ```bash @@ -96,13 +121,14 @@ The lockdrop simulation validates the Zenith Network's token distribution mechan - **zenith-ansible binary** - **Note**: Set `OUTPUT_DIR` in the following command to output directory of your choice. Make sure that it exists and is in your [`PATH`](https://unix.stackexchange.com/a/26059). + **Note**: Set `OUTPUT_DIR` in the following command to output directory of your choice. You may need to run the following commands with necessary permissions, as root or through sudo. ```bash # Download the binary from generic package registry OUTPUT_DIR=~/bin + mkdir -p $OUTPUT_DIR curl -L -o $OUTPUT_DIR/zenith-ansible https://git.vdb.to/api/packages/LaconicNetwork/generic/zenith-stack/$ZENITH_STACK_VERSION/zenith-ansible ``` @@ -113,6 +139,12 @@ The lockdrop simulation validates the Zenith Network's token distribution mechan chmod +x $OUTPUT_DIR/zenith-ansible ``` + Add `OUTPUT_DIR` to your PATH: + + ```bash + export PATH="$OUTPUT_DIR:$PATH" + ``` + Verify installation: ```bash @@ -210,19 +242,26 @@ configure-zenith-vars --stage stage1-lockdrop-simulation --list ## Setup -Create the data directory required for simulation (must be same as the path configured for `lockdrop simulation deployments directory` in previous step to configure variables): +First, create the data directory required for simulation (must be same as the path configured for `lockdrop simulation deployments directory` in previous step to configure variables): ```bash # For example: mkdir -p /home/$USER/stage1-lockdrop-simulation ``` +Now, run required system setup (installs docker and laconic-so): + +```bash +# Make sure you are in ansible directory +cd /ansible + +# sudo access required for installing docker +zenith-ansible -i ./inventories/development/hosts.yml ./stage1-site.yml -e "mode=system-setup" -K +``` + Setup the deployment directories and pull required docker images to generate base genesis file along with other artifacts: ```bash -# Make sure you are in ansible directory: -cd /ansible - zenith-ansible -i ./inventories/development/hosts.yml tge-site.yml -e "mode=setup" ``` diff --git a/test-runs/README.md b/test-runs/README.md index ada1837..ef29fe4 100644 --- a/test-runs/README.md +++ b/test-runs/README.md @@ -31,6 +31,31 @@ To reproduce the results from any one of the test runs, follow these steps to ru ## Prerequisites +- Software Requirements + + - Ubuntu 22 or 24 + + - **Note**: Other platforms are not supported yet for deployment + + - [Python3](https://wiki.python.org/moin/BeginnersGuide/Download) `3.12.x` >= `python3 --version` >= `3.8.10` (the Python3 shipped in Ubuntu 20+ is good to go) + + - Make sure that `ensurepip` is available for creating virtual environments: + + ```bash + python3 -m ensurepip --version + + # Ubuntu/Debian + sudo apt-get install python3-venv + ``` + + - Repository Access: SSH access to + + - If you are logging in to the host using SSH, make sure to use agent forwarding: + + ```bash + ssh -A + ``` + - Set zenith-stack version to use: ```bash @@ -63,13 +88,14 @@ To reproduce the results from any one of the test runs, follow these steps to ru - **zenith-ansible binary** - **Note**: Set `OUTPUT_DIR` in the following command to output directory of your choice. Make sure that it exists and is in your [`PATH`](https://unix.stackexchange.com/a/26059). + **Note**: Set `OUTPUT_DIR` in the following command to output directory of your choice. You may need to run the following commands with necessary permissions, as root or through sudo. ```bash # Download the binary from generic package registry OUTPUT_DIR=~/bin + mkdir -p $OUTPUT_DIR curl -L -o $OUTPUT_DIR/zenith-ansible https://git.vdb.to/api/packages/LaconicNetwork/generic/zenith-stack/$ZENITH_STACK_VERSION/zenith-ansible ``` @@ -80,6 +106,12 @@ To reproduce the results from any one of the test runs, follow these steps to ru chmod +x $OUTPUT_DIR/zenith-ansible ``` + Add `OUTPUT_DIR` to your PATH: + + ```bash + export PATH="$OUTPUT_DIR:$PATH" + ``` + Verify installation: ```bash @@ -172,19 +204,26 @@ configure-zenith-vars --stage stage1-lockdrop-simulation --list ## Setup -Create the data directory required for simulation (must be same as the path configured for `lockdrop simulation deployments directory` in previous step to configure variables): +First, create the data directory required for simulation (must be same as the path configured for `lockdrop simulation deployments directory` in previous step to configure variables): ```bash # For example: mkdir -p /home/$USER/stage1-lockdrop-simulation ``` +Now, run required system setup (installs docker and laconic-so): + +```bash +# Make sure you are in ansible directory +cd /ansible + +# sudo access required for installing docker +zenith-ansible -i ./inventories/development/hosts.yml ./stage1-site.yml -e "mode=system-setup" -K +``` + Setup the deployment directories and pull required docker images to generate base genesis file along with other artifacts: ```bash -# Make sure you are in ansible directory: -cd /ansible - zenith-ansible -i ./inventories/development/hosts.yml tge-site.yml -e "mode=setup" ```