Agora Testnet

How to install a node for the Agora Testnet

Install Docker Engine

To run an Agora node, you must first have Docker installed and running. See here for instructions on how to install the Docker Engine https://docs.docker.com/engine/install/

For Linux or MacOS users

Install testnet

See here for instructions on how to install

mkdir agora-chain
cd agora-chain
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/bosagora/agora-chain/v0.x.x/agora.sh)"
./agora.sh network testnet
  • Available commands and descriptions of agora.sh

    ./agora.sh 
    agora.sh version 2.0.0
    Usage: ./agora.sh PROCESS FLAGS.
    PROCESS can be el-node, cl-node, validator, docker-compose, docker-compose-monitoring, start, stop, upgrade
    
    ./agora.sh network <network to change>
           - <network to change> is one of mainnet, testnet, and devnet, and the default is mainnet.
           - If <network to change> is not specified, it shows the currently set up network.
    
    ./agora.sh el-node ( init, run )
        el-node init
           - Initialize agora-el. At this point, all existing block data is deleted.
        el-node run
           - Run agora-el.
    
    ./agora.sh cl-node ( run )
        cl-node run
           - Run agora-cl.
    
    ./agora.sh validator ( accounts, exit, withdraw, slashing-protection-history )
    
    ./agora.sh validator accounts ( import, list, backup )
        validator accounts import <validator keys folder>
           - Add the validator's keys to the local wallet.
        validator accounts list
           - Show the validator's keys stored in the local wallet.
        validator accounts delete
           - Delete the validator's keys from the local wallet.
        validator accounts backup <validator keys folder>
           - Back up the validator's keys stored in the local wallet.
    
        validator exit
           - Used to voluntarily exit the validator's function. After this is done, you will see a screen where you select the validator's keys.
        validator withdraw <data folder>
           - Send pre-created withdrawal address registration data to the network.
           - Currently, only devnet is supported. Other networks will be supported later.
    
    ./agora.sh validator slashing-protection-history ( export, import ) 
        validator slashing-protection-history export <data folder>
           - Save the information that the verifiers worked on as a file. At this point, the validator on the current server must be stopped.
           - One validator must validate only once per block. Otherwise, the validator may be slashed.
               - If a validator runs on multiple servers, that validator may violate the above condition.
               - If a validator's server is changed to another server, the validator may violate the above condition.
               - To avoid this, you need to transfer the block verification information that the validators has performed so far.
        validator slashing-protection-history import <data folder>
           - Register block verification information performed by validators.
    
    ./agora.sh deposit-cli ( new-mnemonic, existing-mnemonic, generate-bls-to-execution-change )
        deposit-cli new-mnemonic
           - This command is used to generate keystores with a new mnemonic.
        deposit-cli existing-mnemonic
           - This command is used to re-generate or derive new keys from your existing mnemonic.
        deposit-cli generate-bls-to-execution-change <data folder>
           - Generates the data required to register the address to which the validator's amount will be withdrawn.
           - Currently, only devnet is supported. Other networks will be supported later.        
    
    ./agora.sh docker-compose ( up, down )
        docker-compose up
           - Run agora-el, agora-cl, validator.
        docker-compose down
           - Stop agora-el, agora-cl, validator.
    
    ./agora.sh docker-compose-monitoring ( up, down )
        docker-compose-monitoring up
            - Run agora-el, agora-cl, validator, and containers required for monitoring.
        docker-compose-monitoring down
           - Stop agora-el, agora-cl, validator, and containers required for monitoring.
    
    ./agora.sh start
           - Run agora-el, agora-cl, validator, and containers required for monitoring.
           - It's the same as './agora.sh docker-compose-monitoring up'
    
    ./agora.sh stop
           - Stop agora-el, agora-cl, validator, and containers required for monitoring.
           - It's the same as './agora.sh docker-compose-monitoring down'
    
    ./agora.sh upgrade
           - The latest version is installed, at which point the user data is preserved.

Upgrade for Linux or macOS

Execution Layer for Linux or MacOS

  • Init execution node

  • Run execution node

Consensus Layer for Linux or MacOS

  • Run consensus node

Agora validator (Agora-cl-validator)

If you want to test transfers then tBOA can be obtained from the Testnet Faucet at https://faucet.bosagora.org/request/boa/<Your testnet account>

This step is optional but essential if you want to participate in securing the Agora Blockchain, have the right to vote, and receive rewards.

However, in this section we are using the Agora Testnet BOA so rewards have no real value. Do not use real BOA in Testnet but request 40,000 tBOA by sending an email to [email protected] with subject "validator" or if this fails then make a request in Telegram at https://t.me/bosagora_eng.

