From f57979c68e187306324240419a3cd0f30242ba4f Mon Sep 17 00:00:00 2001 From: axenteoctavian Date: Mon, 24 Mar 2025 11:41:43 +0200 Subject: [PATCH] Sovereign docs with new repo name --- docs/sovereign/distributed-setup.md | 15 +++++--------- docs/sovereign/local-setup.md | 31 +++++++++++++++++------------ docs/sovereign/standalone-evm.md | 4 ++-- docs/sovereign/token-management.md | 4 ++-- 4 files changed, 27 insertions(+), 27 deletions(-) diff --git a/docs/sovereign/distributed-setup.md b/docs/sovereign/distributed-setup.md index 28b2493d7..d60bf3868 100644 --- a/docs/sovereign/distributed-setup.md +++ b/docs/sovereign/distributed-setup.md @@ -4,24 +4,20 @@ This guide will help you deploy a public Sovereign Chain with real validators, enabling a truly decentralized setup. At its core, blockchain technology—and Sovereign Chains in particular—are designed to operate in a decentralized manner, powered by multiple independent validators. This ensures transparency, security, and resilience, as no single entity has control over the entire system. Unlike other guides we’ve provided, which focus on local setups, this solution emphasizes decentralization by involving multiple stakeholders in the validation process. By following the steps below, the owner can create the Sovereign Chain configuration for the network: -### Step 1: Get the ```mx-chain-go``` Repository +### Step 1: Get the `mx-chain-sovereign-go` Repository Before proceeding, ensure that a **SSH key** for GitHub is configured on your machine. 1. Clone the GitHub repository: ```bash - git clone git@github.com:multiversx/mx-chain-go.git + git clone git@github.com:multiversx/mx-chain-sovereign-go.git ``` -2. Checkout the specific Sovereign Chain SDK branch and navigate to testnet directory: +2. Navigate to testnet directory: ```bash - cd mx-chain-go && git fetch && git checkout d699ffd && cd scripts/testnet + cd mx-chain-sovereign-go/scripts/testnet ``` - :::info - `d699ffd` is the commit hash we recommend to be used. If you want to use the latest version you can use the branch `feat/chain-go-sdk`. - ::: - ### Step 2: Seeder Build Build and run the seed node @@ -81,7 +77,6 @@ _Note: Files marked with * will be discussed later in the document._ Sovereign configs can be found in `cmd/sovereignnode/config` ``` -economics.toml enableEpochs.toml prefs.toml sovereignConfig.toml @@ -197,7 +192,7 @@ Each validator should have: ### Sovereign validator/observer node start The following commands will start the sovereign validator node with the configuration from **config** folder and with the **validatorKey** (or multi key from **allValidatorsKey**). -Adjust the flags as needed. You can find all the available flags in `/mx-chain-go/cmd/sovereignnode/flags.go` +Adjust the flags as needed. You can find all the available flags in `/mx-chain-sovereign-go/cmd/sovereignnode/flags.go` #### # single key ``` diff --git a/docs/sovereign/local-setup.md b/docs/sovereign/local-setup.md index fc6cb6309..25304d3e4 100644 --- a/docs/sovereign/local-setup.md +++ b/docs/sovereign/local-setup.md @@ -4,24 +4,20 @@ This guide will help you deploy a full sovereign local network connected to MultiversX network. This includes all the smart contracts and dependent services needed. Follow these steps carefully to ensure a successful deployment. -### Step 1: Get the `mx-chain-go` Repository +### Step 1: Get the `mx-chain-sovereign-go` Repository Before proceeding, ensure that a **SSH key** for GitHub is configured on your machine. 1. Clone the GitHub repository: ```bash - git clone git@github.com:multiversx/mx-chain-go.git + git clone git@github.com:multiversx/mx-chain-sovereign-go.git ``` -2. Checkout the specific Sovereign Chain SDK branch and navigate to testnet directory: +2. Navigate to testnet directory: ```bash - cd mx-chain-go && git fetch && git checkout d699ffd6a29513c573b1d212861f932e037d8f67 && cd scripts/testnet + cd mx-chain-sovereign-go/scripts/testnet ``` - :::info - `d699ffd6a29513c573b1d212861f932e037d8f67` is the commit hash we recommend to be used. If you want to use the latest version you can use the branch `feat/chain-go-sdk`. - ::: - 3. Run the prerequisites script: ```bash ./prerequisites.sh @@ -30,8 +26,8 @@ Before proceeding, ensure that a **SSH key** for GitHub is configured on your ma :::info The prerequisites script verifies and downloads the necessary packages to run the nodes and clones the required repositories: - - **mx-chain-deploy-go**: Initializes the configuration for the chain and deployment parameters. - - **mx-chain-proxy-go**: Repository for the proxy. + - **mx-chain-deploy-sovereign-go**: Initializes the configuration for the chain and deployment parameters. + - **mx-chain-proxy-sovereign-go**: Repository for the sovereign proxy. - **mx-chain-sovereign-bridge-go**: Repository for the cross-chain service. - **mx-chain-tools-go**: Repository for updating elastic indices. ::: @@ -74,19 +70,27 @@ cd sovereignBridge WALLET="~/wallet.pem" # Main Chain Constants + MAIN_CHAIN_ELASTIC=https://testnet-index.multiversx.com PROXY = https://testnet-gateway.multiversx.com CHAIN_ID = T + + # Native token + NATIVE_ESDT_TICKER=SOV + NATIVE_ESDT_NAME=SovToken ``` :::note - **SOVEREIGN_DIRECTORY, TXS_OUTFILE_DIRECTORY, CONTRACTS_DIRECTORY** - represent the paths to the location where the deployment scripts will generate the outputs. - **WALLET** - should represent the wallet generated at Step 2.2. + - **MAIN_CHAIN_ELASTIC** - represents the elasticsearch db from the main chain - **PROXY** - in this case, for the purpose of the test, the used proxy is the testnet one. Of course that the proper proxy should be used when deploying your own set of contracts depending on the development phase of your project. - **CHAIN_ID** - should represent the chain ID of the chain where the contracts are to be deployed. - **"1"** for Mainnet; - **"D"** for Devnet; - **"T"** for Testnet; - or use you own local network ID + - **NATIVE_ESDT_TICKER** - represents the ticker from which the native esdt will be generated, and updated in configs + - **NATIVE_ESDT_NAME** - represents the native esdt name ::: 5. Source the script: @@ -96,13 +100,14 @@ cd sovereignBridge 6. Deploy all cross-chain contracts on main chain and deploy Sovereign Chain with all required services: ```bash - deploySovereignWithCrossChainContracts + deploySovereignWithCrossChainContracts sov ``` :::info `deploySovereignWithCrossChainContracts` command will: - deploy all main chain smart contracts and update sovereign configs - deploy sovereign nodes and the main chain observer + - `sov` is the prefix for ESDT tokens in the sovereign chain - it can be changed to any string consisting of 4 lowercase alphanumeric characters ::: ### Step 3: Deploy services @@ -113,7 +118,7 @@ ___ ## Stop and clean local Sovereign Chain -1. Navigate to `mx-chain-go/scripts/testnet/sovereignBridge`. +1. Navigate to `mx-chain-sovereign-go/scripts/testnet/sovereignBridge`. Source the script: ```bash source script.sh @@ -126,7 +131,7 @@ ___ ## Upgrade and reset local Sovereign Chain -1. Navigate to `mx-chain-go/scripts/testnet/sovereignBridge`. +1. Navigate to `mx-chain-sovereign-go/scripts/testnet/sovereignBridge`. Source the script: ```bash source script.sh diff --git a/docs/sovereign/standalone-evm.md b/docs/sovereign/standalone-evm.md index 2147415d8..520f860bc 100644 --- a/docs/sovereign/standalone-evm.md +++ b/docs/sovereign/standalone-evm.md @@ -13,7 +13,7 @@ RunSmartContractCreate(input *ContractCreateInput) (*VMOutput, error) // RunSmartContractCall computes the result of a smart contract call and how the system must change after the execution RunSmartContractCall(input *ContractCallInput) (*VMOutput, error) ``` -The **SCProcessor** from `mx-chain-go` prepares the input information for these functions. We aim to avoid modifying the **SCProcessor** itself; instead, all necessary abstractions will be implemented at the EVM level. +The **SCProcessor** from `mx-chain-sovereign-go` prepares the input information for these functions. We aim to avoid modifying the **SCProcessor** itself; instead, all necessary abstractions will be implemented at the EVM level. ## 2. Input Preparation: EVMInputCreator @@ -35,7 +35,7 @@ To allow the EVM to function within MultiversX, we introduce a layer that bridge ### 3.2 Finalizing State Changes -After EVM execution finishes, we need to commit the resulting state changes to the blockchain. The EVM will use the `outputContext` component, which (together with the `storageContext`) tracks modified accounts and storages. It also creates the final `vmOutput`, which the `scProcessor` in `mx-chain-go` will then validate and apply to the blockchain (the trie) if everything is correct. +After EVM execution finishes, we need to commit the resulting state changes to the blockchain. The EVM will use the `outputContext` component, which (together with the `storageContext`) tracks modified accounts and storages. It also creates the final `vmOutput`, which the `scProcessor` in `mx-chain-sovereign-go` will then validate and apply to the blockchain (the trie) if everything is correct. ## 4. Gas Metering diff --git a/docs/sovereign/token-management.md b/docs/sovereign/token-management.md index eff78f8a3..114fa695c 100644 --- a/docs/sovereign/token-management.md +++ b/docs/sovereign/token-management.md @@ -2,7 +2,7 @@ ## Main Chain -> Sovereign Chain -1. Navigate to `/mx-chain-go/scripts/testnet/sovereignBridge`. +1. Navigate to `/mx-chain-sovereign-go/scripts/testnet/sovereignBridge`. Update the configuration file `config/configs.cfg` with the token settings you prefer. Example: ```ini @@ -30,7 +30,7 @@ ## Sovereign Chain -> Main Chain -1. Navigate to `/mx-chain-go/scripts/testnet/sovereignBridge`. +1. Navigate to `/mx-chain-sovereign-go/scripts/testnet/sovereignBridge`. Update the configuration file `config/configs.cfg` with the sovereign token settings you prefer. Example: ```ini