The examples section provides information on some examples of how Solo can be used and leveraged.
The examples section provides information on some examples of how Solo can be used and leveraged.
This is the multi-page printable view of this section. Click here to print.
The examples section provides information on some examples of how Solo can be used and leveraged.
The examples section provides information on some examples of how Solo can be used and leveraged.
This example demonstrates how to use the node add-prepare/prepare-upgrade/freeze-upgrade/add-execute commands against a network in order to manually write a NodeCreateTransaction.
solo node add-prepare
to get artifacts needed for the SDK NodeCreateTransactionsolo node prepare-upgrade
and solo node freeze-upgrade
to put the network into a freeze statesolo node add-execute
to add network resources for a third consensus node, configures it, then restarts the network to come out of the freeze and leverage the new nodeTaskfile.yml
and comment out/uncomment depending on if you want to run Solo checked out of the repository or running Solo with an NPM installSOLO_COMMAND: "npm run solo --"
: use this if running with solo source repositorySOLO_COMMAND: "solo"
: use this if running with installed version of Soloapplication.properties
if desired: # Copy and update application.properties
cp resources/templates/application.properties {{ .APPLICATION_PROPERTIES }}
echo "contracts.evm.ethTransaction.zeroHapiFees.enabled=false" >> {{ .APPLICATION_PROPERTIES }}
resources/templates/application.properties
is the location of the Solo customized application.properties
if you are sitting in the root of the Solo repository directoryAPPLICATION_PROPERTIES: "{{ .TEMPORARY_DIR }}/application.properties"
CN_VERSION: "v0.64.2"
main
branch. You will need to clone the Hiero Consensus Node yourself and then from its root directory run ./gradlew assemble
, this assumes you have all its prerequisites configured, see: https://github.com/hiero-ledger/hiero-consensus-node/blob/main/docs/README.mddir: ../..
setting says to run the script two directories above, CN_LOCAL_BUILD_PATH
can be updated to be relative to that, or can be changed to have the full path to the consensus node directoryCN_LOCAL_BUILD_PATH
actually points to the <hiero-consensus-node>/hedera-node/data
, this is because this is the location of the artifacts that Solo needs to upload to the network nodetask
task destroy
Taskfile.yml
— All automation tasks and configurationpackage.json
- Contains the libraries for the solo-node-create-transaction.js
to functionpackage-lock.json
- A snapshot of what was last used when npm install
was ran, run npm ci
to install these versions specificallysolo-node-create-transaction.js
- The script to run the Hiero SDK JS callsThis example demonstrates how to use the node add-prepare/prepare-upgrade/freeze-upgrade/add-execute commands against a network in order to manually write a NodeDeleteTransaction.
solo node delete-prepare
to get artifacts needed for the SDK NodeDeleteTransactionsolo node prepare-upgrade
and solo node freeze-upgrade
to put the network into a freeze statesolo node delete-execute
to configure the network to stop using the deleted node, then restarts the network to come out of the freeze and run with the new configurationsTaskfile.yml
and comment out/uncomment depending on if you want to run Solo checked out of the repository or running Solo with an NPM installSOLO_COMMAND: "npm run solo --"
: use this if running with solo source repositorySOLO_COMMAND: "solo"
: use this if running with installed version of Soloapplication.properties
if desired: # Copy and update application.properties
cp resources/templates/application.properties {{ .APPLICATION_PROPERTIES }}
echo "contracts.evm.ethTransaction.zeroHapiFees.enabled=false" >> {{ .APPLICATION_PROPERTIES }}
resources/templates/application.properties
is the location of the Solo customized application.properties
if you are sitting in the root of the Solo repository directoryAPPLICATION_PROPERTIES: "{{ .TEMPORARY_DIR }}/application.properties"
CN_VERSION: "v0.64.2"
main
branch. You will need to clone the Hiero Consensus Node yourself and then from its root directory run ./gradlew assemble
, this assumes you have all its prerequisites configured, see: https://github.com/hiero-ledger/hiero-consensus-node/blob/main/docs/README.mddir: ../..
setting says to run the script two directories above, CN_LOCAL_BUILD_PATH
can be updated to be relative to that, or can be changed to have the full path to the consensus node directoryCN_LOCAL_BUILD_PATH
actually points to the <hiero-consensus-node>/hedera-node/data
, this is because this is the location of the artifacts that Solo needs to upload to the network nodetask
task destroy
Taskfile.yml
— All automation tasks and configurationpackage.json
- Contains the libraries for the solo-node-delete-transaction.js
to functionpackage-lock.json
- A snapshot of what was last used when npm install
was ran, run npm ci
to install these versions specificallysolo-node-delete-transaction.js
- The script to run the Hiero SDK JS callsThis example demonstrates how to use the node add-prepare/prepare-upgrade/freeze-upgrade/add-execute commands against a network in order to manually write a NodeUpdateTransaction.
solo node update-prepare
to get artifacts needed for the SDK NodeUpdateTransactionsolo node prepare-upgrade
and solo node freeze-upgrade
to put the network into a freeze statesolo node update-execute
to update network resources for the changes to the updated node, then restarts the network to come out of the freeze and leverage the changesTaskfile.yml
and comment out/uncomment depending on if you want to run Solo checked out of the repository or running Solo with an NPM installSOLO_COMMAND: "npm run solo --"
: use this if running with solo source repositorySOLO_COMMAND: "solo"
: use this if running with installed version of Soloapplication.properties
if desired: # Copy and update application.properties
cp resources/templates/application.properties {{ .APPLICATION_PROPERTIES }}
echo "contracts.evm.ethTransaction.zeroHapiFees.enabled=false" >> {{ .APPLICATION_PROPERTIES }}
resources/templates/application.properties
is the location of the Solo customized application.properties
if you are sitting in the root of the Solo repository directoryAPPLICATION_PROPERTIES: "{{ .TEMPORARY_DIR }}/application.properties"
CN_VERSION: "v0.64.2"
main
branch. You will need to clone the Hiero Consensus Node yourself and then from its root directory run ./gradlew assemble
, this assumes you have all its prerequisites configured, see: https://github.com/hiero-ledger/hiero-consensus-node/blob/main/docs/README.mddir: ../..
setting says to run the script two directories above, CN_LOCAL_BUILD_PATH
can be updated to be relative to that, or can be changed to have the full path to the consensus node directoryCN_LOCAL_BUILD_PATH
actually points to the <hiero-consensus-node>/hedera-node/data
, this is because this is the location of the artifacts that Solo needs to upload to the network nodetask
task destroy
Taskfile.yml
— All automation tasks and configurationpackage.json
- Contains the libraries for the solo-node-update-transaction.js
to functionpackage-lock.json
- A snapshot of what was last used when npm install
was ran, run npm ci
to install these versions specificallysolo-node-update-transaction.js
- The script to run the Hiero SDK JS calls