Create personal keys and prepare deposit data and deposit stake

https://testnet-agora-staking.bosagora.org

Validator accounts for Linux or MacOS

  • Generate your validator keys when you don't have mnemonic

  • Generate your validator keys when you have mnemonic

  • Import your key stores

    or

    <your key stores folder> is where the validator keys are stored. The default folder is ./validator_keys

  • List your key stores in your wallet

  • Backup your key stores in your wallet

    <folder> is where the backup key is stored. The default folder is ./backup-wallet

Validator execution for Linux or MacOS

  • Run validator

Validator exit for Linux or MacOS

  • Voluntary exit of the validator

Validator withdrawals for Linux or MacOS

  • Generate the SignedBLSToExecutionChange data to enable withdrawals

    <folder> is where the SignedBLSToExecutionChange data is stored. The default folder is ./bls_to_execution_changes

  • Send the SignedBLSToExecutionChange data to enable withdrawals

    <folder> is where the SignedBLSToExecutionChange data is stored. The default folder is ./bls_to_execution_changes

Validator slashing protection for Linux or MacOS

  • export

    <folder> is where the slashing protection history data is stored. The default folder is ./slashing-protection-export

  • import

    <folder> is where the slashing protection history data is stored. The default folder is ./slashing-protection-export

Using docker-compose for Linux or MacOS

  1. Init the execution node

  1. Import your key stores

or

  1. Edit wallet password

  1. Edit transaction fee receiving address

  1. Run docker-compose

  1. Stop docker-compose

Using docker-compose with monitoring for Linux or MacOS

  1. Init the execution node

  1. Import your key stores

or

  1. Edit wallet password

  1. Edit transaction fee receiving address

  1. Run docker-compose

or

  1. Stop docker-compose

or

To check the status and rewards of the validator

Go to website https://testnet.agorascan.io/

For Windows users

Install Testnet

  • Available commands and descriptions of agora.bat

Upgrade for Windows

Execution Layer for Windows

  • Init execution node

  • Run execution node

Consensus Layer for Windows

  • Run consensus node

Agora validator (Agora-cl-validator)

If you want to test transfers then tBOA can be obtained from the Testnet Faucet at https://faucet.bosagora.org/request/boa/<Your testnet account>

This step is optional but essential if you want to participate in securing the Agora Blockchain, have the right to vote, and receive rewards.

However, in this section we are using the Agora Testnet BOA so rewards have no real value. Do not use real BOA in Testnet but request 40,000 tBOA by sending an email to [email protected] with subject "validator" or if this fails then make a request in Telegram at https://t.me/bosagora_eng.

Create personal keys and prepare deposit data and deposit stake

https://testnet-agora-staking.bosagora.org

Validator accounts for Windows

  • Generate your validator keys when you don't have mnemonic

  • Generate your validator keys when you have mnemonic

  • Import your key stores

    or

    <your key stores folder> is where the validator keys are stored. The default folder is ./validator_keys

  • List your key stores in your wallet

  • Backup your key stores in your wallet

    <folder> is where the backup key is stored. The default folder is ./backup-wallet

Validator execution for Windows

  • Run validator

Validator exit for Windows

  • Voluntary exit of the validator

Validator withdrawals for Windows

  • Generate the SignedBLSToExecutionChange data to enable withdrawals

    <folder> is where the SignedBLSToExecutionChange data is stored. The default folder is ./bls_to_execution_changes

  • Send the SignedBLSToExecutionChange data to enable withdrawals

    <folder> is where the SignedBLSToExecutionChange data is stored. The default folder is ./bls_to_execution_changes

Validator slashing protection for Windows

  • export

    <folder> is where the slashing protection history data is stored. The default folder is ./slashing-protection-export

  • import

    <folder> is where the slashing protection history data is stored. The default folder is ./slashing-protection-export

Using docker-compose for Windows

  1. Init the execution node

  1. Import your key stores

or

  1. Edit wallet password

  1. Edit transaction fee receiving address

  1. Run docker-compose

  1. Stop docker-compose

Using docker-compose with monitoring for Windows

  1. Init the execution node

  1. Import your key stores

or

  1. Edit wallet password

  1. Edit transaction fee receiving address

  1. Run docker-compose

or

  1. Stop docker-compose

or

Other features

Documentation of Agora-cl

Go to website https://agora-cl-docs.bosagora.org/

To check the status and rewards of the validator

Go to website https://testnet.agorascan.io

Last updated