From 495d47a846c85aaf84521846377747cae6048050 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rados=C5=82aw=20Sporny?= Date: Mon, 3 Feb 2025 13:04:35 +0100 Subject: [PATCH] feat: local-env with wizard-spawned network (#443) Refs: ETCM-9298 --- .../wizard/governance-authority/entrypoint.sh | 156 ++++++++++++++++++ .../wizard/permissioned/entrypoint.sh | 52 ++++++ .../wizard/registered/entrypoint.sh | 106 ++++++++++++ .../modules/partner-chains-wizard.txt | 55 ++++++ dev/local-environment/setup.sh | 15 +- 5 files changed, 381 insertions(+), 3 deletions(-) create mode 100644 dev/local-environment/configurations/wizard/governance-authority/entrypoint.sh create mode 100644 dev/local-environment/configurations/wizard/permissioned/entrypoint.sh create mode 100644 dev/local-environment/configurations/wizard/registered/entrypoint.sh create mode 100644 dev/local-environment/modules/partner-chains-wizard.txt diff --git a/dev/local-environment/configurations/wizard/governance-authority/entrypoint.sh b/dev/local-environment/configurations/wizard/governance-authority/entrypoint.sh new file mode 100644 index 000000000..c0922bfdb --- /dev/null +++ b/dev/local-environment/configurations/wizard/governance-authority/entrypoint.sh @@ -0,0 +1,156 @@ +#!/bin/bash + +echo "Installing dependencies..." + +apt -qq update &> /dev/null +apt -qq -y install expect curl jq ncat &> /dev/null + +cp /usr/local/bin/partner-chains-node /partner-chains-node + +echo "Beginning configuration..." + + +echo "Generating keys..." +expect < tmp.json && mv tmp.json pc-chain-config.json + + +echo "Creating chain spec..." +expect < tmp.json && mv tmp.json chain-spec.json + +echo "Configuring Epoch Length..." +jq '.genesis.runtimeGenesis.config.sidechain.slotsPerEpoch = 5' chain-spec.json > tmp.json && mv tmp.json chain-spec.json + +echo "Copying chain-spec.json file to /shared/chain-spec.json..." +cp chain-spec.json /shared/chain-spec.json +echo "chain-spec.json generation complete." + + +echo "Copying pc-chain-config.json file to /shared/pc-chain-config.json..." +cp pc-chain-config.json /shared/pc-chain-config.json + +touch /shared/chain-spec.ready + + +echo "Setting up main chain state..." +expect < /dev/null +apt -qq -y install expect jq &> /dev/null + +cp /usr/local/bin/partner-chains-node /partner-chains-node + +echo "Beginning configuration..." + + +echo "Generating keys..." +expect < tmp.json && mv tmp.json pc-resources-config.json + +echo "Starting the node..." +expect < /dev/null +apt -qq -y install expect jq &> /dev/null + +cp /usr/local/bin/partner-chains-node /partner-chains-node + +echo "Beginning configuration..." + + +echo "Generating keys..." +expect < tmp.json && mv tmp.json pc-resources-config.json + +echo "Starting the node..." +expect <> docker-compose.yml cat ./modules/partner-chains-setup.txt >> docker-compose.yml ;; + 5) + echo -e "Including all services with wizard partner chain node.\n" + cat ./modules/cardano.txt >> docker-compose.yml + cat ./modules/ogmios.txt >> docker-compose.yml + cat ./modules/db-sync.txt >> docker-compose.yml + cat ./modules/postgres.txt >> docker-compose.yml + cat ./modules/partner-chains-wizard.txt >> docker-compose.yml + ;; 0) echo -e "Including all services.\n" cat ./modules/cardano.txt >> docker-compose.yml @@ -372,11 +381,11 @@ parse_arguments() { shift ;; -d|--deployment-option) - if [[ -n "$2" && "$2" =~ ^[1-4]$ ]]; then + if [[ -n "$2" && "$2" =~ ^[1-5]$ ]]; then deployment_option="$2" shift 2 else - echo "Error: Invalid deployment option '$2'. Valid options are 1, 2, 3, or 4." + echo "Error: Invalid deployment option '$2'. Valid options are 1, 2, 3, 4 or 5." exit 1 fi ;;