This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Advanced Solo Setup

Deep-dive into advanced deployment methods, network customization, and operational management. This section covers YAML-driven deployments, manual component orchestration, dynamic node management, and CI/CD integration. Ideal for DevOps engineers and system administrators requiring full control.

1 - Using Environment Variables

A comprehensive reference of all environment variables supported by Solo, including their purposes, default values, and expected formats. Configure Solo deployments through environment variable tuning.

Overview

Solo supports a set of environment variables that let you customize its behaviour without modifying command-line flags on every run. Variables set in your shell environment take effect automatically for all subsequent Solo commands.

Setting environment variables

How you set a variable depends on your shell. Use the tab for your platform:

# For a single command only
CONSENSUS_NODE_VERSION=v0.73.0 solo one-shot single deploy

# For the current session
export CONSENSUS_NODE_VERSION=v0.73.0

# Persist across sessions (add to ~/.bashrc or ~/.zshrc)
echo 'export CONSENSUS_NODE_VERSION=v0.73.0' >> ~/.zshrc
# For the current session
$env:CONSENSUS_NODE_VERSION = 'v0.73.0'

# Persist for your user (all future sessions)
[System.Environment]::SetEnvironmentVariable('CONSENSUS_NODE_VERSION', 'v0.73.0', 'User')

# Or add it to your PowerShell profile
Add-Content $PROFILE '$env:CONSENSUS_NODE_VERSION = "v0.73.0"'

Tip: Variables set in your shell environment (or persisted as shown above) take effect automatically for all subsequent Solo commands.

General

Environment VariableDescriptionDefault Value
SOLO_HOMEPath to the Solo cache and log files~/.solo
SOLO_CACHE_DIRPath to the Solo cache directory~/.solo/cache
SOLO_LOG_LEVELLogging level for Solo operations. Accepted values: trace, debug, info, warn, errorinfo
SOLO_DEV_OUTPUTTreat all commands as if the --dev flag were specifiedfalse
SOLO_CHAIN_IDChain ID of the Solo network298
FORCE_PODMANForce the use of Podman as the container engine when creating a new local cluster. Accepted values: true, falsefalse

Network and Node Identity

Environment VariableDescriptionDefault Value
DEFAULT_START_ID_NUMBERRaw node ID number for the first consensus node. The first node account ID is resolved as 0.0.<DEFAULT_START_ID_NUMBER>3
SOLO_NODE_INTERNAL_GOSSIP_PORTInternal gossip port used by the Hiero network50111
SOLO_NODE_EXTERNAL_GOSSIP_PORTExternal gossip port used by the Hiero network50111
SOLO_NODE_DEFAULT_STAKE_AMOUNTDefault stake amount for a node500
GRPC_PORTLocal port-forward for consensus node gRPC. Default is 35211 for Solo 0.63+ (changed from 50211 to avoid Windows ephemeral-port conflicts). See Port availability.35211
LOCAL_NODE_START_PORTLocal node start port for the Solo network30212

Operator and Key Configuration

Environment VariableDescriptionDefault Value
SOLO_OPERATOR_IDOperator account ID for the Solo network0.0.2
SOLO_OPERATOR_KEYOperator private key for the Solo network302e020100...
SOLO_OPERATOR_PUBLIC_KEYOperator public key for the Solo network302a300506...
FREEZE_ADMIN_ACCOUNTFreeze admin account ID for the Solo network0.0.58
GENESIS_KEYGenesis private key for the Solo network302e020100...

Note: Full key values are omitted above for readability. Refer to the source defaults for complete key strings.


Node Client Behaviour

Environment VariableDescriptionDefault Value
NODE_CLIENT_MIN_BACKOFFMinimum wait time between retries, in milliseconds1000
NODE_CLIENT_MAX_BACKOFFMaximum wait time between retries, in milliseconds1000
NODE_CLIENT_REQUEST_TIMEOUTTime a transaction or query retries on a “busy” network response, in milliseconds600000
NODE_CLIENT_MAX_ATTEMPTSMaximum number of attempts for node client operations600
NODE_CLIENT_SDK_PING_MAX_RETRIESMaximum number of retries for node health pings5
NODE_CLIENT_SDK_PING_RETRY_INTERVALInterval between node health ping retries, in milliseconds10000
NODE_COPY_CONCURRENTNumber of concurrent threads used when copying files to a node4
LOCAL_BUILD_COPY_RETRYNumber of retries for local build copy operations3
ACCOUNT_UPDATE_BATCH_SIZENumber of accounts to update in a single batch operation10

Pod and Network Readiness

Environment VariableDescriptionDefault Value
PODS_RUNNING_MAX_ATTEMPTSMaximum number of attempts to check if pods are running900
PODS_RUNNING_DELAYInterval between pod running checks, in milliseconds1000
PODS_READY_MAX_ATTEMPTSMaximum number of attempts to check if pods are ready300
PODS_READY_DELAYInterval between pod ready checks, in milliseconds2000
NETWORK_NODE_ACTIVE_MAX_ATTEMPTSMaximum number of attempts to check if network nodes are active300
NETWORK_NODE_ACTIVE_DELAYInterval between network node active checks, in milliseconds1000
NETWORK_NODE_ACTIVE_TIMEOUTMaximum wait time for network nodes to become active, in milliseconds1000
NETWORK_PROXY_MAX_ATTEMPTSMaximum number of attempts to check if the network proxy is running300
NETWORK_PROXY_DELAYInterval between network proxy checks, in milliseconds2000
NETWORK_DESTROY_WAIT_TIMEOUTMaximum wait time for network teardown to complete, in milliseconds120

Block Node

Environment VariableDescriptionDefault Value
BLOCK_NODE_PODS_RUNNING_MAX_ATTEMPTSMaximum number of attempts to check if block node pods are running900
BLOCK_NODE_PODS_RUNNING_DELAYInterval between block node pod running checks, in milliseconds1000
BLOCK_NODE_ACTIVE_MAX_ATTEMPTSMaximum number of attempts to check if block nodes are active100
BLOCK_NODE_ACTIVE_DELAYInterval between block node active checks, in milliseconds60
BLOCK_NODE_ACTIVE_TIMEOUTMaximum wait time for block nodes to become active, in milliseconds60
BLOCK_STREAM_STREAM_MODEThe blockStream.streamMode value in consensus node application properties. Only applies when a Block Node is deployedBOTH
BLOCK_STREAM_WRITER_MODEThe blockStream.writerMode value in consensus node application properties. Only applies when a Block Node is deployedFILE_AND_GRPC

Relay Node

Environment VariableDescriptionDefault Value
RELAY_PODS_RUNNING_MAX_ATTEMPTSMaximum number of attempts to check if relay pods are running900
RELAY_PODS_RUNNING_DELAYInterval between relay pod running checks, in milliseconds1000
RELAY_PODS_READY_MAX_ATTEMPTSMaximum number of attempts to check if relay pods are ready100
RELAY_PODS_READY_DELAYInterval between relay pod ready checks, in milliseconds1000

Mirror Node

Environment VariableDescriptionDefault Value
DISABLE_IMPORTER_SPRING_PROFILESDisable automatic configuration of Mirror Node importer Spring profiles for block-node integration.false
SPRING_PROFILES_ACTIVESpring profiles to use for the Mirror Node importer when automatic importer profile configuration is enabled.blocknode

Load Balancer

Environment VariableDescriptionDefault Value
LOAD_BALANCER_CHECK_DELAY_SECSDelay between load balancer status checks, in seconds5
LOAD_BALANCER_CHECK_MAX_ATTEMPTSMaximum number of attempts to check load balancer status60

Lease Management

Environment VariableDescriptionDefault Value
SOLO_LEASE_ACQUIRE_ATTEMPTSNumber of attempts to acquire a lock before failing10
SOLO_LEASE_DURATIONDuration in seconds for which a lock is held before expiration20

Component Versions

Environment VariableDescription
CONSENSUS_NODE_VERSIONRelease version of the Consensus Node to use
BLOCK_NODE_VERSIONRelease version of the Block Node to use
MIRROR_NODE_VERSIONRelease version of the Mirror Node to use
EXPLORER_VERSIONRelease version of the Explorer to use
RELAY_VERSIONRelease version of the JSON-RPC Relay to use
INGRESS_CONTROLLER_VERSIONRelease version of the HAProxy Ingress Controller to use
SOLO_CHART_VERSIONRelease version of the Solo Helm charts to use
MINIO_OPERATOR_VERSIONRelease version of the MinIO Operator to use
PROMETHEUS_STACK_VERSIONRelease version of the Prometheus Stack to use
GRAFANA_AGENT_VERSIONRelease version of the Grafana Agent to use

Tip: To pin component versions for a solo one-shot single deploy, prefix the command with these variables. See the One-Shot Deployment section below for an example.


Edge Component Versions

These variables only take effect when solo one-shot single deploy or solo one-shot multi deploy is invoked with the --edge flag (solo one-shot falcon deploy does not accept --edge in v0.72.0). They let you point a one-shot deploy at arbitrary component tags — release candidates, pre-releases, or any other tag the component’s registry exposes — without rebuilding Solo.

ComponentEnvironment VariableFalls back to
Consensus NodeCONSENSUS_NODE_EDGE_VERSIONCONSENSUS_NODE_VERSION
Mirror NodeMIRROR_NODE_EDGE_VERSIONMIRROR_NODE_VERSION
JSON-RPC RelayRELAY_EDGE_VERSIONRELAY_VERSION
ExplorerEXPLORER_EDGE_VERSIONEXPLORER_VERSION
Block NodeBLOCK_NODE_EDGE_VERSIONBLOCK_NODE_VERSION
Solo ChartSOLO_CHART_EDGE_VERSIONSOLO_CHART_VERSION

Set only the variables for components you want to override; the rest use their compiled-in edge defaults. Without --edge, every *_EDGE_VERSION variable is ignored.

For full usage, examples, version-format rules, and troubleshooting, see One-Shot Deploy with Custom Component Versions.


Helm Chart URLs

Environment VariableDescriptionDefault Value
JSON_RPC_RELAY_CHART_URLHelm chart repository URL for the JSON-RPC Relayhttps://hiero-ledger.github.io/hiero-json-rpc-relay/charts
MIRROR_NODE_CHART_URLHelm chart repository URL for the Mirror Nodehttps://hashgraph.github.io/hedera-mirror-node/charts
EXPLORER_CHART_URLHelm chart repository URL for the Exploreroci://ghcr.io/hiero-ledger/hiero-mirror-node-explorer/hiero-explorer-chart
INGRESS_CONTROLLER_CHART_URLHelm chart repository URL for the ingress controllerhttps://haproxy-ingress.github.io/charts
PROMETHEUS_OPERATOR_CRDS_CHART_URLHelm chart repository URL for the Prometheus Operator CRDshttps://prometheus-community.github.io/helm-charts
NETWORK_LOAD_GENERATOR_CHART_URLHelm chart repository URL for the Network Load Generatoroci://swirldslabs.jfrog.io/load-generator-helm-release-local

Network Load Generator

Environment VariableDescriptionDefault Value
NETWORK_LOAD_GENERATOR_CHART_VERSIONRelease version of the Network Load Generator Helm chart to usev0.7.0
NETWORK_LOAD_GENERATOR_PODS_RUNNING_MAX_ATTEMPTSMaximum number of attempts to check if Network Load Generator pods are running900
NETWORK_LOAD_GENERATOR_POD_RUNNING_DELAYInterval between Network Load Generator pod running checks, in milliseconds1000

One-Shot Deployment

Environment VariableDescriptionDefault Value
ONE_SHOT_WITH_BLOCK_NODEDeploy Block Node as part of a one-shot deploymentfalse
MIRROR_NODE_PINGER_TPSTransactions per second for the Mirror Node monitor pinger. Set to 0 to disable5
CONSENSUS_NODE_EDGE_VERSIONEdge (newer-than-default) consensus node version used by --edge in one-shot deploys. Falls back to CONSENSUS_NODE_VERSION.v0.74.0-rc.1
MIRROR_NODE_EDGE_VERSIONEdge mirror node version used by --edge in one-shot deploys. Falls back to MIRROR_NODE_VERSION.v0.153.1
EXPLORER_EDGE_VERSIONEdge explorer version used by --edge in one-shot deploys. Falls back to EXPLORER_VERSION.26.0.0
RELAY_EDGE_VERSIONEdge relay version used by --edge in one-shot deploys. Falls back to RELAY_VERSION.0.76.2
BLOCK_NODE_EDGE_VERSIONEdge block node version used by --edge in one-shot deploys. Falls back to BLOCK_NODE_VERSION.0.31.0

Pinning Component Versions

solo one-shot single deploy does not yet expose CLI flags for pinning individual component versions. To run a one-shot deployment against specific releases, prefix the command with the Component Versions environment variables:

CONSENSUS_NODE_VERSION=v0.73.0 MIRROR_NODE_VERSION=v0.153.1 solo one-shot single deploy

Any of the *_VERSION variables listed in Component Versions can be combined in the same command to pin multiple components at once.

Note:

  • This is the current recommended approach for version pinning in one-shot deployments.
  • CLI flags for version overrides on one-shot are planned for Q2 — tracked in hiero-ledger/solo#4242.
  • Environment variables will remain valid for one-off overrides after the CLI flags land, so the form above will continue to work.

Image Cache

Solo caches the container images it deploys as local archives to speed up repeat deployments. The cache is enabled by default; these variables disable it per context. See Solo Image Cache for the full feature and the solo cache image commands.

Environment VariableDescriptionDefault
ENABLE_IMAGE_CACHESet to false to disable the image cache during solo one-shot deploys. Requires Solo v0.78.0 or later (earlier releases have an inverted-logic bug in this flag).enabled
SOLO_NO_CACHESet to true to skip the image pull during an npm global install.enabled
HOMEBREW_NO_SOLO_CACHESet to any value to skip the image pull during a Homebrew install.enabled

Note: The cached component versions follow the same environment-variable mechanism as Pinning Component Versions above - the *_VERSION environment variables affect the images the cache pulls, but the --*-version CLI flags do not.

2 - Network Deployments

Step-by-step workflows and component-level customization for users who need full control over network initialization, configuration, and scaling. Explore YAML-driven deployments, manual orchestration, dynamic node management, and extensive reference documentation.

2.1 - One-shot Falcon Deployment

Deploy a complete Solo network from a single YAML file for repeatable advanced setups, CI pipelines, and custom component configuration. Falcon combines simplicity with full customization using the Solo values file format.

Overview

One-shot Falcon deployment is Solo’s YAML-driven one-shot workflow. It uses the same core deployment pipeline as solo one-shot single deploy, but lets you inject component-specific flags through a single values file.

Use One-shot Falcon deployment when you need a repeatable advanced setup, want to check a complete deployment into source control, or need to customise component flags without running every Solo command manually.

Falcon is especially useful for:

  • CI/CD pipelines and automated test environments.
  • Reproducible local developer setups.
  • Advanced deployments that need custom chart paths, image versions, ingress, storage, TLS, or node startup options.

Important: Falcon is an orchestration layer over Solo’s standard commands. It does not introduce a separate deployment model. Solo still creates a deployment, attaches clusters, deploys the network, configures nodes, and then adds optional components such as mirror node, explorer, and relay.

Prerequisites

Before proceeding, ensure you have completed the following:

  • System Readiness - your local environment meets the hardware and software requirements for Solo, Kubernetes, Docker, Kind, kubectl, and Helm.
  • Quickstart -you are already familiar with the standard one-shot deployment workflow.

How Falcon Works

When you run Falcon deployment, Solo executes the same end-to-end deployment sequence used by its one-shot workflows:

  1. Connect to the Kubernetes cluster.
  2. Create a deployment and attach the cluster reference.
  3. Set up shared cluster components.
  4. Generate gossip and TLS keys.
  5. Deploy the consensus network and, if enabled, the block node (in parallel).
  6. Set up and start consensus nodes.
  7. Optionally, deploy mirror node, explorer, and relay in parallel for faster startup.
  8. Create predefined test accounts.
  9. Write deployment notes, versions, port-forward details, and account data to a local output directory.

The difference is that Falcon reads a YAML file and maps its top-level sections to the underlying Solo subcommands.

Values file sectionSolo subcommand invoked
networksolo consensus network deploy
setupsolo consensus node setup
consensusNodesolo consensus node start
mirrorNodesolo mirror node add
explorerNodesolo explorer node add
relayNodesolo relay node add
blockNodesolo block node add (when ONE_SHOT_WITH_BLOCK_NODE=true)

For the full list of supported CLI flags per section, see the Falcon Values File Reference. If you set network.--application-properties, see Custom Application Properties for the difference between Solo’s default merge mode and full overwrite mode.

Prepare a Falcon values file

Instead of authoring a values file by hand, you can use the interactive prepare wizard to generate one:

solo one-shot falcon prepare

The wizard prompts for component toggles (mirror node, explorer, relay), consensus node count, component versions, ingress, storage type, developer options, and port forwarding. All prompts have sensible defaults, so you can press Enter to accept them.

To generate a values file with all defaults (no prompts):

solo one-shot falcon prepare --quiet-mode

To specify a custom output path:

solo one-shot falcon prepare --output-values-file ./my-values.yaml

Output file location

By default, the generated file is written to ~/.solo/cache/falcon-values.yaml — a deterministic absolute path regardless of how or where Solo is invoked. You can override this with --output-values-file. The success message always prints the fully resolved path so there is no ambiguity.

  • Default: ~/.solo/cache/falcon-values.yaml — always the same location.
  • Relative path: --output-values-file ./configs/my-values.yaml — resolved against the current working directory (so /tmp/configs/my-values.yaml if invoked from /tmp).
  • Absolute path: --output-values-file /tmp/falcon-values.yaml — written to that exact location regardless of the current working directory.

The generated file is ready to use with solo one-shot falcon deploy --values-file. For the full list of flags the wizard sets, see the Falcon Values File Reference.

Create a Falcon Values File

Create a YAML file to control every component of your Solo deployment. The file can have any name -falcon-values.yaml is used throughout this guide as a convention.

Note: Keys within each section must be the full CLI flag name including the -- prefix - for example, --release-tag, not release-tag or -r. Any section you omit from the file is skipped, and Solo uses the built-in defaults for that component.

Example: Single-Node Falcon Deployment

The following falcon-values.yaml example deploys a standard single-node network with mirror node, explorer, and relay enabled:

network:
  --release-tag: "v0.71.0"
  --pvcs: false

setup:
  --release-tag: "v0.71.0"

consensusNode:
  --force-port-forward: true

mirrorNode:
  --enable-ingress: true
  --pinger: true
  --force-port-forward: true

explorerNode:
  --enable-ingress: true
  --force-port-forward: true

relayNode:
  --node-aliases: "node1"
  --force-port-forward: true

Deploy with Falcon one-shot

Run Falcon deployment by pointing Solo at the values file:

solo one-shot falcon deploy --values-file falcon-values.yaml

Solo creates a one-shot deployment, applies the values from the YAML file to the appropriate subcommands, and then deploys the full environment.

Command-Line Flags (Not in YAML File)

The following flags are passed on the command line and cannot be set in the YAML file:

  • --deployment, --namespace, --cluster-ref, --num-consensus-nodes

Note: --values-file specifies which YAML file to load.

  • --values-file selects the YAML file to load.
  • --deployment, --namespace, --cluster-ref, and --num-consensus-nodes are top-level one-shot inputs.

Important: Do not rely on --deployment inside falcon-values.yaml. Solo intentionally ignores --deployment values from section content during Falcon argument expansion. Set the deployment name on the command line if you need a specific name.


Tip: When not specified, Falcon uses these defaults: --deployment one-shot, --namespace one-shot, --cluster-ref one-shot, and --num-consensus-nodes 1. Pass any of these explicitly on the command line to override them.

Example:

solo one-shot falcon deploy \
  --deployment falcon-demo \
  --cluster-ref one-shot \
  --values-file falcon-values.yaml

Multi-Node Falcon Deployment

For multiple consensus nodes, set the node count on the Falcon command and then provide matching per-node settings where required.

  • Example:

    solo one-shot falcon deploy \
      --deployment falcon-multi \
      --num-consensus-nodes 3 \
      --values-file falcon-values.yaml
    
  • Example multi-node values file:

    network:
      --release-tag: "v0.71.0"
      --pvcs: true
    
    setup:
      --release-tag: "v0.71.0"
    
    consensusNode:
      --force-port-forward: true
      --stake-amounts: "100,100,100"
    
    mirrorNode:
      --enable-ingress: true
      --pinger: true
    
    explorerNode:
      --enable-ingress: true
    
    relayNode:
      --node-aliases: "node1,node2,node3"
    
  • The --node-aliases value in the relayNode section must match the node aliases generated by --num-consensus-nodes. Nodes are auto-named node1, node2, node3, and so on. Setting this to only node1 is valid if you want the relay to serve a single node, but specifying all aliases is typical for full coverage.

  • Use this pattern when you need a repeatable multi-node deployment but do not want to manage each step manually.

Note: Multi-node deployments require more host resources than single-node deployments. Follow the resource guidance in System Readiness, and increase Docker memory and CPU allocation before deploying.

Common Falcon Customisations

Because each YAML section maps directly to the corresponding Solo subcommand, you can use Falcon to centralise advanced options such as:

  • Custom release tags for the consensus node platform.
  • Local chart directories for mirror node, relay, explorer, or block node.
  • Local consensus node build paths for development workflows.
  • Ingress and domain settings.
  • Mirror node external database settings.
  • Node startup settings such as state files, port forwarding, and stake amounts.
  • Storage backends and credentials for stream file handling.

Example: Local Development with Local Chart Directories

setup:
  --local-build-path: "/path/to/hiero-consensus-node/hedera-node/data"

mirrorNode:
  --mirror-node-chart-dir: "/path/to/hiero-mirror-node/charts"

relayNode:
  --relay-chart-dir: "/path/to/hiero-json-rpc-relay/charts"

explorerNode:
  --explorer-chart-dir: "/path/to/hiero-mirror-node-explorer/charts"

This pattern is useful for local integration testing against unpublished component builds. For a step-by-step walkthrough of the local build workflow, see Deploying a Local Consensus Node Build.

Falcon with Block Node

Falcon can also include block node configuration.

Note: Block node workflows are advanced and require higher resource allocation and version compatibility across consensus node, block node, and related components. Docker memory must be set to at least 16 GB before deploying with block node enabled.

Block node support also requires the ONE_SHOT_WITH_BLOCK_NODE=true environment variable to be set before running falcon deploy. Without it, Solo skips the block node add step even if a blockNode section is present in the values file.

Block node deployment is subject to version compatibility requirements. Minimum versions are consensus node ≥ v0.72.0 and block node ≥ 0.29.0. Mixing incompatible versions will cause the deployment to fail. Check the Version Compatibility Reference before enabling block node.

Example:

network:
  --release-tag: "v0.72.0"

setup:
  --release-tag: "v0.72.0"

consensusNode:
  --force-port-forward: true

blockNode:
  --release-tag: "v0.29.0"
  --enable-ingress: false

mirrorNode:
  --enable-ingress: true
  --pinger: true

explorerNode:
  --enable-ingress: true

relayNode:
  --node-aliases: "node1"
  --force-port-forward: true

Use block node settings only when your target Solo and component versions are known to be compatible.

Deployment Output

After a successful Falcon deployment, Solo writes deployment metadata to ~/.solo/one-shot-<deployment>/ where <deployment> is the value of the --deployment flag (default: one-shot).

This directory typically contains:

  • notes - human-readable deployment summary
  • versions - component versions recorded at deploy time
  • forwards - port-forward configuration
  • accounts.json - predefined test account keys and IDs. All accounts are ECDSA Alias accounts (EVM-compatible) and include a publicAddress field. The file also includes the system operator account.

This makes Falcon especially useful for automation, because the deployment artifacts are written to a predictable path after each run.

To inspect deployment output, check the ~/.solo/one-shot-<deployment>/ directory directly.

If port-forwards are interrupted after deployment, restore them by rerunning the component commands (such as solo consensus node start, solo mirror node add, etc.)

Destroy a Falcon Deployment

  • Destroy the Falcon deployment with:

    solo one-shot falcon destroy
    
  • Solo removes deployed extensions first, then destroys the mirror node, network, cluster references, and local deployment metadata.

  • If multiple deployments exist locally, Solo prompts you to choose which one to destroy unless you pass --deployment explicitly.

    solo one-shot falcon destroy --deployment falcon-demo
    

When to Use Falcon vs. Manual Deployment

Use Falcon deployment when you want a single, repeatable command backed by a versioned YAML file.

Use Step-by-Step Manual Deployment when you need to pause between steps, inspect intermediate state, or debug a specific deployment phase in isolation.

In practice:

  • Falcon is better for automation and repeatability.
  • Manual deployment is better for debugging and low-level control.

Reference

Tip: If you are creating a values file for the first time, start from the annotated template in the Solo repository rather than writing one from scratch:

examples/one-shot-falcon/falcon-values.yaml

This file includes all supported sections and flags with inline comments explaining each option. Copy it, remove what you do not need, and adjust the values for your environment.

2.2 - Falcon Values File Reference

Comprehensive reference for all supported CLI flags per section of a Falcon values file, including defaults, types, and descriptions. Use this as your source of truth when customizing Falcon deployments.

Overview

This page catalogs the Solo CLI flags accepted under each top-level section of a Falcon values file. Each entry corresponds to the command-line flag that the underlying Solo subcommand accepts.

Sections map to subcommands as follows:

SectionSolo subcommand
networksolo consensus network deploy
setupsolo consensus node setup
consensusNodesolo consensus node start
mirrorNodesolo mirror node add
explorerNodesolo explorer node add
relayNodesolo relay node add
blockNodesolo block node add

All flag names must be written in long form with double dashes (for example, --release-tag). Flags left empty ("") or matching their default value are ignored by Solo at argument expansion time.

Note: Not every flag listed here is relevant to every deployment. Use this page as a lookup when writing or debugging a values file. For a working example file, see the upstream reference at https://github.com/hiero-ledger/solo/tree/main/examples/one-shot-falcon.


Consensus Network Deploy — network

Flags passed to solo consensus network deploy.

FlagTypeDefaultDescription
--release-tagstringcurrent Hedera platform versionConsensus node release tag (e.g. v0.71.0).
--pvcsbooleanfalseEnable Persistent Volume Claims for consensus node storage. Required for node add operations.
--load-balancerbooleanfalseEnable load balancer for network node proxies.
--chart-dirstringPath to a local Helm chart directory for the Solo network chart.
--solo-chart-versionstringcurrent chart versionSpecific Solo testing chart version to deploy.
--haproxy-ipsstringStatic IP mapping for HAProxy pods (e.g. node1=127.0.0.1,node2=127.0.0.2).
--envoy-ipsstringStatic IP mapping for Envoy proxy pods.
--debug-node-aliasstringEnable the default JVM debug port (5005) for the specified node alias.
--domain-namesstringCustom domain name mapping per node alias (e.g. node1=node1.example.com).
--grpc-tls-certstringTLS certificate path for gRPC, per node alias (e.g. node1=/path/to/cert).
--grpc-web-tls-certstringTLS certificate path for gRPC Web, per node alias.
--grpc-tls-keystringTLS certificate key path for gRPC, per node alias.
--grpc-web-tls-keystringTLS certificate key path for gRPC Web, per node alias.
--storage-typestringminio_onlyStream file storage backend. Options: minio_only, aws_only, gcs_only, aws_and_gcs.
--gcs-write-access-keystringGCS write access key.
--gcs-write-secretsstringGCS write secret key.
--gcs-endpointstringGCS storage endpoint URL.
--gcs-bucketstringGCS bucket name.
--gcs-bucket-prefixstringGCS bucket path prefix.
--aws-write-access-keystringAWS write access key.
--aws-write-secretsstringAWS write secret key.
--aws-endpointstringAWS storage endpoint URL.
--aws-bucketstringAWS bucket name.
--aws-bucket-regionstringAWS bucket region.
--aws-bucket-prefixstringAWS bucket path prefix.
--settings-txtstringtemplatePath to a custom settings.txt file for consensus nodes.
--application-propertiesstringtemplatePath to a custom application.properties file. Defaults to key-level merge mode; add # SOLO_ENABLE_OVERWRITE=true to the file for overwrite mode. See Custom Application Properties.
--application-envstringtemplatePath to a custom application.env file.
--api-permission-propertiesstringtemplatePath to a custom api-permission.properties file.
--bootstrap-propertiesstringtemplatePath to a custom bootstrap.properties file.
--log4j2-xmlstringtemplatePath to a custom log4j2.xml file.
--genesis-throttles-filestringPath to a custom throttles.json file for network genesis.
--service-monitorbooleanfalseInstall a ServiceMonitor custom resource for Prometheus metrics.
--pod-logbooleanfalseInstall a PodLog custom resource for node pod log monitoring.
--quiet-modebooleanfalseSuppress confirmation prompts.
--values-filestringComma-separated Helm chart values file paths (not the Falcon values file).

Consensus Node Setup — setup

Flags passed to solo consensus node setup.

FlagTypeDefaultDescription
--release-tagstringcurrent Hedera platform versionConsensus node release tag. Must match network.--release-tag.
--local-build-pathstringPath to a local Hiero consensus node build (e.g. ~/hiero-consensus-node/hedera-node/data). Used for local development workflows.
--appstringHederaNode.jarName of the consensus node application binary.
--app-configstringPath to a JSON configuration file for the testing app.
--admin-public-keysstringComma-separated DER-encoded ED25519 public keys in node alias order.
--domain-namesstringCustom domain name mapping per node alias.
--devbooleanfalseEnable developer mode.
--quiet-modebooleanfalseSuppress confirmation prompts.
--cache-dirstring~/.solo/cacheLocal cache directory for downloaded artifacts.

Consensus Node Start — consensusNode

Flags passed to solo consensus node start.

FlagTypeDefaultDescription
--force-port-forwardbooleantrueForce port forwarding to access network services locally.
--stake-amountsstringComma-separated stake amounts in node alias order (e.g. 100,100,100). Required for multi-node deployments that need non-default stakes.
--state-filestringPath to a zipped state file to restore the network from.
--debug-node-aliasstringEnable JVM debug port (5005) for the specified node alias.
--appstringHederaNode.jarName of the consensus node application binary.
--quiet-modebooleanfalseSuppress confirmation prompts.

Mirror Node Add — mirrorNode

Flags passed to solo mirror node add.

FlagTypeDefaultDescription
--mirror-node-versionstringcurrent versionMirror node Helm chart version to deploy.
--enable-ingressbooleanfalseDeploy an ingress controller for the mirror node.
--force-port-forwardbooleantrueEnable port forwarding for mirror node services.
--pingerbooleanfalseEnable the mirror node Pinger service.
--mirror-static-ipstringStatic IP address for the mirror node load balancer.
--domain-namestringCustom domain name for the mirror node.
--ingress-controller-value-filestringPath to a Helm values file for the ingress controller.
--mirror-node-chart-dirstringPath to a local mirror node Helm chart directory.
--use-external-databasebooleanfalseConnect to an external PostgreSQL database instead of the chart-bundled one.
--external-database-hoststringHostname of the external database. Requires --use-external-database.
--external-database-owner-usernamestringOwner username for the external database.
--external-database-owner-passwordstringOwner password for the external database.
--external-database-read-usernamestringRead-only username for the external database.
--external-database-read-passwordstringRead-only password for the external database.
--storage-typestringminio_onlyStream file storage backend for the mirror node importer.
--storage-read-access-keystringStorage read access key for the mirror node importer.
--storage-read-secretsstringStorage read secret key for the mirror node importer.
--storage-endpointstringStorage endpoint URL for the mirror node importer.
--storage-bucketstringStorage bucket name for the mirror node importer.
--storage-bucket-prefixstringStorage bucket path prefix.
--storage-bucket-regionstringStorage bucket region.
--operator-idstringOperator account ID for the mirror node.
--operator-keystringOperator private key for the mirror node.
--quiet-modebooleanfalseSuppress confirmation prompts.
--values-filestringComma-separated Helm chart values file paths for the mirror node chart.

Explorer Add — explorerNode

Flags passed to solo explorer node add.

FlagTypeDefaultDescription
--explorer-versionstringcurrent versionHiero Explorer Helm chart version to deploy.
--enable-ingressbooleanfalseDeploy an ingress controller for the explorer.
--force-port-forwardbooleantrueEnable port forwarding for the explorer service.
--domain-namestringCustom domain name for the explorer.
--ingress-controller-value-filestringPath to a Helm values file for the ingress controller.
--explorer-chart-dirstringPath to a local Hiero Explorer Helm chart directory.
--explorer-static-ipstringStatic IP address for the explorer load balancer.
--enable-explorer-tlsbooleanfalseEnable TLS for the explorer. Requires cert-manager.
--explorer-tls-host-namestringexplorer.solo.localHostname used for the explorer TLS certificate.
--tls-cluster-issuer-typestringself-signedTLS cluster issuer type. Options: self-signed, acme-staging, acme-prod.
--mirror-node-idnumberID of the mirror node instance to connect the explorer to.
--mirror-namespacestringKubernetes namespace of the mirror node.
--solo-chart-versionstringcurrent versionSolo chart version used for explorer cluster setup.
--quiet-modebooleanfalseSuppress confirmation prompts.
--values-filestringComma-separated Helm chart values file paths for the explorer chart.

JSON-RPC Relay Add — relayNode

Flags passed to solo relay node add.

FlagTypeDefaultDescription
--relay-releasestringcurrent versionHiero JSON-RPC Relay Helm chart release to deploy.
--node-aliasesstringComma-separated node aliases the relay will observe (e.g. node1 or node1,node2).
--replica-countnumber1Number of relay replicas to deploy.
--chain-idstring298EVM chain ID exposed by the relay (Hedera testnet default).
--force-port-forwardbooleantrueEnable port forwarding for the relay service.
--domain-namestringCustom domain name for the relay.
--relay-chart-dirstringPath to a local Hiero JSON-RPC Relay Helm chart directory.
--operator-idstringOperator account ID for relay transaction signing.
--operator-keystringOperator private key for relay transaction signing.
--mirror-node-idnumberID of the mirror node instance the relay will query.
--mirror-namespacestringKubernetes namespace of the mirror node.
--quiet-modebooleanfalseSuppress confirmation prompts.
--values-filestringComma-separated Helm chart values file paths for the relay chart.

Block Node Add — blockNode

Flags passed to solo block node add.

Important: The blockNode section is only read when ONE_SHOT_WITH_BLOCK_NODE=true is set in the environment. Otherwise Solo skips the block node add step regardless of whether a blockNode section is present. Version requirements: Consensus node ≥ v0.72.0 and block node ≥ 0.29.0. Use --force to bypass version gating during testing.

FlagTypeDefaultDescription
--release-tagstringcurrent versionHiero block node release tag.
--image-tagstringDocker image tag to override the Helm chart default.
--enable-ingressbooleanfalseDeploy an ingress controller for the block node.
--domain-namestringCustom domain name for the block node.
--devbooleanfalseEnable developer mode for the block node.
--block-node-chart-dirstringPath to a local Hiero block node Helm chart directory.
--quiet-modebooleanfalseSuppress confirmation prompts.
--values-filestringComma-separated Helm chart values file paths for the block node chart.

Top-Level Falcon Command Flags

The following flags are passed directly on the solo one-shot falcon deploy command line. They are not read from the values file sections.

FlagTypeDefaultDescription
--values-filestringPath to the Falcon values YAML file.
--deploymentstringone-shotDeployment name for Solo’s internal state.
--namespacestringone-shotKubernetes namespace to deploy into.
--cluster-refstringone-shotCluster reference name.
--num-consensus-nodesnumber1Number of consensus nodes to deploy.
--parallel-deploybooleantrueRun independent deploy stages in parallel (consensus+block, mirror+accounts, explorer+relay). Use --no-parallel-deploy for sequential execution.
--quiet-modebooleanfalseSuppress all interactive prompts.
--forcebooleanfalseForce actions that would otherwise be skipped.

Falcon Prepare — prepare

Flags accepted by solo one-shot falcon prepare, the interactive wizard that generates a Falcon values file. The wizard prompts for nearly every values-file field, but the following CLI flags control its output behavior directly.

FlagTypeDefaultDescription
--output-values-filestring~/.solo/cache/falcon-values.yamlPath to the generated values file. Absolute paths are written as-is. Relative paths are resolved against the current working directory.
--quiet-modebooleanfalseGenerate a values file using all defaults without prompting.

All other prepare-time flags correspond directly to the per-section values shown in the tables above and are documented under their respective network, setup, consensusNode, mirrorNode, explorerNode, relayNode, and blockNode sections.

2.3 - Step-by-Step Manual Deployment

Deploy each Solo network component individually for maximum control over configuration and debugging. Execute each step manually through the Solo CLI and integrate Solo into bespoke automation pipelines.

Overview

Manual deployment lets you deploy each Solo network component individually, giving you full control over configuration, sequencing, and troubleshooting. Use this approach when you need to customise specific steps, debug a component in isolation, or integrate Solo into a bespoke automation pipeline.


Prerequisites

Before proceeding, ensure you have completed the following:

  • System Readiness — your local environment meets all hardware and software requirements (Docker, kind, kubectl, helm, Solo).
  • Quickstart — you have a running Kind cluster.
  • Set your environment variables if you have not already done so:
export SOLO_CLUSTER_NAME=solo
export SOLO_NAMESPACE=solo-deployment
export SOLO_CLUSTER_SETUP_NAMESPACE=solo-cluster
export SOLO_DEPLOYMENT=solo-deployment
$env:SOLO_CLUSTER_NAME = 'solo'
$env:SOLO_NAMESPACE = 'solo-deployment'
$env:SOLO_CLUSTER_SETUP_NAMESPACE = 'solo-cluster'
$env:SOLO_DEPLOYMENT = 'solo-deployment'

Deployment Steps

Note: The expected output blocks below are fetched from the latest published Solo release at build time and will always reflect the current version.

1. Connect Cluster and Create Deployment

  • Connect Solo to the Kind cluster and create a new deployment configuration:

    # Connect to the Kind cluster
    solo cluster-ref config connect \
      --cluster-ref kind-${SOLO_CLUSTER_NAME} \
      --context kind-${SOLO_CLUSTER_NAME}
    
    # Create a new deployment
    solo deployment config create \
      -n "${SOLO_NAMESPACE}" \
      --deployment "${SOLO_DEPLOYMENT}"
    
  • Expected Output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: cluster-ref config connect --cluster-ref kind-solo --context kind-solo
      **********************************************************************************
      ❯ Initialize
      ✔ Initialize 
      ❯ Validating cluster ref: 
      ✔ Validating cluster ref: kind-solo 
      ❯ Test connection to cluster: 
      ✔ Test connection to cluster: kind-solo 
      ❯ Associate a context with a cluster reference: 
      ✔ Associate a context with a cluster reference: kind-solo 
  • ******************************* Solo *********************************************
    Version			: 0.80.0
    Kubernetes Context	: kind-solo
    Kubernetes Cluster	: kind-solo
    Current Command		: deployment config create --namespace solo --deployment solo-deployment --realm 0 --shard 0
    Kubernetes Namespace	: solo
    **********************************************************************************
    ❯ Initialize
    ✔ Initialize 
    ❯ Add deployment to local config
    ✔ Adding deployment: solo-deployment with namespace: solo to local config 

2. Add Cluster to Deployment

  • Attach the cluster to your deployment and specify the number of consensus nodes:

    1. Single node:

    solo deployment cluster attach \
      --deployment "${SOLO_DEPLOYMENT}" \
      --cluster-ref kind-${SOLO_CLUSTER_NAME} \
      --num-consensus-nodes 1
    

    2. Multiple nodes (e.g., –num-consensus-nodes 3):

    solo deployment cluster attach \
      --deployment "${SOLO_DEPLOYMENT}" \
      --cluster-ref kind-${SOLO_CLUSTER_NAME} \
      --num-consensus-nodes 3
    
  • Expected Output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: deployment cluster attach --deployment solo-deployment --cluster-ref kind-solo --num-consensus-nodes 1
      **********************************************************************************
      ❯ Pre-flight: check Docker Desktop containerd setting
      ✔ Pre-flight: check Docker Desktop containerd setting 
      ❯ Check dependencies
      ❯ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ✔ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependencies 
      ❯ Setup chart manager
      ✔ Setup chart manager [0.7s]
      ❯ Initialize
      ✔ Initialize 
      ❯ Verify args
      ✔ Verify args 
      ❯ check ledger phase
      ✔ check ledger phase 
      ❯ Test cluster reference connection
      ✔ Test cluster reference connection: kind-solo, context: kind-solo 
      ❯ Verify prerequisites
      ✔ Verify prerequisites 
      ❯ Check for other deployments
      ✔ Check for other deployments 
      ❯ add cluster-ref in local config deployments
      Adding cluster-ref: kind-solo for deployment: solo-deployment in local config
      ✔ add cluster-ref: kind-solo for deployment: solo-deployment in local config 
      ❯ create remote config for deployment
      ✔ create remote config for deployment: solo-deployment in cluster reference: kind-solo 

3. Generate Keys

  • Generate the gossip and TLS keys for your consensus nodes:

    solo keys consensus generate \
      --gossip-keys \
      --tls-keys \
      --deployment "${SOLO_DEPLOYMENT}"
    

    PEM key files are written to ~/.solo/cache/keys/.

  • Expected output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: keys consensus generate --gossip-keys --tls-keys --deployment solo-deployment
      **********************************************************************************
      ❯ Initialize
      ✔ Initialize 
      ❯ Generate gossip keys
      ❯ Backup old files
      ✔ Backup old files 
      ❯ Gossip key for node: node1
      ✔ Gossip key for node: node1 [0.2s]
      ✔ Generate gossip keys [0.2s]
      ❯ Generate gRPC TLS Keys
      ❯ Backup old files
      ❯ TLS key for node: node1
      ✔ Backup old files 
      ✔ TLS key for node: node1 [0.2s]
      ✔ Generate gRPC TLS Keys [0.2s]
      ❯ Finalize
      ✔ Finalize 

4. Set Up Cluster with Shared Components

  • Install shared cluster-level components (MinIO Operator, Prometheus CRDs, etc.) into the cluster setup namespace:

    solo cluster-ref config setup --cluster-setup-namespace "${SOLO_CLUSTER_SETUP_NAMESPACE}"
    
  • Expected output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: cluster-ref config setup --cluster-setup-namespace solo-cluster
      **********************************************************************************
      ❯ Pre-flight: check Docker Desktop containerd setting
      ✔ Pre-flight: check Docker Desktop containerd setting 
      ❯ Check dependencies
      ❯ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ✔ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64] [0.1s]
      ✔ Check dependencies [0.1s]
      ❯ Setup chart manager
      ✔ Setup chart manager [0.7s]
      ❯ Initialize
      ✔ Initialize 
      ❯ Install cluster charts
      ❯ Install pod-monitor-role ClusterRole
      ✅ ClusterRole pod-monitor-role installed successfully in context kind-solo
      ✔ Install pod-monitor-role ClusterRole 
      ❯ Install MinIO Operator chart
      ✅ MinIO Operator chart installed successfully on context kind-solo
      ✔ Install MinIO Operator chart [0.7s]
      ✔ Install cluster charts [0.7s]

5. Deploy the Network

  • Deploy the Solo network Helm chart, which provisions the consensus node pods, HAProxy, Envoy, and MinIO:

    solo consensus network deploy --deployment "${SOLO_DEPLOYMENT}"
    

    To provide a custom consensus node application.properties file, pass --application-properties <path>. Solo merges custom files with its generated defaults unless the file includes the overwrite marker. See Custom Application Properties for merge and overwrite examples.

  • Expected output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: consensus network deploy --deployment solo-deployment --consensus-node-version v0.74.0
      **********************************************************************************
      ❯ Pre-flight: check Docker Desktop containerd setting
      ✔ Pre-flight: check Docker Desktop containerd setting 
      ❯ Check dependencies
      ❯ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ✔ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64] [0.1s]
      ✔ Check dependencies [0.1s]
      ❯ Setup chart manager
      ✔ Setup chart manager [0.6s]
      ❯ Initialize
      ❯ Acquire lock
      ✔ Acquire lock - lock acquired successfully, attempt: 1/10 
      ✔ Initialize [0.2s]
      ❯ Copy gRPC TLS Certificates
      ↓ Copy gRPC TLS Certificates [SKIPPED: Copy gRPC TLS Certificates]
      ❯ Prepare staging directory
      ❯ Copy Gossip keys to staging
      ✔ Copy Gossip keys to staging 
      ❯ Copy gRPC TLS keys to staging
      ✔ Copy gRPC TLS keys to staging 
      ✔ Prepare staging directory 
      ❯ Copy node keys to secrets
      ❯ Copy TLS keys
      ❯ Node: node1, cluster: kind-solo
      ❯ Copy Gossip keys
      ✔ Copy TLS keys 
      ✔ Copy Gossip keys 
      ✔ Node: node1, cluster: kind-solo 
      ✔ Copy node keys to secrets 
      ❯ Install monitoring CRDs
      ❯ Pod Logs CRDs
      ❯ Prometheus Operator CRDs
      ✔ Pod Logs CRDs 
       - Installed prometheus-operator-crds chart, version: 24.0.2
      ✔ Prometheus Operator CRDs [4s]
      ✔ Install monitoring CRDs [4s]
      ❯ Install chart 'solo-deployment'
       - Installed solo-deployment chart, version: 0.64.0
      ✔ Install chart 'solo-deployment' [2s]
      ❯ Patch ServiceMonitor for Prometheus discovery
      ✔ Patch ServiceMonitor for Prometheus discovery 
      ❯ Check for load balancer
      ↓ Check for load balancer [SKIPPED: Check for load balancer]
      ❯ Redeploy chart with external IP address config
      ↓ Redeploy chart with external IP address config [SKIPPED: Redeploy chart with external IP address config]
      ❯ Check node pods are running
      ❯ Check Node: node1, Cluster: kind-solo
      ✔ Check Node: node1, Cluster: kind-solo [22s]
      ✔ Check node pods are running [22s]
      ❯ Check proxy pods are running
      ❯ Check HAProxy for: node1, cluster: kind-solo
      ❯ Check Envoy Proxy for: node1, cluster: kind-solo
      ✔ Check HAProxy for: node1, cluster: kind-solo 
      ✔ Check Envoy Proxy for: node1, cluster: kind-solo 
      ✔ Check proxy pods are running 
      ❯ Check auxiliary pods are ready
      ❯ Check MinIO
      ↓ Check MinIO [SKIPPED: Check MinIO]
      ✔ Check auxiliary pods are ready 
      ❯ Add node and proxies to remote config
      ✔ Add node and proxies to remote config 
      ❯ Copy wraps lib into consensus node
      ↓ Copy wraps lib into consensus node [SKIPPED: Copy wraps lib into consensus node]
      ❯ Copy block-nodes.json
      ✔ Copy block-nodes.json [0.7s]
      ❯ Copy JFR config file to nodes
      ↓ Copy JFR config file to nodes [SKIPPED: Copy JFR config file to nodes]

6. Set Up Consensus Nodes

  • Download the consensus node platform software and configure each node:

    export CONSENSUS_NODE_VERSION=v0.66.0
    
    solo consensus node setup \
      --deployment "${SOLO_DEPLOYMENT}" \
      --release-tag "${CONSENSUS_NODE_VERSION}"
    

    On native Windows (PowerShell), set the version with $env:CONSENSUS_NODE_VERSION = 'v0.66.0' and reference variables as $env:SOLO_DEPLOYMENT / $env:CONSENSUS_NODE_VERSION.

  • Example output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: consensus node setup --deployment solo-deployment --consensus-node-version v0.74.0
      **********************************************************************************
      ❯ Load configuration
      ✔ Load configuration [0.2s]
      ❯ Initialize
      ✔ Initialize [0.2s]
      ❯ Validate nodes states
      ❯ Validating state for node node1
      ✔ Validating state for node node1 - valid state: requested 
      ✔ Validate nodes states 
      ❯ Identify network pods
      ❯ Check network pod: node1
      ✔ Check network pod: node1 
      ✔ Identify network pods 
      ❯ Fetch platform software into network nodes
      ❯ Update node: node1 [ platformVersion = v0.74.0, context = kind-solo ]
      ✔ Update node: node1 [ platformVersion = v0.74.0, context = kind-solo ] [2s]
      ✔ Fetch platform software into network nodes [4s]
      ❯ Setup network nodes
      ❯ Node: node1
      ❯ Copy configuration files
      ✔ Copy configuration files [0.5s]
      ❯ Set file permissions
      ✔ Set file permissions [0.4s]
      ✔ Node: node1 [1s]
      ✔ Setup network nodes [1s]
      ❯ Update block-nodes.json
      ✔ Update block-nodes.json [0.7s]
      ❯ setup network node folders
      ✔ setup network node folders [0.1s]
      ❯ Change node state to configured in remote config
      ✔ Change node state to configured in remote config 

7. Start Consensus Nodes

  • Start all configured nodes and wait for them to reach ACTIVE status:

    solo consensus node start --deployment "${SOLO_DEPLOYMENT}"
    
  • Expected output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: consensus node start --deployment solo-deployment
      **********************************************************************************
      ❯ Pre-flight: check Docker Desktop containerd setting
      ✔ Pre-flight: check Docker Desktop containerd setting 
      ❯ Check dependencies
      ❯ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ✔ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependencies 
      ❯ Setup chart manager
      ✔ Setup chart manager [0.7s]
      ❯ Load configuration
      ✔ Load configuration [0.3s]
      ❯ Initialize
      ✔ Initialize 
      ❯ Validate nodes states
      ❯ Validating state for node node1
      ✔ Validating state for node node1 - valid state: configured 
      ✔ Validate nodes states 
      ❯ Identify existing network nodes
      ❯ Check network pod: node1
      ✔ Check network pod: node1 
      ✔ Identify existing network nodes 
      ❯ Upload state files network nodes
      ↓ Upload state files network nodes [SKIPPED: Upload state files network nodes]
      ❯ Starting nodes
      ❯ Start node: node1
      ✔ Start node: node1 [1s]
      ✔ Starting nodes [1s]
      ❯ Enable port forwarding for debug port and/or GRPC port
      Using requested port 35211
      ✔ Enable port forwarding for debug port and/or GRPC port 
      ❯ Check nodes are ACTIVE and proxies are ready
      ❯ Check all nodes are ACTIVE
      ❯ Check node proxies are ACTIVE
      ❯ Check proxy for node: node1
      ❯ Check network pod: node1 
      ✔ Check proxy for node: node1 
      ✔ Check node proxies are ACTIVE 
      Using requested port 30212
      Stopping port-forward for port [30212]
      Using requested port 30212
      Stopping port-forward for port [30212]
      Using requested port 30212
      ✔ Check network pod: node1  - gRPC readiness 3/3, attempt: 2/20 [40s]
      ✔ Check all nodes are ACTIVE [40s]
      ✔ Check nodes are ACTIVE and proxies are ready [40s]
      ❯ Wait for TSS
      ❯ Waiting for node: node1
      ✔ Waiting for node: node1, attempt 1/60 [10s]
      ✔ Wait for TSS [10s]
      set gRPC Web endpoint
      Stopping port-forward for port [30212]
      Using requested port 30212
      set gRPC Web endpoint [4s]
      ❯ Change node state to started in remote config
      ✔ Change node state to started in remote config 
      ❯ Add node stakes
      ❯ Adding stake for node: node1
      ✔ Adding stake for node: node1 [2s]
      ✔ Add node stakes [2s]
      ❯ Emit node started event
      ✔ Emit node started event 
      Stopping port-forward for port [30212]

8. Deploy Mirror Node

  • Deploy the Hedera Mirror Node, which indexes all transaction data and exposes a REST API and gRPC endpoint:

    solo mirror node add \
      --deployment "${SOLO_DEPLOYMENT}" \
      --cluster-ref kind-${SOLO_CLUSTER_NAME} \
      --enable-ingress \
      --pinger
    

    The --pinger flag keeps the mirror node’s importer active by regularly submitting record files. The --enable-ingress flag installs the HAProxy ingress controller for the mirror node REST API.

  • Expected output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: mirror node add --deployment solo-deployment --cluster-ref kind-solo --enable-ingress --quiet-mode
      **********************************************************************************
      ❯ Pre-flight: check Docker Desktop containerd setting
      ✔ Pre-flight: check Docker Desktop containerd setting 
      ❯ Check dependencies
      ❯ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ✔ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependencies 
      ❯ Setup chart manager
      ✔ Setup chart manager [0.7s]
      ❯ Initialize
      ❯ Acquire lock
      ✔ Acquire lock - lock acquired successfully, attempt: 1/10 
      ✔ Initialize [0.4s]
      ❯ Add mirror node to remote config
      ✔ Add mirror node to remote config 
      ❯ load node client
      Using requested port 30212
      ✔ load node client [1s]
      ❯ Deploy charts
      ❯ Enable shared resources
      ❯ Install Shared Resources chart
      ✔ Install Shared Resources chart [3s]
      ❯ Load redis credentials
      ✔ Load redis credentials 
      ❯ Initialize Postgres pod
      ❯ Wait for Postgres pod to be ready
      ✔ Wait for Postgres pod to be ready [11s]
      ✔ Initialize Postgres pod [11s]
      ❯ Add shared resource components to remote config
      ✔ Add shared resource components to remote config 
      ✔ Enable shared resources [14s]
      ❯ Prime mirror-node postgres secret
      ✔ Prime mirror-node postgres secret [0.7s]
      ❯ Delete stale mirror redis secret
      ✔ Delete stale mirror redis secret 
      ❯ Run database initialization script
      ✔ Run database initialization script [1s]
      ❯ Enable mirror-node
      ❯ Prepare address book
      ✔ Prepare address book 
      ❯ Install mirror ingress controller
       - Installed haproxy-ingress-1 chart, version: 0.14.5
      ✔ Install mirror ingress controller [0.7s]
      ❯ Deploy mirror-node
       - Installed mirror chart, version: v0.157.0
      ✔ Deploy mirror-node [2s]
      ✔ Enable mirror-node [3s]
      ✔ Deploy charts [20s]
      ❯ Check pods are ready
      ❯ Check Grpc
      ❯ Check Importer
      ❯ Check Rest
      ❯ Check Rest Java
      ❯ Check Web3
      ✔ Check Rest Java [10s]
      ✔ Check Web3 [14s]
      ✔ Check Grpc [18s]
      ✔ Check Importer [18s]
      ✔ Check Rest [20s]
      ✔ Check pods are ready [20s]
      ❯ Enable port forwarding for mirror ingress controller
      Using requested port 38081
      ✔ Enable port forwarding for mirror ingress controller 
      ❯ Show user messages
      
       *** Port forwarding enabled: ***
      -------------------------------------------------------------------------------
       - Mirror ingress controller port forward enabled on 127.0.0.1:38081
      -------------------------------------------------------------------------------
      ✔ Show user messages 
      Stopping port-forward for port [30212]

9. Deploy Explorer

  • Deploy the Hiero Explorer, a web UI for browsing transactions and accounts:

    solo explorer node add \
      --deployment "${SOLO_DEPLOYMENT}" \
      --cluster-ref kind-${SOLO_CLUSTER_NAME}
    
  • Expected output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: explorer node add --deployment solo-deployment --cluster-ref kind-solo --quiet-mode
      **********************************************************************************
      ❯ Pre-flight: check Docker Desktop containerd setting
      ✔ Pre-flight: check Docker Desktop containerd setting 
      ❯ Check dependencies
      ❯ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ✔ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependencies 
      ❯ Setup chart manager
      ✔ Setup chart manager [0.7s]
      ❯ Initialize
      ❯ Acquire lock
      ✔ Acquire lock - lock acquired successfully, attempt: 1/10 
      ✔ Initialize [0.4s]
      ❯ Load remote config
      ✔ Load remote config [0.1s]
      ❯ Add explorer to remote config
      ✔ Add explorer to remote config 
      ❯ Install cert manager
      ↓ Install cert manager [SKIPPED: Install cert manager]
      ❯ Install explorer
       - Installed hiero-explorer-1 chart, version: 26.1.0
      ✔ Install explorer [0.7s]
      ❯ Install explorer ingress controller
      ↓ Install explorer ingress controller [SKIPPED: Install explorer ingress controller]
      ❯ Check explorer pod is ready
      ✔ Check explorer pod is ready [4s]
      ❯ Check haproxy ingress controller pod is ready
      ↓ Check haproxy ingress controller pod is ready [SKIPPED: Check haproxy ingress controller pod is ready]
      ❯ Enable port forwarding for explorer
      No port forward config found for Explorer
      Using requested port 38080
      ✔ Enable port forwarding for explorer 
      ❯ Show user messages
      
       *** Port forwarding enabled: ***
      -------------------------------------------------------------------------------
       - Explorer port forward enabled on 127.0.0.1:38080
      -------------------------------------------------------------------------------
      ✔ Show user messages 

10. Deploy JSON-RPC Relay

  • Deploy the Hiero JSON-RPC Relay to expose an Ethereum-compatible JSON-RPC endpoint for EVM tooling (MetaMask, Hardhat, Foundry, etc.):

    solo relay node add \
      -i node1 \
      --deployment "${SOLO_DEPLOYMENT}"
    

TODO: double check these, and update in solo repo if needed to match, also double check the exported variables match

  • Expected output:

    ******************************* Solo *********************************************
      Version			: 0.80.0
      Kubernetes Context	: kind-solo
      Kubernetes Cluster	: kind-solo
      Current Command		: relay node add --node-aliases node1 --deployment solo-deployment --cluster-ref kind-solo --relay-version 0.77.0
      **********************************************************************************
      ❯ Pre-flight: check Docker Desktop containerd setting
      ✔ Pre-flight: check Docker Desktop containerd setting 
      ❯ Check dependencies
      ❯ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ❯ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64]
      ✔ Check dependency: kind [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: helm [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependency: kubectl [OS: linux, Release: 6.8.0-117-generic, Arch: x64] 
      ✔ Check dependencies 
      ❯ Setup chart manager
      ✔ Setup chart manager [0.8s]
      ❯ Initialize
      ❯ Acquire lock
      ✔ Acquire lock - lock acquired successfully, attempt: 1/10 
      ✔ Initialize [0.4s]
      ❯ Add relay component in remote config
      ✔ Add relay component in remote config 
      ❯ Check chart is installed
      ✔ Check chart is installed [0.1s]
      ❯ Prepare chart values
      ✔ Prepare chart values 
      ❯ Deploy JSON RPC Relay
       - Installed relay-1 chart, version: 0.77.0
      ✔ Deploy JSON RPC Relay [0.6s]
      ❯ Check relay is running
      ✔ Check relay is running [4s]
      ❯ Check relay is ready
      ✔ Check relay is ready [3s]
      ❯ Enable port forwarding for relay node
      No port forward config found for JSON RPC Relay
      Using requested port 37546
      ✔ Enable port forwarding for relay node 
      ❯ Show user messages
      
       *** Port forwarding enabled: ***
      -------------------------------------------------------------------------------
       - JSON RPC Relay port forward enabled on 127.0.0.1:37546
      -------------------------------------------------------------------------------
      ✔ Show user messages 

Cleanup

When you are done, destroy components in the reverse order of deployment.

Important: Always destroy components before destroying the network. Skipping this order can leave orphaned Helm releases and PVCs in your cluster.

1. Destroy JSON-RPC Relay

solo relay node destroy \
  -i node1 \
  --deployment "${SOLO_DEPLOYMENT}" \
  --cluster-ref kind-${SOLO_CLUSTER_NAME}

2. Destroy Explorer

solo explorer node destroy \
  --deployment "${SOLO_DEPLOYMENT}" \
  --force

3. Destroy Mirror Node

solo mirror node destroy \
  --deployment "${SOLO_DEPLOYMENT}" \
  --force

4. Destroy the Network

solo consensus network destroy \
  --deployment "${SOLO_DEPLOYMENT}" \
  --force

2.4 - Custom Application Properties

Configure consensus node application.properties with Solo’s default merge mode or full overwrite mode.

Overview

Solo lets you provide a custom application.properties file for consensus nodes with the --application-properties flag. By default, Solo merges your file with its generated defaults. If you need complete control over the final file, add an overwrite marker to your custom file.

Use the default merge mode when you only need to change or add a few properties. Use overwrite mode only when you want your file to replace Solo’s generated application.properties content.

Default merge mode

Pass your file to solo consensus network deploy:

solo consensus network deploy \
  --deployment "${SOLO_DEPLOYMENT}" \
  --application-properties ./config/application.properties

In merge mode, Solo starts with its generated application.properties, then applies your file as key-level overrides:

  • If your file contains a key that already exists in Solo’s generated file, Solo replaces that key’s value.
  • If your file contains a new key, Solo appends it to the final file.
  • Blank lines and comments in your file are ignored during the merge.
  • Solo-generated keys that you do not mention remain in the final file.

Example custom file for merge mode:

# Override only the properties that need to change.
contracts.chainId=298
hedera.recordStream.logPeriod=1

This is the recommended mode for most deployments because Solo keeps its generated defaults while still applying your overrides.

Overwrite mode

To replace Solo’s generated application.properties file, add the overwrite marker as a comment in your custom file:

# SOLO_ENABLE_OVERWRITE=true

contracts.chainId=298
hedera.recordStream.logPeriod=1
# Include every other property your consensus nodes require.

Then deploy with the same flag:

solo consensus network deploy \
  --deployment "${SOLO_DEPLOYMENT}" \
  --application-properties ./config/application.properties

The marker must be on a comment line that starts with #. Solo looks for the exact text SOLO_ENABLE_OVERWRITE=true inside a comment. If the marker is missing, or if it is written as a normal property instead of a comment, Solo uses default merge mode.

In overwrite mode, your file becomes the full application.properties content. Solo does not carry over defaults that are missing from your file, so include all properties required by the consensus node version and deployment topology you are running.

Falcon values file

For One-shot Falcon deployments, put the same flag under the network section:

network:
  --application-properties: "./config/application.properties"

The merge or overwrite behavior is still controlled by the contents of the referenced application.properties file. Add # SOLO_ENABLE_OVERWRITE=true to that file only when you want overwrite mode.

For the complete list of Falcon network flags, see the Falcon Values File Reference.

2.5 - Dynamically add, update, and remove Consensus Nodes

Learn how to dynamically add, update, and remove consensus nodes in a running Solo network without taking the network offline. Execute operations independently while the network remains operational.

Overview

This guide covers how to dynamically manage consensus nodes in a running Solo network - adding new nodes, updating existing ones, and removing nodes that are no longer needed. All three operations can be performed without taking the network offline.

Prerequisites

Before proceeding, ensure you have:

  • A running Solo network. If you don’t have one, deploy using one of the following methods:

    1. Quickstart - single command deployment using solo one-shot single deploy.
    2. Manual Deployment - step-by-step deployment with full control over each component.
  • Set the required environment variables as described below:

export SOLO_CLUSTER_NAME=solo
export SOLO_NAMESPACE=solo-deployment
export SOLO_CLUSTER_SETUP_NAMESPACE=solo-cluster
export SOLO_DEPLOYMENT=solo-deployment
$env:SOLO_CLUSTER_NAME = 'solo'
$env:SOLO_NAMESPACE = 'solo-deployment'
$env:SOLO_CLUSTER_SETUP_NAMESPACE = 'solo-cluster'
$env:SOLO_DEPLOYMENT = 'solo-deployment'

Key and Storage Concepts

Before running any node operation, it helps to understand two concepts that appear in the prepare step.

  1. Cryptographic Keys

    Solo generates two types of keys for each consensus node:

    • Gossip keys — used for encrypted node-to-node communication within the network. Stored as s-private-node*.pem and s-public-node*.pem under ~/.solo/cache/keys/.
    • TLS keys — used to secure gRPC connections to the node. Stored as hedera-node*.crt and hedera-node*.key under ~/.solo/cache/keys/.

    When adding a new node, Solo generates a fresh key pair and stores it alongside the keys for existing nodes in the same directory. For more detail, see Where are my keys stored?.

  2. Persistent Volume Claims (PVCs)

    By default, consensus node storage is ephemeral - data stored by a node is lost if its pod crashes or is restarted. This is intentional for lightweight local testing where persistence is not required.

    The --pvcs true flag creates Persistent Volume Claims (PVCs) for the node, ensuring its state survives pod restarts. Enable this flag for any node that needs to persist across restarts or that will participate in longer-running test scenarios.

    Note: PVCs are not enabled by default. Enable them only if your node needs to persist state across pod restarts.

  3. Staging Directory

    The --output-dir context flag specifies a local staging directory where Solo writes all artifacts produced during prepare. Solo’s working files are stored under ~/.solo/ — if you use a relative path like context, the directory is created in your current working directory. Do not delete it until execute has completed successfully.

Adding a Node to an Existing Network

You can dynamically add a new consensus node to a running network without taking the network offline. This process involves three stages: preparing the node’s keys and configuration, submitting the on-chain transaction, and executing the addition.

Step 1: Prepare the new node

Generate the new node’s gossip and TLS keys, create its persistent volumes, and stage its configuration into an output directory:

solo consensus dev-node-add prepare \
  --gossip-keys true \
  --tls-keys true \
  --deployment "${SOLO_DEPLOYMENT}" \
  --pvcs true \
  --admin-key <admin-key> \
  --node-alias node2 \
  --output-dir context
FlagDescription
–gossip-keysGenerate gossip keys for the new node.
–tls-keysGenerate gRPC TLS keys for the new node.
–pvcsCreate persistent volume claims for the new node.
–admin-keyThe admin key used to authorize the node addition transaction.
–node-aliasAlias for the new node (e.g., node2).
–output-dirDirectory where prepared context files are saved for use in subsequent steps.

Step 2: Submit the transaction to add the node

Submit the on-chain transaction to register the new node with the network:

solo consensus dev-node-add submit-transactions \
  --deployment "${SOLO_DEPLOYMENT}" \
  --input-dir context

Step 3: Execute the node addition

Apply the node addition and bring the new node online:

solo consensus dev-node-add execute \
  --deployment "${SOLO_DEPLOYMENT}" \
  --input-dir context

Note: For a complete walkthrough with expected outputs, see the Node Create Transaction example.

Updating a Node

You can update an existing consensus node - for example, to upgrade its software version or modify its configuration - without removing it from the network.

Step 1: Prepare the update

Stage the updated configuration and any new software version for the target node:

solo consensus dev-node-update prepare \
  --deployment "${SOLO_DEPLOYMENT}" \
  --node-alias node1 \
  --release-tag v0.66.0 \
  --output-dir context
FlagDescription
–node-aliasAlias of the node to update (e.g., node1).
–release-tagThe consensus node software version to update to.
–new-admin-key(Optional) New admin key for the node’s Hedera account. Omit to keep the existing admin key.
–output-dirDirectory where prepared context files are saved for use in subsequent steps.

Step 2: Submit the update transaction

Submit the on-chain transaction to register the node update with the network:

solo consensus dev-node-update submit-transactions \
  --deployment "${SOLO_DEPLOYMENT}" \
  --input-dir context

Step 3: Execute the update

Apply the update and restart the node with the new configuration:

solo consensus dev-node-update execute \
  --deployment "${SOLO_DEPLOYMENT}" \
  --input-dir context

Note: For a complete walkthrough with expected outputs, see the Node Update Transaction example.

Removing a Node from a Network

You can dynamically remove a consensus node from a running network without taking the remaining nodes offline.

Note: Removing a node permanently reduces the number of consensus nodes in the network. Ensure the remaining nodes meet the minimum threshold required for consensus before proceeding.

Step 1: Prepare the Node for Deletion

Stage the deletion context for the target node:

solo consensus dev-node-delete prepare \
  --deployment "${SOLO_DEPLOYMENT}" \
  --node-alias node2 \
  --output-dir context
FlagDescription
–node-aliasAlias of the node to remove (e.g., node2).
–output-dirDirectory where prepared context files are saved for use in subsequent steps.

Step 2: Submit the delete transaction

Submit the on-chain transaction to deregister the node from the network:

solo consensus dev-node-delete submit-transactions \
  --deployment "${SOLO_DEPLOYMENT}" \
  --input-dir context

Step 3: Execute the deletion

Remove the node and clean up its associated resources:

solo consensus dev-node-delete execute \
  --deployment "${SOLO_DEPLOYMENT}" \
  --input-dir context

Note: For a complete walkthrough with expected outputs, see the Node Delete Transaction example.

3 - Attach JVM Debugger and Retrieve Logs

Learn how to attach a JVM debugger to a running Hiero Consensus Node, retrieve logs for analysis, and save and restore network state files along with essential tools for developers and deep-level troubleshooting.

Overview

This guide covers three debugging workflows:

  • Retrieve logs from a running consensus node using k9s or the Solo CLI
  • Attach a JVM debugger in IntelliJ IDEA to a running or restarting node
  • Save and restore network state files to replay scenarios across sessions

Prerequisites

Before proceeding, ensure you have completed the following:

  • System Readiness — your local environment meets all hardware and software requirements.
  • Quickstart — you have a running Solo cluster and are familiar with the basic Solo workflow.

You will also need:

  • k9s installed (brew install k9s)
  • IntelliJ IDEA with a Remote JVM Debug run configuration (for JVM debugging only)
  • A local checkout of hiero-consensus-node that has been built with assemble or build (for JVM debugging only)

1. Retrieve Consensus Node Logs

Using k9s

Run k9s -A in your terminal to open the cluster dashboard, then select one of the network node pods.

k9s pod list showing network nodes

Select the root-container and press s to open a shell inside the container.

k9s container list with root-container highlighted

Navigate to the Hedera application directory to browse logs and configuration:

cd /opt/hgcapp/services-hedera/HapiApp2.0/

From there you can inspect logs and configuration files:

[root@network-node1-0 HapiApp2.0]# ls -ltr data/config/
total 0
lrwxrwxrwx 1 root root 27 Dec  4 02:05 bootstrap.properties -> ..data/bootstrap.properties
lrwxrwxrwx 1 root root 29 Dec  4 02:05 application.properties -> ..data/application.properties
lrwxrwxrwx 1 root root 32 Dec  4 02:05 api-permission.properties -> ..data/api-permission.properties

[root@network-node1-0 HapiApp2.0]# ls -ltr output/
total 1148
-rw-r--r-- 1 hedera hedera       0 Dec  4 02:06 hgcaa.log
-rw-r--r-- 1 hedera hedera       0 Dec  4 02:06 queries.log
drwxr-xr-x 2 hedera hedera    4096 Dec  4 02:06 transaction-state
drwxr-xr-x 2 hedera hedera    4096 Dec  4 02:06 state
-rw-r--r-- 1 hedera hedera     190 Dec  4 02:06 swirlds-vmap.log
drwxr-xr-x 2 hedera hedera    4096 Dec  4 16:01 swirlds-hashstream
-rw-r--r-- 1 hedera hedera 1151446 Dec  4 16:07 swirlds.log

Using the Solo CLI (Alternative option)

To download hgcaa.log and swirlds.log as a zip archive without entering the container shell, run:

# Downloads logs to ~/.solo/logs/<namespace>/<timestamp>
solo deployment diagnostics all --deployment solo-deployment

2. Attach a JVM Debugger in IntelliJ IDEA

Solo supports pausing node startup at a JDWP debug port so you can attach IntelliJ IDEA before the node begins processing transactions.

Configure IntelliJ IDEA

Create a Remote JVM Debug run configuration in IntelliJ IDEA.

For the Hedera Node application:

IntelliJ Remote JVM Debug configuration for hedera-app

If you are working on the Platform test application instead:

IntelliJ Remote JVM Debug configuration for platform-app

Set any breakpoints you need before launching the Solo command in the next step.

Note: The local-build-path in the commands below references ../hiero-consensus-node/hedera-node/data. Adjust this path to match your local checkout location. Ensure the directory is up to date by running ./gradlew assemble in the hiero-consensus-node repo before proceeding.

Example 1 — Debug a node during initial network deployment

This example deploys a three-node network and pauses node2 for debugger attachment.

SOLO_CLUSTER_NAME=solo-cluster
SOLO_NAMESPACE=solo-deployment
SOLO_CLUSTER_SETUP_NAMESPACE=solo-setup
SOLO_DEPLOYMENT=solo-deployment

# Remove any previous state to avoid name collision issues
rm -Rf ~/.solo
kind delete cluster -n "${SOLO_CLUSTER_NAME}"
kind create cluster -n "${SOLO_CLUSTER_NAME}"

solo cluster-ref config setup -s "${SOLO_CLUSTER_SETUP_NAMESPACE}"
solo cluster-ref config connect --cluster-ref ${SOLO_CLUSTER_NAME} --context kind-${SOLO_CLUSTER_NAME}

solo deployment config create --namespace "${SOLO_NAMESPACE}" --deployment "${SOLO_DEPLOYMENT}"
solo deployment cluster attach --deployment "${SOLO_DEPLOYMENT}" --cluster-ref ${SOLO_CLUSTER_NAME} --num-consensus-nodes 3
solo keys consensus generate --deployment "${SOLO_DEPLOYMENT}" --gossip-keys --tls-keys -i node1,node2,node3

solo consensus network deploy --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --debug-node-alias node2
solo consensus node setup --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --local-build-path ../hiero-consensus-node/hedera-node/data
solo consensus node start --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --debug-node-alias node2

When Solo reaches the active-check phase for node2, it pauses and displays:

❯ Check all nodes are ACTIVE
  Check node: node1,
  Check node: node2,  Please attach JVM debugger now.
  Check node: node3,
? JVM debugger setup for node2. Continue when debugging is complete? (y/N)

At this point, launch the remote debug configuration in IntelliJ IDEA. The node will stop at your breakpoint:

Hedera node stopped at a breakpoint in IntelliJ

Platform app stopped at a breakpoint in IntelliJ

When you are done debugging, resume execution in IntelliJ, then type y in the terminal to allow Solo to continue.

Example 2 — Debug a node during a node add operation

This example starts a three-node network and then attaches a debugger while adding node4.

SOLO_CLUSTER_NAME=solo-cluster
SOLO_NAMESPACE=solo-deployment
SOLO_CLUSTER_SETUP_NAMESPACE=solo-setup
SOLO_DEPLOYMENT=solo-deployment

rm -Rf ~/.solo
kind delete cluster -n "${SOLO_CLUSTER_NAME}"
kind create cluster -n "${SOLO_CLUSTER_NAME}"

solo cluster-ref config setup -s "${SOLO_CLUSTER_SETUP_NAMESPACE}"
solo cluster-ref config connect --cluster-ref ${SOLO_CLUSTER_NAME} --context kind-${SOLO_CLUSTER_NAME}

solo deployment config create --namespace "${SOLO_NAMESPACE}" --deployment "${SOLO_DEPLOYMENT}"
solo deployment cluster attach --deployment "${SOLO_DEPLOYMENT}" --cluster-ref ${SOLO_CLUSTER_NAME} --num-consensus-nodes 3
solo keys consensus generate --deployment "${SOLO_DEPLOYMENT}" --gossip-keys --tls-keys -i node1,node2,node3

solo consensus network deploy --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --pvcs
solo consensus node setup --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --local-build-path ../hiero-consensus-node/hedera-node/data
solo consensus node start --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3

solo consensus node add --deployment "${SOLO_DEPLOYMENT}" --gossip-keys --tls-keys \
  --debug-node-alias node4 \
  --local-build-path ../hiero-consensus-node/hedera-node/data \
  --pvcs

Example 3 — Debug a node during a node update operation

This example attaches a debugger to node2 while it restarts as part of an update operation.

SOLO_CLUSTER_NAME=solo-cluster
SOLO_NAMESPACE=solo-deployment
SOLO_CLUSTER_SETUP_NAMESPACE=solo-setup
SOLO_DEPLOYMENT=solo-deployment

rm -Rf ~/.solo
kind delete cluster -n "${SOLO_CLUSTER_NAME}"
kind create cluster -n "${SOLO_CLUSTER_NAME}"

solo cluster-ref config setup -s "${SOLO_CLUSTER_SETUP_NAMESPACE}"
solo cluster-ref config connect --cluster-ref ${SOLO_CLUSTER_NAME} --context kind-${SOLO_CLUSTER_NAME}

solo deployment config create --namespace "${SOLO_NAMESPACE}" --deployment "${SOLO_DEPLOYMENT}"
solo deployment cluster attach --deployment "${SOLO_DEPLOYMENT}" --cluster-ref ${SOLO_CLUSTER_NAME} --num-consensus-nodes 3
solo keys consensus generate --deployment "${SOLO_DEPLOYMENT}" --gossip-keys --tls-keys -i node1,node2,node3

solo consensus network deploy --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3
solo consensus node setup --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --local-build-path ../hiero-consensus-node/hedera-node/data
solo consensus node start --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3

solo consensus node update --deployment "${SOLO_DEPLOYMENT}" \
  --node-alias node2 \
  --debug-node-alias node2 \
  --local-build-path ../hiero-consensus-node/hedera-node/data \
  --new-account-number 0.0.7 \
  --gossip-public-key ./s-public-node2.pem \
  --gossip-private-key ./s-private-node2.pem \
  --release-tag v0.71.0

Example 4 — Debug a node during a node delete operation

This example attaches a debugger to node3 while node2 is being removed from the network.

SOLO_CLUSTER_NAME=solo-cluster
SOLO_NAMESPACE=solo-deployment
SOLO_CLUSTER_SETUP_NAMESPACE=solo-setup
SOLO_DEPLOYMENT=solo-deployment

rm -Rf ~/.solo
kind delete cluster -n "${SOLO_CLUSTER_NAME}"
kind create cluster -n "${SOLO_CLUSTER_NAME}"

solo cluster-ref config setup -s "${SOLO_CLUSTER_SETUP_NAMESPACE}"
solo cluster-ref config connect --cluster-ref ${SOLO_CLUSTER_NAME} --context kind-${SOLO_CLUSTER_NAME}

solo deployment config create --namespace "${SOLO_NAMESPACE}" --deployment "${SOLO_DEPLOYMENT}"
solo deployment cluster attach --deployment "${SOLO_DEPLOYMENT}" --cluster-ref ${SOLO_CLUSTER_NAME} --num-consensus-nodes 3
solo keys consensus generate --deployment "${SOLO_DEPLOYMENT}" --gossip-keys --tls-keys -i node1,node2,node3

solo consensus network deploy --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3
solo consensus node setup --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --local-build-path ../hiero-consensus-node/hedera-node/data
solo consensus node start --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3

solo consensus node destroy --deployment "${SOLO_DEPLOYMENT}" \
  --node-alias node2 \
  --debug-node-alias node3 \
  --local-build-path ../hiero-consensus-node/hedera-node/data

3. Save and Restore Network State

You can snapshot the state of a running network and restore it later. This is useful for replaying specific scenarios or sharing reproducible test cases with the team.

Save state

Stop the nodes first, then download the state archives:

# Stop all nodes before downloading state
solo consensus node stop --deployment "${SOLO_DEPLOYMENT}"

# Download state files to ~/.solo/logs/<namespace>/
solo consensus state download -i node1,node2,node3 --deployment "${SOLO_DEPLOYMENT}"

The state files are saved under ~/.solo/logs/:

└── logs
    ├── solo-deployment
    │   ├── network-node1-0-state.zip
    │   └── network-node2-0-state.zip
    └── solo.log

Restore state

Create a fresh cluster, deploy the network, then upload the saved state before starting the nodes:

SOLO_CLUSTER_NAME=solo-cluster
SOLO_NAMESPACE=solo-deployment
SOLO_CLUSTER_SETUP_NAMESPACE=solo-setup
SOLO_DEPLOYMENT=solo-deployment

rm -Rf ~/.solo
kind delete cluster -n "${SOLO_CLUSTER_NAME}"
kind create cluster -n "${SOLO_CLUSTER_NAME}"

solo cluster-ref config setup -s "${SOLO_CLUSTER_SETUP_NAMESPACE}"
solo cluster-ref config connect --cluster-ref ${SOLO_CLUSTER_NAME} --context kind-${SOLO_CLUSTER_NAME}

solo deployment config create --namespace "${SOLO_NAMESPACE}" --deployment "${SOLO_DEPLOYMENT}"
solo deployment cluster attach --deployment "${SOLO_DEPLOYMENT}" --cluster-ref ${SOLO_CLUSTER_NAME} --num-consensus-nodes 3
solo keys consensus generate --deployment "${SOLO_DEPLOYMENT}" --gossip-keys --tls-keys -i node1,node2,node3

solo consensus network deploy --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3
solo consensus node setup --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3 --local-build-path ../hiero-consensus-node/hedera-node/data
solo consensus node start --deployment "${SOLO_DEPLOYMENT}" -i node1,node2,node3
solo consensus node stop --deployment "${SOLO_DEPLOYMENT}"

# Upload previously saved state files
solo consensus node state download  -i node1,node2,node3 --deployment "${SOLO_DEPLOYMENT}"

# Restart the network using the uploaded state
solo consensus node start --deployment "${SOLO_DEPLOYMENT}" --state-file network-node1-0-state.zip

4 - One-Shot Deploy with Custom Component Versions

Use the –edge flag and *_EDGE_VERSION environment variables to deploy a Solo network against arbitrary component versions — release candidates, pre-releases, or local builds — without modifying Solo source or rebuilding the CLI.

Overview

Solo’s one-shot single deploy and one-shot multi deploy commands accept an --edge flag that switches every component from its built-in stable default to a separate set of “edge” versions. Each edge version is read from an environment variable at startup, so you can pin any component to any tag the container registry exposes — including release candidates and unreleased builds — without editing Solo source or rebuilding the CLI.

Use this guide when you need to:

  • Test a Hiero Consensus Node release candidate against the rest of the Solo-managed stack.
  • Reproduce a specific component version combination for a bug report or regression test.
  • Iterate on a single component (Mirror Node, Relay, Explorer, …) while the other components stay on stable defaults.

For the canonical list of *_EDGE_VERSION variables, see Edge Component Versions in the environment variables reference.

Local binary builds vs published version overrides: --edge and *_EDGE_VERSION variables pin components to published container image tags — they require the image to exist in the registry. If you need to deploy a binary you compiled locally (before any tag or release exists), use --local-build-path instead. See Deploying a Local Consensus Node Build.


How It Works

*_EDGE_VERSION env var (e.g. CONSENSUS_NODE_EDGE_VERSION)
solo one-shot ... deploy --edge
Each component is pinned to its edge version for this deploy.
Components without an explicit override fall back to the compiled-in
edge defaults, which themselves fall back to the stable defaults.
  • Without --edge, Solo uses the stable defaults compiled into the CLI.
  • With --edge, Solo reads the *_EDGE_VERSION constants — and any matching environment variable you set in the shell overrides those constants.

You only need to set variables for the components you want to override. All others fall back to their compiled-in defaults.

Image cache: Because you pin versions with environment variables, Solo’s image cache pulls the matching image versions automatically. Pinning a version with a --*-version CLI flag (or in solo.config.yaml) instead does not update the cache — it would pull the default versions and cause a cache miss on first deploy. Use the environment variables shown here to keep the cache aligned with the deployed versions.


Quick Start

Deploy a single-node network with a custom Consensus Node release candidate:

CONSENSUS_NODE_EDGE_VERSION=v0.74.0-rc.1 \
solo one-shot single deploy --edge --dev

What this does:

  • CONSENSUS_NODE_EDGE_VERSION=v0.74.0-rc.1 overrides the consensus node version for this command invocation.
  • --edge tells Solo to read *_EDGE_VERSION variables instead of stable defaults.
  • --dev enables Solo’s developer mode — appropriate for local development, not for production-shaped deployments.
  • Mirror Node, Relay, Explorer, Block Node, and the Solo chart keep their compiled-in edge defaults because no *_EDGE_VERSION was set for them.

Note: If you already have a running one-shot deployment and want to keep it, the command above fails with “A deployment named one-shot already exists” because one-shot is the default deployment name. Pass --deployment <name> --namespace <name> to deploy the edge build alongside the existing one:

CONSENSUS_NODE_EDGE_VERSION=v0.74.0-rc.1 \
solo one-shot single deploy --edge --dev \
  --deployment one-shot-edge --namespace one-shot-edge

Every solo one-shot deploy overwrites ~/.solo/cache/last-one-shot-deployment.txt with its own deployment name. After this command, the cache file points at one-shot-edge, not the original one-shot. Pass --deployment explicitly when running follow-up commands against a specific deployment.


Where to Find Version Tags

Each *_EDGE_VERSION value is a published release tag from the component’s GitHub release page. Pick a tag from the appropriate page below, and match the format the component publishes — a missing or extra v prefix is the most common cause of image-pull failures.

ComponentRelease tagsFormatExample
Consensus Nodehiero-consensus-nodevMAJOR.MINOR.PATCH[-qualifier]v0.74.0-rc.1
Mirror Nodehiero-mirror-nodevMAJOR.MINOR.PATCHv0.153.1
JSON-RPC Relayhiero-json-rpc-relayMAJOR.MINOR.PATCH0.77.0
Explorerhiero-mirror-node-explorerMAJOR.MINOR.PATCH27.0.0
Block Nodehiero-block-nodevMAJOR.MINOR.PATCH[-qualifier]v0.32.0
Solo Charthashgraph/solo-chartsMAJOR.MINOR.PATCH0.64.0

Note: Consensus Node, Mirror Node, and Block Node tags are prefixed with v; Relay, Explorer, and Solo Chart tags are not. The tag must exist in the component’s container registry, otherwise the deploy fails with an image-pull error — see Troubleshooting.


Command Reference

In Solo v0.72.0, --edge is accepted by the single and multi one-shot deploy variants. solo one-shot falcon deploy does not currently accept --edge — use one of the two variants below to test custom component versions.

Single-node deploy

CONSENSUS_NODE_EDGE_VERSION=<version> \
MIRROR_NODE_EDGE_VERSION=<version> \
solo one-shot single deploy --edge [--dev] [other flags]

Multi-node deploy

CONSENSUS_NODE_EDGE_VERSION=<version> \
MIRROR_NODE_EDGE_VERSION=<version> \
solo one-shot multi deploy --edge --num-consensus-nodes 3 [--dev] [other flags]

Examples

Override Consensus Node and Mirror Node

CONSENSUS_NODE_EDGE_VERSION=v0.73.0 \
MIRROR_NODE_EDGE_VERSION=v0.153.1 \
solo one-shot single deploy --edge --dev

Override every component

CONSENSUS_NODE_EDGE_VERSION=v0.73.0 \
MIRROR_NODE_EDGE_VERSION=v0.153.1 \
RELAY_EDGE_VERSION=0.77.0 \
EXPLORER_EDGE_VERSION=27.0.0 \
BLOCK_NODE_EDGE_VERSION=v0.32.0 \
SOLO_CHART_EDGE_VERSION=0.64.0 \
solo one-shot single deploy --edge --dev

Export once, reuse across a development session

If you are iterating and running deploy/destroy/deploy cycles, export the variables so every one-shot command in the shell session picks them up:

export CONSENSUS_NODE_EDGE_VERSION=v0.74.0-rc.1
export MIRROR_NODE_EDGE_VERSION=v0.153.1

solo one-shot single deploy --edge --dev

# Destroy and redeploy without re-typing the variables
solo one-shot single destroy
solo one-shot single deploy --edge --dev

Verifying the Versions in Use

After the deploy starts, confirm the resolved versions in the structured Solo log:

tail -f $HOME/.solo/logs/solo.ndjson | jq '.msg, .version // empty'

Note: Use solo.ndjson (newline-delimited JSON, machine-readable) for jq pipes. The companion solo.log is pino-pretty formatted text and will not parse as JSON.

Inspect the deployed Helm releases and their chart versions:

helm list -A
helm get values <release-name> -n <namespace>

Confirm the consensus node container image tag:

kubectl get pods -n <namespace> -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[*].image}{"\n"}{end}'

Replace <namespace> with your deployment namespace (default one-shot — see Find your deployment namespace).


Without --edge

Omitting --edge uses the stable defaults compiled into the Solo CLI you are running — any *_EDGE_VERSION variables you have set are ignored for that invocation.

# Stable defaults — *_EDGE_VERSION variables are ignored.
solo one-shot single deploy --dev

If you want to pin versions without using --edge (for example, to test a specific stable release of one component), see Pinning Component Versions in the environment variables reference.


Troubleshooting

The version I set is not being used.

Confirm you passed --edge. Without it, Solo ignores every *_EDGE_VERSION variable and uses the compiled-in stable defaults.

Solo is ignoring my environment variable.

The variable must be exported in (or prefixed to) the same shell process that runs Solo. Verify with:

echo $CONSENSUS_NODE_EDGE_VERSION   # should print your value

If you set the variable inline (FOO=bar solo ...), double-check the variable name is spelled exactly as listed in Edge Component Versions — the names are case-sensitive.

The deploy fails with an image-pull error.

The tag you supplied does not exist in the component’s container registry, or the format is wrong (missing v prefix, extra spaces, …). Cross-check the tag against the official release list for that component before retrying.

The deploy starts but a component crashes immediately.

Different component versions are not guaranteed to be mutually compatible. When mixing edge versions, prefer combinations Solo’s CI already exercises (see the Version Compatibility Reference).

5 - Customizing Solo with Tasks

Use the Task runner to deploy and customize Solo networks, then explore maintained GitHub example projects for common workflows.

Overview

The Task tool (task) is a task runner that enables you to deploy and customize Solo networks using infrastructure-as-code patterns. Rather than running individual Solo CLI commands, you can use predefined Taskfile targets to orchestrate complex deployment workflows with a single command.

This guide covers installing the Task tool, understanding available Taskfile targets, and using them to deploy networks with various configurations. It also points to maintained example projects that demonstrate common Solo workflows.

Note: This guide assumes you have cloned the Solo repository and have basic familiarity with command-line interfaces and Docker.

Prerequisites

Before you begin, ensure you have completed the following:

  • System Readiness: Prepare your local environment (Docker, Kind, Kubernetes, and related tooling).
  • Quickstart: You are familiar with the basic Solo workflow and the solo one-shot single deploy command.

Tip: Task-based workflows are ideal for developers who want to:

  • Run the same deployment multiple times reliably.
  • Customize network components (add mirror nodes, relays, block nodes, etc.).
  • Use version control to track deployment configurations.
  • Integrate Solo deployments into CI/CD pipelines.

Install the Task Tool

The Task tool is a dependency for using Taskfile targets in the Solo repository. Install it using one of the following methods:

brew install go-task/tap/go-task

Using npm

npm install -g @go-task/cli

Verify the installation:

task --version

Expected output:

Task version: v3.X.X

Using package managers

Visit the Task installation guide for additional installation methods for your operating system.

Understanding the Task Structure

The Solo repository uses a modular Task architecture located in the scripts/ directory:

scripts/
├── Taskfile.yml                    # Main entry point (includes other Taskfiles)
├── Taskfile.scripts.yml            # Core deployment and management tasks
├── Taskfile.examples.yml           # Example project tasks
├── Taskfile.release.yml            # Package publishing tasks
└── [other helper scripts]

How to Run Tasks

From the root directory or any example directory, run:

# Run the default task
task

# Run a specific task
task <task-name>

# Run tasks with variables
task <task-name> -- VAR_NAME=value

Deploy Network Configurations

Basic Network Deployment

Deploy a standalone Hiero Consensus Node network with a single command:

# From the repository root, navigate to scripts directory
cd scripts

# Deploy default network (2 consensus nodes)
task default

This command performs the following actions:

  • Initializes Solo and downloads required dependencies.
  • Creates a local Kubernetes cluster using Kind.
  • Deploys 2 consensus nodes.
  • Sets up gRPC and JSON-RPC endpoints for client access.

Deploy Network with Mirror Node

Deploy a network with a consensus node, mirror node, and Hiero Explorer:

cd scripts

task default-with-mirror

This configuration includes:

ComponentDescription
Consensus Node2 consensus nodes running Hiero
Mirror NodeStores and serves historical transaction data
Explorer UIWeb interface for viewing accounts

Access the Explorer at: http://localhost:38080/localnet/dashboard (Solo 0.63+) or http://localhost:8080/localnet/dashboard (Solo 0.62 and earlier). See Port availability if the port is in use.

Deploy Network with Relay and Explorer

Deploy a network with consensus nodes, mirror node, explorer, and JSON-RPC relay for Ethereum-compatible access:

cd scripts

task default-with-relay

This configuration includes:

ComponentDescription
Consensus Node2 consensus nodes running Hiero
Mirror NodeStores and serves historical transaction data
Explorer UIWeb interface for viewing accounts
JSON-RPC RelayEthereum-compatible JSON-RPC interface

Access the services at (Solo 0.63+ defaults; for Solo 0.62 and earlier use the legacy ports in parentheses):

  • Explorer: http://localhost:38080/localnet/dashboard (legacy: http://localhost:8080/localnet/dashboard)
  • JSON-RPC Relay: http://localhost:37546 (legacy: http://localhost:7546)

See Port availability if a port is already in use on your machine.

Available Taskfile Targets

The Taskfile includes a comprehensive set of targets for deploying and managing Solo networks. Below are the most commonly used targets, organized by category.

Core Deployment Targets

These targets handle the primary deployment lifecycle:

TaskDescription
defaultComplete deployment workflow for Solo
installInitialize cluster, create deployment, and setup consensus net
destroyTear down the consensus network
cleanFull cleanup: destroy network, remove cache, logs, and files
startStart all consensus nodes
stopStop all consensus nodes

Example: Deploy, then clean up

cd scripts

# Deploy the network
task default

# ... (use the network)

# Stop the network
task stop

# Remove all traces of the deployment
task clean

Cache and Log Cleanup

When cleaning up, you can selectively remove specific components:

TaskDescription
clean:cacheRemove the Solo cache directory (~/.solo/cache)
clean:logsRemove the Solo logs directory (~/.solo/logs)
clean:tmpRemove temporary deployment files

Mirror Node Management

Add, configure, or remove mirror nodes from an existing deployment:

TaskDescription
solo:mirror-nodeAdd a mirror node to the current deployment
solo:destroyer-mirror-nodeRemove the mirror node from the deployment

Example: Add mirror node to running network

cd scripts

# Start with a basic network
task default

# Add mirror node later
task solo:mirror-node

# Remove mirror node
task solo:destroyer-mirror-node

Explorer UI Management

Deploy or remove the Hiero Explorer for transaction/account viewing:

TaskDescription
solo:explorerAdd explorer UI to the current deployment
solo:destroy-explorerRemove explorer UI from the deployment

Example: Deploy network with explorer

cd scripts

task default
task solo:explorer

# Access at http://localhost:38080/localnet/dashboard (Solo 0.63+) or http://localhost:8080/localnet/dashboard (Solo 0.62 and earlier)

JSON-RPC Relay Management

Deploy or remove the Relay for Ethereum-compatible access:

TaskDescription
solo:relayAdd JSON-RPC relay to the current deployment
solo:destroy-relayRemove JSON-RPC relay from the deployment

Example: Add relay to running network

cd scripts

task default-with-mirror
task solo:relay

# Access JSON-RPC at http://localhost:37546 (Solo 0.63+) or http://localhost:7546 (Solo 0.62 and earlier)

Block Node Management

Deploy or remove block nodes for streaming block data:

TaskDescription
solo:block:addAdd a block node to the current deployment
solo:block:destroyRemove the block node from the deployment

Example: Deploy network with block node

cd scripts

task default
task solo:block:add

# Block node will stream block data

Infrastructure Tasks

Low-level tasks for managing clusters and network infrastructure:

TaskDescription
cluster:createCreate a Kind (Kubernetes in Docker) cluster
cluster:destroyDelete the Kind cluster
solo:cluster:setupSetup cluster infrastructure and prerequisites
solo:initInitialize Solo (download tools and templates)
solo:deployment:createCreate a new deployment configuration
solo:deployment:attachAttach an existing cluster to a deployment
solo:network:deployDeploy the consensus network to the cluster
solo:network:destroyDestroy the consensus network

Tip: Unless you need custom cluster management, use the higher-level tasks like default, install, or destroy which orchestrate these infrastructure tasks automatically.

Utility Tasks

Helpful tasks for inspecting and managing running networks:

TaskDescription
show:ipsDisplay the external IPs of all network nodes
solo:node:logsRetrieve logs from consensus nodes
solo:freeze:restartExecute a freeze/restart upgrade workflow for testing version upgrades

Example: View network IPs and logs

cd scripts

# See which nodes are running and their IPs
task show:ips

# Retrieve node logs for debugging
task solo:node:logs

Database Tasks

Deploy external databases for specialized configurations:

TaskDescription
solo:external-databaseSetup external PostgreSQL database with Helm

Advanced Configuration with Environment Variables

You can customize Task behavior by setting environment variables before running tasks. Common variables include:

VariableDescriptionDefault
SOLO_NETWORK_SIZENumber of consensus nodes1
SOLO_NAMESPACEKubernetes namespacesolo-e2e
CONSENSUS_NODE_VERSIONConsensus node versionv0.65.1
MIRROR_NODE_VERSIONMirror node versionv0.138.0
RELAY_VERSIONJSON-RPC Relay versionv0.70.0
EXPLORER_VERSIONExplorer UI versionv25.1.1

For a comprehensive reference of all available environment variables, see Using Environment Variables.

Example: Deploy with custom versions

cd scripts

# Deploy with specific component versions
CONSENSUS_NODE_VERSION=v0.66.0 \
MIRROR_NODE_VERSION=v0.139.0 \
task default-with-mirror

Example Projects

The Solo repository includes 14+ maintained example projects that demonstrate common Solo workflows. These examples serve as templates and starting points for custom implementations.

Getting Started with Examples

Each example is located in the examples/ directory and includes:

  • Pre-configured Taskfile.yml with deployment settings.
  • init-containers-values.yaml for customization.
  • Example-specific README with detailed instructions.

To run an example:

cd examples/<example-name>

# Deploy the example
task

# Clean up when done
task clean

Available Examples

Network Setup Examples

Configuration Examples

Database Examples

State Management Examples

Node Transaction Examples

These examples demonstrate manual operations for adding, modifying, and removing nodes:

Integration Examples

Testing Examples

  • Rapid-Fire: Rapid-fire deployment and teardown commands for stress testing the deployment workflow
  • Running Solo Inside Cluster: Deploy Solo within an existing Kubernetes cluster instead of creating a new one

Practical Workflows

Workflow 1: Quick Development Network with Logging

Deploy a network for development and debugging:

cd scripts

# Set logging level (PowerShell: $env:SOLO_LOG_LEVEL = 'debug')
export SOLO_LOG_LEVEL=debug

# Deploy with mirror and relay
task default-with-relay

# Retrieve logs if needed
task solo:node:logs

# View network endpoints
task show:ips

# Clean up
task clean

Workflow 2: Test Configuration Changes

Iterate on network configuration:

cd examples/custom-network-config

# Edit the Taskfile or init-containers-values.yaml

# Deploy with your changes
task

# Test your configuration

# Clean up and try again
task clean

Workflow 3: Upgrade Network Components

Test upgrading Solo components:

cd examples/version-upgrade-test

# Deploy with current versions
task

# The example automatically tests the upgrade path

# Clean up
task clean

Workflow 4: Backup and Restore Network State

Test disaster recovery and state migration:

cd examples/state-save-and-restore

# Deploy initial network with state
task

# The example includes backup/restore operations

# Clean up
task clean

Troubleshooting

Common Issues

Task command not found

Ensure Task is installed and on your PATH:

which task
task --version

Taskfile not found

Run Task commands from the scripts/ directory or an examples/ subdirectory where a Taskfile.yml exists:

cd scripts
task default

Insufficient resources

Some deployments require significant resources. Verify your Docker has at least 12 GB of memory and 6 CPU cores allocated:

docker info --format 'CPU: {{.NCPU}}, Memory: {{.MemTotal | div 1000000000}}GB'

Cluster cleanup issues

If the cluster becomes unstable, perform a full cleanup:

cd scripts

# Remove all traces
task clean

# As a last resort, manually delete the Kind cluster
kind delete cluster --name solo-e2e

Next Steps

After deploying a network with Task, explore:

Additional Resources

6 - Solo CI Workflow

Learn how to integrate Solo into a GitHub Actions CI pipeline covering runner requirements, tool installation, and automated network deployment within CI environments. Set up fresh isolated Solo networks for each CI run.

Overview

This guide walks you through integrating Solo into a GitHub Actions CI pipeline - covering runner requirements, tool installation, and automated network deployment. Each step installs dependencies directly in the workflow, since CI runners are fresh environments with no pre-installed tools.

Prerequisites

Before proceeding, ensure you have completed the following:

  • System Readiness — your local environment meets all hardware and software requirements.
  • Quickstart — you are familiar with the basic Solo workflow and the solo one-shot single deploy command.

This guide assumes you are integrating Solo into a GitHub Actions workflow where each runner is a fresh environment. The steps below install all required tools directly inside the workflow rather than relying on pre-installed dependencies.

Runner Requirements

Solo requires a minimum of 6 CPU cores and 12 GB of memory on the runner. If these requirements are not met, Solo components may hang or fail to install during deployment.

Note: The Kubernetes cluster does not have full access to all memory available on the host. Setting Docker to 12 GB of memory means the Kind cluster running inside Docker will have access to less than 12 GB. Memory and CPU utilisation also increase over time as transaction load grows. The requirements above are validated for solo one-shot single deploy as documented in this guide.

To verify that your runner meets these requirements, add the following step to your workflow:

  - name: Check Docker Resources
    run: |
      read cpus mem <<<"$(docker info --format '{{.NCPU}} {{.MemTotal}}')"
      mem_gb=$(awk -v m="$mem" 'BEGIN{printf "%.1f", m/1000000000}')
      echo "CPU cores: $cpus"
      echo "Memory: ${mem_gb} GB"

Expected Output:

  CPU cores: 6
  Memory: 12 GB

Step 1: Set Up Kind

Install Kind to create and manage a local Kubernetes cluster in your workflow.

  - name: Setup Kind
    uses: helm/kind-action@a1b0e391336a6ee6713a0583f8c6240d70863de3
    with:
      install_only: true
      node_image: kindest/node:v1.32.2@sha256:3966f21e12b760f6585bde7140cae5e8cdc0e52b37a6f90ce39834b6e72e3f49
      version: v0.29.0
      kubectl_version: v1.32.2
      verbosity: 3
      wait: 120s

Important: Kind version must be v0.29.0 or later and Kubernetes version must be v1.32.2 or later. Solo enforces this minimum version at runtime. Installing an older version will cause deployment failures.

Step 2: Install Node.js

  - name: Set up Node.js
    uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020
    with:
      node-version: 22.12.0

Step 3: Install Solo CLI

Install the Solo CLI globally using npm.

Important: Always pin the CLI version. Unpinned installs may pick up breaking changes from newer releases and cause unexpected workflow failures.

  - name: Install Solo CLI
    run: |
      set -euo pipefail
      npm install -g @hiero-ledger/solo@<version>
      solo --version
      kind --version

Step 4: Deploy Solo

Deploy a Solo network to your Kind cluster. This command creates and configures a fully functional local Hiero network, including:

  • Consensus Node

  • Mirror Node

  • Mirror Node Explorer

  • JSON-RPC Relay

      - name: Deploy Solo
        env:
          SOLO_CLUSTER_NAME: solo
          SOLO_NAMESPACE: one-shot
          SOLO_CLUSTER_SETUP_NAMESPACE: solo-cluster
          SOLO_DEPLOYMENT: solo-deployment
        run: |
          set -euo pipefail
          kind create cluster -n "${SOLO_CLUSTER_NAME}"
          solo one-shot single deploy | tee solo-deploy.log
    

Resetting Between Tests

If several tests each need a clean genesis ledger, you do not have to redeploy for each one. After deploying once, reset the ledger to genesis between tests to return to a known starting state without recreating the cluster:

  - name: Reset ledger to genesis
    env:
      SOLO_DEPLOYMENT: solo-deployment
    run: |
      set -euo pipefail
      solo ledger system reset --deployment "${SOLO_DEPLOYMENT}"

This is faster than a destroy-and-redeploy cycle. See Reset the ledger to genesis for details and available flags.

Cleanup

After the workflow completes, destroy the Solo deployment and delete the Kind cluster to avoid leaving resources behind.

  - name: Destroy Solo deployment
    env:
      SOLO_DEPLOYMENT: solo-deployment
    run: |
      set -euo pipefail
      solo one-shot single destroy --deployment "${SOLO_DEPLOYMENT}"
  - name: Delete Kind cluster
    env:
      SOLO_CLUSTER_NAME: solo
    run: |
      set -euo pipefail
      kind delete cluster -n "${SOLO_CLUSTER_NAME}"

Complete Example Workflow

The following is the full workflow combining all steps above. Copy this into your .github/workflows/ directory as a starting point.

name: Solo CI Example

on:
  workflow_dispatch:
    inputs:
      solo_version:
        description: 'Solo CLI version to install'
        required: false
        default: '0.69.0'
      kind_version:
        description: 'Kind version to install (minimum v0.29.0)'
        required: false
        default: 'v0.29.0'
      kubectl_version:
        description: 'kubectl version to install (minimum v1.32.2)'
        required: false
        default: 'v1.32.2'

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - name: Check Docker Resources
        run: |
          read cpus mem <<<"$(docker info --format '{{.NCPU}} {{.MemTotal}}')"
          mem_gb=$(awk -v m="$mem" 'BEGIN{printf "%.1f", m/1000000000}')
          echo "CPU cores: $cpus"
          echo "Memory: ${mem_gb} GB"
          
      - name: Setup Kind
        uses: helm/kind-action@a1b0e391336a6ee6713a0583f8c6240d70863de3
        with:
          install_only: true
          node_image: kindest/node:v1.32.2@sha256:3966f21e12b760f6585bde7140cae5e8cdc0e52b37a6f90ce39834b6e72e3f49
          version: v0.29.0
          kubectl_version: v1.32.2
          verbosity: 3
          wait: 120s
         
      - name: Set up Node.js
        uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020
        with:
          node-version: 22.12.0
      
      - name: Install Solo CLI
        run: |
          set -euo pipefail
          npm install -g @hiero-ledger/solo@<version>
          solo --version
          kind --version
      
      - name: Deploy Solo
        env:
          SOLO_CLUSTER_NAME: solo
          SOLO_NAMESPACE: one-shot
          SOLO_CLUSTER_SETUP_NAMESPACE: solo-cluster
          SOLO_DEPLOYMENT: solo-deployment
        run: |
          set -euo pipefail
          kind create cluster -n "${SOLO_CLUSTER_NAME}"
          solo one-shot single deploy | tee solo-deploy.log

      - name: Destroy Solo deployment
        env:
          SOLO_DEPLOYMENT: solo-deployment
        run: |
          set -euo pipefail
          solo one-shot single destroy --deployment "${SOLO_DEPLOYMENT}"

      - name: Delete Kind cluster
        env:
          SOLO_CLUSTER_NAME: solo
        run: |
          set -euo pipefail
          kind delete cluster -n "${SOLO_CLUSTER_NAME}"

7 - One-Shot Deploy on a GitHub-hosted Runner

Deploy a full Solo network on a standard GitHub-hosted Ubuntu runner using the one-shot single deploy command. No self-hosted runner or pre-provisioned cluster required.

Deploy Solo on a Standard GitHub Runner

This guide is for developers who want to deploy a Solo network in CI to run integration tests against a live Hedera network from their own project. It uses the standard ubuntu-latest GitHub-hosted runner and the Solo CLI installed via Homebrew.

For the hardware specs that runner provides, see GitHub’s documentation on standard hosted runners.


How It Works

Solo’s one-shot deploy is self-contained. You do not need to:

  • Pre-create a Kind cluster
  • Install Helm separately
  • Run solo init manually

The command handles cluster provisioning, tool installation, and full network deployment internally, then exits when every component is healthy.

GitHub Runner (ubuntu-latest)
  └─► solo one-shot single deploy
        ├─► Kind cluster created automatically
        ├─► Consensus Node deployed and started
        ├─► Mirror Node deployed and started
        ├─► Explorer deployed and started
        └─► JSON-RPC Relay deployed and started

Example Workflow

name: "Integration Tests"

on:
  pull_request:
    types: [opened, reopened, synchronize, ready_for_review]

defaults:
  run:
    shell: bash

permissions:
  contents: read

jobs:
  integration-tests:
    name: Integration Tests
    runs-on: ubuntu-latest
    timeout-minutes: 20
    steps:
      - name: Checkout Code
        uses: actions/checkout@v4

      - name: Install Solo CLI
        run: |
          brew install hiero-ledger/tools/solo
          solo --version

      - name: One-Shot Single Deploy
        run: solo one-shot single deploy

      - name: Verify Mirror REST API
        timeout-minutes: 5
        run: |
          echo "Waiting for mirror node REST API..."
          for i in $(seq 1 30); do
            response=$(curl -sf http://localhost:38081/api/v1/accounts 2>/dev/null || true)
            if echo "${response}" | grep -q '"accounts"'; then
              echo "Mirror REST API is up."
              exit 0
            fi
            echo "Attempt ${i}/30: not ready, retrying in 10s..."
            sleep 10
          done
          echo "ERROR: Mirror REST API did not become available."
          exit 1

      # Add your integration test steps here

      - name: One-Shot Single Destroy
        if: always()
        run: solo one-shot single destroy --quiet-mode || true

      - name: Upload Logs
        if: always()
        uses: actions/upload-artifact@v4
        with:
          name: solo-logs
          path: ~/.solo/logs/*
          overwrite: true
          if-no-files-found: warn

8 - Run Performance Tests Locally

Run Solo E2E performance tests locally, including setup, execution, optional local build path configuration, and branch workflow triggering.

Overview

This guide shows how to run the Solo E2E performance test on a local machine.

Prerequisites

  • task, node, npm, kubectl, and kind installed
  • Docker running
  • Solo dependencies installed (npm ci)

Run the Performance Test

From the repository root:

task test-setup
task test-e2e-performance

The test uses one-shot single deploy/destroy flow and then runs rapid-fire load tests.

Optional: Use a Local Consensus Node Build

If you already have a local consensus node build, set SOLO_LOCAL_BUILD_PATH so commands that consume --local-build-path can use it by default:

export SOLO_LOCAL_BUILD_PATH="/absolute/path/to/hiero-consensus-node/hedera-node/data"
task test-setup
task test-e2e-performance

Optional: Shorten Test Duration

You can shorten load-test duration while iterating:

export ONE_SHOT_METRICS_TEST_DURATION_IN_MINUTES=2
task test-e2e-performance

Run the GitHub Performance Workflow for a Branch

You can run the repository performance workflow against any pushed Solo branch.

Option 1: Using gh CLI

export SOLO_BRANCH="<your-branch-name>"
gh workflow run "Performance Test Solo Deployment" --ref "${SOLO_BRANCH}" --repo hiero-ledger/solo

Watch the latest run for that branch:

RUN_ID=$(gh run list --workflow "Performance Test Solo Deployment" --branch "${SOLO_BRANCH}" --limit 1 --json databaseId -q '.[0].databaseId')
gh run watch "${RUN_ID}" --repo hiero-ledger/solo

Option 2: Using GitHub Web UI

  1. Open https://github.com/hiero-ledger/solo/actions/workflows/flow-performance-test.yaml.
  2. Click Run workflow.
  3. Select your branch in the branch dropdown.
  4. Click Run workflow to start the run.

9 - CLI Reference

Canonical Solo CLI command and flag reference, including migration guidance from legacy command paths. Use this section to look up Solo commands, subcommands, and flags.

9.1 - Solo CLI Reference

Canonical Solo CLI command and flag reference for end users.

Overview

This page is the canonical command reference for the Solo CLI.

  • Use it to look up command paths, subcommands, and flags.
  • Use solo <command> --help and solo <command> <subcommand> --help for runtime help on your installed version.
  • For legacy command mappings, see CLI Migration Reference.

Output Formats (--output, -o)

Solo supports machine-readable output for version output and for command execution flows that honor the output format flag.

solo --version -o json
solo --version -o yaml
solo --version -o wide

Expected formats:

  • json: JSON object output.
  • yaml: YAML output.
  • wide: plain text value-oriented output.

Global Flags

Global flags shown in root help:

  • --dev: enable developer mode.
  • --force-port-forward: force port forwarding for network services.
  • -v, --version: print Solo version.

Command and Flag Reference

The sections below are generated from Solo CLI help output using the implementation on hiero-ledger/solo.

Version Output

******************************* Solo *********************************************
Version			: 0.80.0
**********************************************************************************

Root Help Output

Usage:
  solo <command> [options]

Commands:
  init         Initialize local environment
  config       Backup and restore component configurations for Solo deployments. These commands display what would be backed up or restored without performing actual operations.
  block        Block Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.
  cluster-ref  Manages the relationship between Kubernetes context names and Solo cluster references which are an alias for a kubernetes context.
  consensus    Consensus Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.
  deployment   Create, modify, and delete deployment configurations. Deployments are required for most of the other commands.
  explorer     Explorer Node operations for creating, modifying, and destroying resources.These commands require the presence of an existing deployment.
  keys         Consensus key generation operations
  ledger       System, Account, and Crypto ledger-based management operations. These commands require an operational set of consensus nodes and may require an operational mirror node.
  mirror       Mirror Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.
  relay        RPC Relay Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.
  cache        Manage solo cached items.
  one-shot     One Shot commands for new and returning users who need a preset environment type. These commands use reasonable defaults to provide a single command out of box experience.
  rapid-fire   Commands for performing load tests a Solo deployment

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

init

 init

Initialize local environment

Options:

                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-u,  --user                Optional user name used for     [string]                                      
                           local configuration. Only                                                     
                           accepts letters and numbers.                                                  
                           Defaults to the username                                                      
                           provided by the OS                                                            
-v,  --version             Show version number             [boolean]                                     

config

 config

Backup and restore component configurations for Solo deployments. These commands display what would be backed up or restored without performing actual operations.

Commands:
  config ops   Configuration backup and restore operations

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

config ops

 config ops

Configuration backup and restore operations

Commands:
  config ops backup             Create a backup for all component configurations of a deployment. Create a zip file with configuration and log data.Export states, configmaps and secrets
  config ops restore-config     Restore component configurations from backup. Imports ConfigMaps, Secrets, logs, and state files for a running deployment.
  config ops restore-clusters   Restore Kind clusters from backup directory structure. Creates clusters, sets up Docker network, installs MetalLB, and initializes cluster configurations. Does not deploy network components.
  config ops restore-network    Deploy network components to existing clusters from backup. Deploys consensus nodes, block nodes, mirror nodes, explorers, and relay nodes. Requires clusters to be already created (use restore-clusters first).

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

config ops backup

 config ops backup

Create a backup for all component configurations of a deployment. Create a zip file with configuration and log data.Export states, configmaps and secrets

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --output-dir          Path to the directory where     [string]                  
                           the command context will be                               
                           saved to                                                  
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 
     --zip-file            Path to the encrypted backup    [string]                  
                           ZIP archive used during                                   
                           restore                                                   
     --zip-password        Password to encrypt generated   [string]                  
                           backup ZIP archives                                       

config ops restore-config

 config ops restore-config

Restore component configurations from backup. Imports ConfigMaps, Secrets, logs, and state files for a running deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --input-dir           Path to the directory where     [string]                  
                           the command context will be                               
                           loaded from                                               
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

config ops restore-clusters

 config ops restore-clusters

Restore Kind clusters from backup directory structure. Creates clusters, sets up Docker network, installs MetalLB, and initializes cluster configurations. Does not deploy network components.

Options:

     --input-dir           Path to the directory where     [string] [required]                               
                           the command context will be                                                       
                           loaded from                                                                       
                                                                                                             
     --dev                 Enable developer mode           [boolean] [default: false]                        
     --force-port-forward  Force port forward to access    [boolean] [default: true]                         
                           the network services                                                              
     --metallb-config      Path pattern for MetalLB        [string] [default: "metallb-cluster-{index}.yaml"]
                           configuration YAML files                                                          
                           (supports {index} placeholder                                                     
                           for cluster number)                                                               
     --options-file        Path to YAML file containing    [string]                                          
                           component-specific deployment                                                     
                           options (consensus, block,                                                        
                           mirror, relay, explorer)                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                        
                           confirmation                                                                      
-v,  --version             Show version number             [boolean]                                         
     --zip-file            Path to the encrypted backup    [string]                                          
                           ZIP archive used during                                                           
                           restore                                                                           
     --zip-password        Password to encrypt generated   [string]                                          
                           backup ZIP archives                                                               

config ops restore-network

 config ops restore-network

Deploy network components to existing clusters from backup. Deploys consensus nodes, block nodes, mirror nodes, explorers, and relay nodes. Requires clusters to be already created (use restore-clusters first).

Options:

     --input-dir           Path to the directory where     [string] [required]       
                           the command context will be                               
                           loaded from                                               
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --options-file        Path to YAML file containing    [string]                  
                           component-specific deployment                             
                           options (consensus, block,                                
                           mirror, relay, explorer)                                  
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
     --realm               Realm number. Requires          [number] [default: 0]     
                           network-node > v61.0 for                                  
                           non-zero values                                           
     --shard               Shard number. Requires          [number] [default: 0]     
                           network-node > v61.0 for                                  
                           non-zero values                                           
-v,  --version             Show version number             [boolean]                 

block

 block

Block Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.

Commands:
  block node   Create, manage, or destroy block node instances. Operates on a single block node instance at a time.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

block node

 block node

Create, manage, or destroy block node instances. Operates on a single block node instance at a time.

Commands:
  block node add               Creates and configures a new block node instance for the specified deployment using the specified Kubernetes cluster. The cluster must be accessible and attached to the specified deployment.
  block node destroy           Destroys a single block node instance in the specified deployment. Requires access to all Kubernetes clusters attached to the deployment.
  block node upgrade           Upgrades a single block node instance in the specified deployment. Requires access to all Kubernetes clusters attached to the deployment.
  block node add-external      Add an external block node for the specified deployment. You can specify the priority and consensus nodes to which to connect or use the default settings.
  block node delete-external   Deletes an external block node from the specified deployment.
  block node collect-jfr       Downloads the Java Flight Recorder recording from a block node instance in the specified deployment to the local solo logs directory. Requires the block node to have been deployed with Java Flight Recorder enabled.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

block node add

 block node add

Creates and configures a new block node instance for the specified deployment using the specified Kubernetes cluster. The cluster must be accessible and attached to the specified deployment.

Options:

-d,  --deployment                                The name the user will          [string] [required]                                                                                           
                                                 reference locally to link to a                                                                                                                
                                                 deployment                                                                                                                                    
                                                                                                                                                                                               
     --block-node-chart-dir                      Block node local chart          [string]                                                                                                      
                                                 directory path (e.g.                                                                                                                          
                                                 ~/hiero-block-node/charts)                                                                                                                    
     --block-node-message-size-hard-limit-bytes  Hard limit, in bytes, for       [number]                                                                                                      
                                                 block node connection message                                                                                                                 
                                                 size in block-nodes.json                                                                                                                      
     --block-node-message-size-soft-limit-bytes  Soft limit, in bytes, for       [number]                                                                                                      
                                                 block node connection message                                                                                                                 
                                                 size in block-nodes.json                                                                                                                      
     --block-node-tss-overlay                    Force-apply block-node TSS      [boolean] [default: false]                                                                                    
                                                 values overlay when deploying                                                                                                                 
                                                 block nodes before consensus                                                                                                                  
                                                 deployment sets tssEnabled in                                                                                                                 
                                                 remote config.                                                                                                                                
     --block-node-version                        Block node version to deploy    [string]                                                                                                      
                                                 for (e.g. v0.31.0 or 0.31.0).                                                                                                                 
     --chart-dir                                 Local chart directory path      [string]                                                                                                      
                                                 (e.g. ~/solo-charts/charts)                                                                                                                   
     --chart-version                             DEPRECATED: use                 [string] [default: "0.36.0"]                                                                                  
                                                 --block-node-version                                                                                                                          
-c,  --cluster-ref                               The cluster reference that      [string]                                                                                                      
                                                 will be used for referencing                                                                                                                  
                                                 the Kubernetes cluster and                                                                                                                    
                                                 stored in the local and remote                                                                                                                
                                                 configuration for the                                                                                                                         
                                                 deployment.  For commands that                                                                                                                
                                                 take multiple clusters they                                                                                                                   
                                                 can be separated by commas.                                                                                                                   
     --component-image                           ,  --relay-image                [string]                                                                                                      
                                                 Docker image override. Accepts                                                                                                                
                                                 a registry reference (e.g.                                                                                                                    
                                                 ghcr.io/hiero-ledger/block-node-server:0.36.0) or a local reference (e.g. block-node-server:0.36.0-SNAPSHOT). Local images found in Docker are automatically loaded into the Kind cluster.                                                                                                                
     --consensus-node-version                    Consensus node version to       [string]                                                                                                      
                                                 deploy (e.g. v0.73.0 or                                                                                                                       
                                                 0.73.0).                                                                                                                                      
     --dev                                       Enable developer mode           [boolean] [default: false]                                                                                    
     --domain-name                               Custom domain name              [string]                                                                                                      
     --enable-ingress                            enable ingress on the           [boolean] [default: false]                                                                                    
                                                 component/pod                                                                                                                                 
     --force-port-forward                        Force port forward to access    [boolean] [default: true]                                                                                     
                                                 the network services                                                                                                                          
     --image-tag                                                                 [Deprecated] Use  --component-image  instead. Overrides the Docker image tag (e.g. 0.36.0-SNAPSHOT).  [string]
     --priority-mapping                          Configure block node priority   [string]                                                                                                      
                                                 mapping. Unlisted nodes will                                                                                                                  
                                                 not be routed to a block node                                                                                                                 
                                                 Default: all consensus nodes                                                                                                                  
                                                 included, first node priority                                                                                                                 
                                                 is 2. Example:                                                                                                                                
                                                 "priority-mapping                                                                                                                             
                                                 node1=2,node2=1"                                                                                                                              
-q,  --quiet-mode                                Quiet mode, do not prompt for   [boolean] [default: false]                                                                                    
                                                 confirmation                                                                                                                                  
-t,  --release-tag                               DEPRECATED: use                 [string] [default: "v0.74.0"]                                                                                 
                                                 --consensus-node-version                                                                                                                      
                                                 (e.g. v0.74.0)                                                                                                                                
-f,  --values-file                               Comma separated chart values    [string]                                                                                                      
                                                 file                                                                                                                                          
-v,  --version                                   Show version number             [boolean]                                                                                                     

block node destroy

 block node destroy

Destroys a single block node instance in the specified deployment. Requires access to all Kubernetes clusters attached to the deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --chart-dir           Local chart directory path      [string]                  
                           (e.g. ~/solo-charts/charts)                               
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force               Force actions even if those     [boolean] [default: false]
                           can be skipped                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --id                  The numeric identifier for the  [number]                  
                           component                                                 
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

block node upgrade

 block node upgrade

Upgrades a single block node instance in the specified deployment. Requires access to all Kubernetes clusters attached to the deployment.

Options:

-d,  --deployment            The name the user will          [string] [required]       
                             reference locally to link to a                            
                             deployment                                                
                                                                                       
     --block-node-chart-dir  Block node local chart          [string]                  
                             directory path (e.g.                                      
                             ~/hiero-block-node/charts)                                
     --chart-dir             Local chart directory path      [string]                  
                             (e.g. ~/solo-charts/charts)                               
-c,  --cluster-ref           The cluster reference that      [string]                  
                             will be used for referencing                              
                             the Kubernetes cluster and                                
                             stored in the local and remote                            
                             configuration for the                                     
                             deployment.  For commands that                            
                             take multiple clusters they                               
                             can be separated by commas.                               
     --dev                   Enable developer mode           [boolean] [default: false]
     --force                 Force actions even if those     [boolean] [default: false]
                             can be skipped                                            
     --force-port-forward    Force port forward to access    [boolean] [default: true] 
                             the network services                                      
     --id                    The numeric identifier for the  [number]                  
                             component                                                 
-q,  --quiet-mode            Quiet mode, do not prompt for   [boolean] [default: false]
                             confirmation                                              
     --upgrade-version       Version to be used for the      [string]                  
                             upgrade                                                   
-f,  --values-file           Comma separated chart values    [string]                  
                             file                                                      
-v,  --version               Show version number             [boolean]                 

block node add-external

 block node add-external

Add an external block node for the specified deployment. You can specify the priority and consensus nodes to which to connect or use the default settings.

Options:

     --address                                   Provide external block node     [string] [required]       
                                                 address (IP or domain), with                              
                                                 optional port (Default port:                              
                                                 40840) Examples: " --address                              
                                                 localhost:8080", " --address                              
                                                 192.0.0.1"                                                
-d,  --deployment                                The name the user will          [string] [required]       
                                                 reference locally to link to a                            
                                                 deployment                                                
                                                                                                           
     --block-node-message-size-hard-limit-bytes  Hard limit, in bytes, for       [number]                  
                                                 block node connection message                             
                                                 size in block-nodes.json                                  
     --block-node-message-size-soft-limit-bytes  Soft limit, in bytes, for       [number]                  
                                                 block node connection message                             
                                                 size in block-nodes.json                                  
-c,  --cluster-ref                               The cluster reference that      [string]                  
                                                 will be used for referencing                              
                                                 the Kubernetes cluster and                                
                                                 stored in the local and remote                            
                                                 configuration for the                                     
                                                 deployment.  For commands that                            
                                                 take multiple clusters they                               
                                                 can be separated by commas.                               
     --dev                                       Enable developer mode           [boolean] [default: false]
     --force-port-forward                        Force port forward to access    [boolean] [default: true] 
                                                 the network services                                      
     --priority-mapping                          Configure block node priority   [string]                  
                                                 mapping. Unlisted nodes will                              
                                                 not be routed to a block node                             
                                                 Default: all consensus nodes                              
                                                 included, first node priority                             
                                                 is 2. Example:                                            
                                                 "priority-mapping                                         
                                                 node1=2,node2=1"                                          
-q,  --quiet-mode                                Quiet mode, do not prompt for   [boolean] [default: false]
                                                 confirmation                                              
-v,  --version                                   Show version number             [boolean]                 

block node delete-external

 block node delete-external

Deletes an external block node from the specified deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force               Force actions even if those     [boolean] [default: false]
                           can be skipped                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --id                  The numeric identifier for the  [number]                  
                           component                                                 
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

block node collect-jfr

 block node collect-jfr

Downloads the Java Flight Recorder recording from a block node instance in the specified deployment to the local solo logs directory. Requires the block node to have been deployed with Java Flight Recorder enabled.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --id                  The numeric identifier for the  [number]                  
                           component                                                 
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

cluster-ref

 cluster-ref

Manages the relationship between Kubernetes context names and Solo cluster references which are an alias for a kubernetes context.

Commands:
  cluster-ref config   List, create, manage, and remove associations between Kubernetes contexts and Solo cluster references.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

cluster-ref config

 cluster-ref config

List, create, manage, and remove associations between Kubernetes contexts and Solo cluster references.

Commands:
  cluster-ref config connect      Creates a new internal Solo cluster name to a Kubernetes context or maps a Kubernetes context to an existing internal Solo cluster reference
  cluster-ref config disconnect   Removes the Kubernetes context associated with an internal Solo cluster reference.
  cluster-ref config list         Lists the configured Kubernetes context to Solo cluster reference mappings.
  cluster-ref config info         Displays the status information and attached deployments for a given Solo cluster reference mapping.
  cluster-ref config setup        Setup cluster with shared components
  cluster-ref config reset        Uninstall shared components from cluster

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

cluster-ref config connect

 cluster-ref config connect

Creates a new internal Solo cluster name to a Kubernetes context or maps a Kubernetes context to an existing internal Solo cluster reference

Options:

-c,  --cluster-ref         The cluster reference that      [string] [required]       
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --context             The Kubernetes context name to  [string] [required]       
                           be used                                                   
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

cluster-ref config disconnect

 cluster-ref config disconnect

Removes the Kubernetes context associated with an internal Solo cluster reference.

Options:

-c,  --cluster-ref         The cluster reference that      [string] [required]       
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

cluster-ref config list

 cluster-ref config list

Lists the configured Kubernetes context to Solo cluster reference mappings.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

cluster-ref config info

 cluster-ref config info

Displays the status information and attached deployments for a given Solo cluster reference mapping.

Options:

-c,  --cluster-ref         The cluster reference that      [string] [required]       
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

cluster-ref config setup

 cluster-ref config setup

Setup cluster with shared components

Options:

                                                                                                
     --chart-dir                Local chart directory path      [string]                        
                                (e.g. ~/solo-charts/charts)                                     
-c,  --cluster-ref              The cluster reference that      [string]                        
                                will be used for referencing                                    
                                the Kubernetes cluster and                                      
                                stored in the local and remote                                  
                                configuration for the                                           
                                deployment.  For commands that                                  
                                take multiple clusters they                                     
                                can be separated by commas.                                     
-s,  --cluster-setup-namespace  Cluster Setup Namespace         [string] [default: "solo-setup"]
     --dev                      Enable developer mode           [boolean] [default: false]      
     --force-port-forward       Force port forward to access    [boolean] [default: true]       
                                the network services                                            
     --metrics-server           Deploy metrics server to        [boolean] [default: false]      
                                enable kubectl top for CPU and                                  
                                memory usage monitoring                                         
     --minio                    Deploy minio operator           [boolean] [default: true]       
     --prometheus-stack         Deploy prometheus stack         [boolean] [default: false]      
-q,  --quiet-mode               Quiet mode, do not prompt for   [boolean] [default: false]      
                                confirmation                                                    
     --solo-chart-version       Solo testing chart version      [string] [default: "0.64.0"]    
-v,  --version                  Show version number             [boolean]                       

cluster-ref config reset

 cluster-ref config reset

Uninstall shared components from cluster

Options:

-c,  --cluster-ref              The cluster reference that      [string] [required]             
                                will be used for referencing                                    
                                the Kubernetes cluster and                                      
                                stored in the local and remote                                  
                                configuration for the                                           
                                deployment.  For commands that                                  
                                take multiple clusters they                                     
                                can be separated by commas.                                     
                                                                                                
-s,  --cluster-setup-namespace  Cluster Setup Namespace         [string] [default: "solo-setup"]
     --dev                      Enable developer mode           [boolean] [default: false]      
     --force                    Force actions even if those     [boolean] [default: false]      
                                can be skipped                                                  
     --force-port-forward       Force port forward to access    [boolean] [default: true]       
                                the network services                                            
-q,  --quiet-mode               Quiet mode, do not prompt for   [boolean] [default: false]      
                                confirmation                                                    
-v,  --version                  Show version number             [boolean]                       

consensus

 consensus

Consensus Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.

Commands:
  consensus network            Ledger/network wide consensus operations such as freeze, upgrade, and deploy. Operates on the entire ledger and all consensus node instances.
  consensus node               List, create, manage, or destroy consensus node instances. Operates on a single consensus node instance at a time.
  consensus state              List, download, and upload consensus node state backups to/from individual consensus node instances.
  consensus dev-node-add       Dev operations for adding consensus nodes.
  consensus dev-node-update    Dev operations for updating consensus nodes
  consensus dev-node-upgrade   Dev operations for upgrading consensus nodes
  consensus dev-node-delete    Dev operations for delete consensus nodes
  consensus dev-freeze         Dev operations for freezing consensus nodes

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus network

 consensus network

Ledger/network wide consensus operations such as freeze, upgrade, and deploy. Operates on the entire ledger and all consensus node instances.

Commands:
  consensus network deploy    Installs and configures all consensus nodes for the deployment.
  consensus network destroy   Removes all consensus network components from the deployment.
  consensus network freeze    Initiates a network freeze for scheduled maintenance or upgrades
  consensus network upgrade   Upgrades the software version running on all consensus nodes.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus network deploy

 consensus network deploy

Installs and configures all consensus nodes for the deployment.

Options:

-d,  --deployment                                The name the user will          [string] [required]                                      
                                                 reference locally to link to a                                                           
                                                 deployment                                                                               
                                                                                                                                          
     --api-permission-properties                 api-permission.properties file  [string] [default: "templates/api-permission.properties"]
                                                 for node                                                                                 
     --app                                       Testing app name                [string] [default: "HederaNode.jar"]                     
     --application-env                           the application.env file for    [string] [default: "templates/application.env"]          
                                                 the node provides environment                                                            
                                                 variables to the                                                                         
                                                 solo-container to be used when                                                           
                                                 the hedera platform is started                                                           
     --application-properties                    application.properties file     [string] [default: "templates/application.properties"]   
                                                 for node (default merges with                                                            
                                                 Solo defaults; add comment                                                               
                                                 'SOLO_ENABLE_OVERWRITE=true'                                                             
                                                 in the file to use overwrite                                                             
                                                 mode)                                                                                    
     --aws-bucket                                name of aws storage bucket      [string]                                                 
     --aws-bucket-prefix                         path prefix of aws storage      [string]                                                 
                                                 bucket                                                                                   
     --aws-bucket-region                         name of aws bucket region       [string]                                                 
     --aws-endpoint                              aws storage endpoint URL        [string]                                                 
     --aws-write-access-key                      aws storage access key for      [string]                                                 
                                                 write access                                                                             
     --aws-write-secrets                         aws storage secret key for      [string]                                                 
                                                 write access                                                                             
     --backup-bucket                             name of bucket for backing up   [string]                                                 
                                                 state files                                                                              
     --backup-endpoint                           backup storage endpoint URL     [string]                                                 
     --backup-provider                           backup storage service          [string] [default: "GCS"]                                
                                                 provider, GCS or AWS                                                                     
     --backup-region                             backup storage region           [string] [default: "us-central1"]                        
     --backup-write-access-key                   backup storage access key for   [string]                                                 
                                                 write access                                                                             
     --backup-write-secrets                      backup storage secret key for   [string]                                                 
                                                 write access                                                                             
     --block-node-message-size-hard-limit-bytes  Hard limit, in bytes, for       [number]                                                 
                                                 block node connection message                                                            
                                                 size in block-nodes.json                                                                 
     --block-node-message-size-soft-limit-bytes  Soft limit, in bytes, for       [number]                                                 
                                                 block node connection message                                                            
                                                 size in block-nodes.json                                                                 
     --bootstrap-properties                      bootstrap.properties file for   [string] [default: "templates/bootstrap.properties"]     
                                                 node                                                                                     
     --cache-dir                                 Local cache directory           [string] [default: "/home/runner/.solo/cache"]           
-l,  --chain-id                                  Chain ID                        [string] [default: "298"]                                
     --chart-dir                                 Local chart directory path      [string]                                                 
                                                 (e.g. ~/solo-charts/charts)                                                              
     --consensus-node-version                    Consensus node version to       [string]                                                 
                                                 deploy (e.g. v0.73.0 or                                                                  
                                                 0.73.0).                                                                                 
     --debug-node-alias                          Enable default jvm debug port   [string]                                                 
                                                 (5005) for the given node id                                                             
     --dev                                       Enable developer mode           [boolean] [default: false]                               
     --domain-names                              Custom domain names for         [string]                                                 
                                                 consensus nodes mapping for                                                              
                                                 the(e.g. node0=domain.name                                                               
                                                 where key is node alias and                                                              
                                                 value is domain name)with                                                                
                                                 multiple nodes comma separated                                                           
     --enable-monitoring-support                 Enables CRDs for Prometheus     [boolean] [default: true]                                
                                                 and Grafana.                                                                             
     --envoy-ips                                 IP mapping where key = value    [string]                                                 
                                                 is node alias and static ip                                                              
                                                 for envoy proxy, (e.g.:                                                                  
                                                 --envoy-ips                                                                              
                                                 node1=127.0.0.1,node2=127.0.0.1)                                                           
     --force-port-forward                        Force port forward to access    [boolean] [default: true]                                
                                                 the network services                                                                     
     --gcs-bucket                                name of gcs storage bucket      [string]                                                 
     --gcs-bucket-prefix                         path prefix of google storage   [string]                                                 
                                                 bucket                                                                                   
     --gcs-endpoint                              gcs storage endpoint URL        [string]                                                 
     --gcs-write-access-key                      gcs storage access key for      [string]                                                 
                                                 write access                                                                             
     --gcs-write-secrets                         gcs storage secret key for      [string]                                                 
                                                 write access                                                                             
     --genesis-throttles-file                    throttles.json file used        [string]                                                 
                                                 during network genesis                                                                   
     --grpc-tls-cert                             TLS Certificate path for the    [string]                                                 
                                                 gRPC (e.g.                                                                               
                                                 "node1=/Users/username/node1-grpc.cert" with multiple nodes comma separated)                                                           
     --grpc-tls-key                              TLS Certificate key path for    [string]                                                 
                                                 the gRPC (e.g.                                                                           
                                                 "node1=/Users/username/node1-grpc.key" with multiple nodes comma separated)                                                           
     --grpc-web-tls-cert                         TLS Certificate path for gRPC   [string]                                                 
                                                 Web (e.g.                                                                                
                                                 "node1=/Users/username/node1-grpc-web.cert" with multiple nodes comma separated)                                                           
     --grpc-web-tls-key                          TLC Certificate key path for    [string]                                                 
                                                 gRPC Web (e.g.                                                                           
                                                 "node1=/Users/username/node1-grpc-web.key" with multiple nodes comma separated)                                                           
     --haproxy-ips                               IP mapping where key = value    [string]                                                 
                                                 is node alias and static ip                                                              
                                                 for haproxy, (e.g.:                                                                      
                                                 --haproxy-ips                                                                            
                                                 node1=127.0.0.1,node2=127.0.0.1)                                                           
     --jfr-config                                Java Flight Recorder            [string]                                                 
                                                 configuration file path                                                                  
     --load-balancer                             Enable load balancer for        [boolean] [default: false]                               
                                                 network node proxies                                                                     
     --log4j2-xml                                log4j2.xml file for node        [string] [default: "templates/log4j2.xml"]               
-i,  --node-aliases                              Comma separated node aliases    [string]                                                 
                                                 (empty means all nodes)                                                                  
     --pod-log                                   Install PodLog custom resource  [boolean] [default: false]                               
                                                 for monitoring Network Node                                                              
                                                 pod logs                                                                                 
     --pvcs                                      Enable persistent volume        [boolean] [default: false]                               
                                                 claims to store data outside                                                             
                                                 the pod, required for                                                                    
                                                 consensus node add                                                                       
-q,  --quiet-mode                                Quiet mode, do not prompt for   [boolean] [default: false]                               
                                                 confirmation                                                                             
-t,  --release-tag                               DEPRECATED: use                 [string] [default: "v0.74.0"]                            
                                                 --consensus-node-version                                                                 
                                                 (e.g. v0.74.0)                                                                           
     --service-monitor                           Install ServiceMonitor custom   [boolean] [default: false]                               
                                                 resource for monitoring                                                                  
                                                 Network Node metrics                                                                     
     --settings-txt                              settings.txt file for node      [string] [default: "templates/settings.txt"]             
     --solo-chart-version                        Solo testing chart version      [string] [default: "0.64.0"]                             
     --storage-type                              storage type for saving stream  [default: "minio_only"]                                  
                                                 files, available options are                                                             
                                                 minio_only, aws_only,                                                                    
                                                 gcs_only, aws_and_gcs                                                                    
     --tss                                       Enable hinTS/TSS (CN >=         [boolean] [default: true]                                
                                                 v0.74).                                                                                  
-f,  --values-file                               Comma separated chart values    [string]                                                 
                                                 file paths for each cluster                                                              
                                                 (e.g.                                                                                    
                                                 values.yaml,cluster-1=./a/b/values1.yaml,cluster-2=./a/b/values2.yaml)                                                           
-v,  --version                                   Show version number             [boolean]                                                
     --wraps                                     Enable recursive WRAPs          [boolean] [default: false]                               
                                                 aggregation for hinTS/TSS (CN                                                            
                                                 >= v0.72).                                                                               
     --wraps-key-path                            Path to a local directory       [string]                                                 
                                                 containing pre-existing WRAPs                                                            
                                                 proving key files (.bin)                                                                 

consensus network destroy

 consensus network destroy

Removes all consensus network components from the deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --delete-pvcs         Delete the persistent volume    [boolean] [default: false]
                           claims. If both  --delete-pvcs                            
                            and  --delete-secrets  are                               
                           set to true, the namespace                                
                           will be deleted.                                          
     --delete-secrets      Delete the network secrets. If  [boolean] [default: false]
                           both  --delete-pvcs  and                                  
                           --delete-secrets  are set to                              
                           true, the namespace will be                               
                           deleted.                                                  
     --dev                 Enable developer mode           [boolean] [default: false]
     --enable-timeout      enable time out for running a   [boolean] [default: false]
                           command                                                   
     --force               Force actions even if those     [boolean] [default: false]
                           can be skipped                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

consensus network freeze

 consensus network freeze

Initiates a network freeze for scheduled maintenance or upgrades

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

consensus network upgrade

 consensus network upgrade

Upgrades the software version running on all consensus nodes.

Options:

-d,  --deployment                 The name the user will          [string] [required]                                      
                                  reference locally to link to a                                                           
                                  deployment                                                                               
                                                                                                                           
     --api-permission-properties  api-permission.properties file  [string] [default: "templates/api-permission.properties"]
                                  for node                                                                                 
     --app                        Testing app name                [string] [default: "HederaNode.jar"]                     
     --application-env            the application.env file for    [string] [default: "templates/application.env"]          
                                  the node provides environment                                                            
                                  variables to the                                                                         
                                  solo-container to be used when                                                           
                                  the hedera platform is started                                                           
     --application-properties     application.properties file     [string] [default: "templates/application.properties"]   
                                  for node (default merges with                                                            
                                  Solo defaults; add comment                                                               
                                  'SOLO_ENABLE_OVERWRITE=true'                                                             
                                  in the file to use overwrite                                                             
                                  mode)                                                                                    
     --bootstrap-properties       bootstrap.properties file for   [string] [default: "templates/bootstrap.properties"]     
                                  node                                                                                     
     --cache-dir                  Local cache directory           [string] [default: "/home/runner/.solo/cache"]           
     --chart-dir                  Local chart directory path      [string]                                                 
                                  (e.g. ~/solo-charts/charts)                                                              
     --debug-node-alias           Enable default jvm debug port   [string]                                                 
                                  (5005) for the given node id                                                             
     --dev                        Enable developer mode           [boolean] [default: false]                               
     --force                      Force actions even if those     [boolean] [default: false]                               
                                  can be skipped                                                                           
     --force-port-forward         Force port forward to access    [boolean] [default: true]                                
                                  the network services                                                                     
     --local-build-path           path of hedera local repo       [string]                                                 
     --log4j2-xml                 log4j2.xml file for node        [string] [default: "templates/log4j2.xml"]               
-i,  --node-aliases               Comma separated node aliases    [string]                                                 
                                  (empty means all nodes)                                                                  
-q,  --quiet-mode                 Quiet mode, do not prompt for   [boolean] [default: false]                               
                                  confirmation                                                                             
     --settings-txt               settings.txt file for node      [string] [default: "templates/settings.txt"]             
     --solo-chart-version         Solo testing chart version      [string] [default: "0.64.0"]                             
     --upgrade-version            Version to be used for the      [string]                                                 
                                  upgrade                                                                                  
     --upgrade-zip-file           A zipped file used for network  [string]                                                 
                                  upgrade                                                                                  
-f,  --values-file                Comma separated chart values    [string]                                                 
                                  file paths for each cluster                                                              
                                  (e.g.                                                                                    
                                  values.yaml,cluster-1=./a/b/values1.yaml,cluster-2=./a/b/values2.yaml)                                                           
-v,  --version                    Show version number             [boolean]                                                
     --wraps-key-path             Path to a local directory       [string]                                                 
                                  containing pre-existing WRAPs                                                            
                                  proving key files (.bin)                                                                 

consensus node

 consensus node

List, create, manage, or destroy consensus node instances. Operates on a single consensus node instance at a time.

Commands:
  consensus node setup         Setup node with a specific version of Hedera platform
  consensus node start         Start a node
  consensus node stop          Stop a node
  consensus node restart       Restart all nodes of the network
  consensus node refresh       Reset and restart a node
  consensus node add           Adds a node with a specific version of Hedera platform
  consensus node update        Update a node with a specific version of Hedera platform
  consensus node destroy       Delete a node with a specific version of Hedera platform
  consensus node collect-jfr   Collect Java Flight Recorder (JFR) files from a node for diagnostics and performance analysis. Requires the node to be running with Java Flight Recorder enabled.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus node setup

 consensus node setup

Setup node with a specific version of Hedera platform

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
                                                                                                             
     --admin-public-keys       Comma separated list of DER     [string]                                      
                               encoded ED25519 public keys                                                   
                               and must match the order of                                                   
                               the node aliases                                                              
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --app-config              json config file of testing     [string]                                      
                               app                                                                           
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --local-build-path        path of hedera local repo       [string]                                      
-i,  --node-aliases            Comma separated node aliases    [string]                                      
                               (empty means all nodes)                                                       
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
-v,  --version                 Show version number             [boolean]                                     

consensus node start

 consensus node start

Start a node

Options:

-d,  --deployment          The name the user will          [string] [required]                                                      
                           reference locally to link to a                                                                           
                           deployment                                                                                               
                                                                                                                                    
     --app                 Testing app name                [string] [default: "HederaNode.jar"]                                     
     --debug-node-alias    Enable default jvm debug port   [string]                                                                 
                           (5005) for the given node id                                                                             
     --dev                 Enable developer mode           [boolean] [default: false]                                               
     --external-address    Bind address for kubectl        [string]                                                                 
                           port-forward (for example                                                                                
                           127.0.0.1 or 0.0.0.0)                                                                                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                                                
                           the network services                                                                                     
     --grpc-web-endpoints  Configure gRPC Web endpoints    [Format: <alias>=<address>[:<port>][,<alias>=<address>[:<port>]]][string]
                           mapping, comma separated                                                                                 
                           (Default port: 8080) (Aliases                                                                            
                           can be provided explicitly, or                                                                           
                           inferred by node id order)                                                                               
                           Examples:                                                                                                
                           node1=127.0.0.1:8080,node2=127.0.0.1:8081 node1=localhost,node2=localhost:8081 localhost,127.0.0.2:8081                                                                           
-i,  --node-aliases        Comma separated node aliases    [string]                                                                 
                           (empty means all nodes)                                                                                  
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                                               
                           confirmation                                                                                             
     --stake-amounts       The amount to be staked in the  [string]                                                                 
                           same order you list the node                                                                             
                           aliases with multiple node                                                                               
                           staked values comma separated                                                                            
     --state-file          A zipped state file to be used  [string]                                                                 
                           for the network                                                                                          
-v,  --version             Show version number             [boolean]                                                                
     --wraps-key-path      Path to a local directory       [string]                                                                 
                           containing pre-existing WRAPs                                                                            
                           proving key files (.bin)                                                                                 

consensus node stop

 consensus node stop

Stop a node

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-i,  --node-aliases        Comma separated node aliases    [string]                  
                           (empty means all nodes)                                   
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

consensus node restart

 consensus node restart

Restart all nodes of the network

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 
     --wraps-key-path      Path to a local directory       [string]                  
                           containing pre-existing WRAPs                             
                           proving key files (.bin)                                  

consensus node refresh

 consensus node refresh

Reset and restart a node

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --local-build-path        path of hedera local repo       [string]                                      
-i,  --node-aliases            Comma separated node aliases    [string]                                      
                               (empty means all nodes)                                                       
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
-v,  --version                 Show version number             [boolean]                                     

consensus node add

 consensus node add

Adds a node with a specific version of Hedera platform

Options:

-d,  --deployment                   The name the user will          [string] [required]                                                                                                   
                                    reference locally to link to a                                                                                                                        
                                    deployment                                                                                                                                            
                                                                                                                                                                                          
     --admin-key                    Admin key                       [string] [default: "302e020100300506032b65700422042091132178e72057a1d7528025956fe39b0b847f200ab59b2fdd367017f3087137"]
     --app                          Testing app name                [string] [default: "HederaNode.jar"]                                                                                  
     --block-node-mapping           Configure block-node priority   [string]                                                                                                              
                                    mapping. Default: all                                                                                                                                 
                                    block-node included, first's                                                                                                                          
                                    priority is 2. Unlisted                                                                                                                               
                                    block-node will not routed to                                                                                                                         
                                    the consensus node node.                                                                                                                              
                                    Example:  --block-node-mapping                                                                                                                        
                                     1=2,2=1                                                                                                                                              
     --cache-dir                    Local cache directory           [string] [default: "/home/runner/.solo/cache"]                                                                        
-l,  --chain-id                     Chain ID                        [string] [default: "298"]                                                                                             
     --chart-dir                    Local chart directory path      [string]                                                                                                              
                                    (e.g. ~/solo-charts/charts)                                                                                                                           
-c,  --cluster-ref                  The cluster reference that      [string]                                                                                                              
                                    will be used for referencing                                                                                                                          
                                    the Kubernetes cluster and                                                                                                                            
                                    stored in the local and remote                                                                                                                        
                                    configuration for the                                                                                                                                 
                                    deployment.  For commands that                                                                                                                        
                                    take multiple clusters they                                                                                                                           
                                    can be separated by commas.                                                                                                                           
     --consensus-node-version       Consensus node version to       [string]                                                                                                              
                                    deploy (e.g. v0.73.0 or                                                                                                                               
                                    0.73.0).                                                                                                                                              
     --debug-node-alias             Enable default jvm debug port   [string]                                                                                                              
                                    (5005) for the given node id                                                                                                                          
     --dev                          Enable developer mode           [boolean] [default: false]                                                                                            
     --domain-names                 Custom domain names for         [string]                                                                                                              
                                    consensus nodes mapping for                                                                                                                           
                                    the(e.g. node0=domain.name                                                                                                                            
                                    where key is node alias and                                                                                                                           
                                    value is domain name)with                                                                                                                             
                                    multiple nodes comma separated                                                                                                                        
     --endpoint-type                Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                                                                                            
     --envoy-ips                    IP mapping where key = value    [string]                                                                                                              
                                    is node alias and static ip                                                                                                                           
                                    for envoy proxy, (e.g.:                                                                                                                               
                                    --envoy-ips                                                                                                                                           
                                    node1=127.0.0.1,node2=127.0.0.1)                                                                                                                        
     --external-block-node-mapping  Configure external-block-node   [string]                                                                                                              
                                    priority mapping. Default: all                                                                                                                        
                                    external-block-node included,                                                                                                                         
                                    first's priority is 2.                                                                                                                                
                                    Unlisted external-block-node                                                                                                                          
                                    will not routed to the                                                                                                                                
                                    consensus node node. Example:                                                                                                                         
                                    --external-block-node-mapping                                                                                                                         
                                    1=2,2=1                                                                                                                                               
     --force                        Force actions even if those     [boolean] [default: false]                                                                                            
                                    can be skipped                                                                                                                                        
     --force-port-forward           Force port forward to access    [boolean] [default: true]                                                                                             
                                    the network services                                                                                                                                  
     --gossip-endpoints             Comma separated gossip          [string]                                                                                                              
                                    endpoints of the node(e.g.                                                                                                                            
                                    first one is internal, second                                                                                                                         
                                    one is external)                                                                                                                                      
     --gossip-keys                  Generate gossip keys for nodes  [boolean] [default: false]                                                                                            
     --grpc-endpoints               Comma separated gRPC endpoints  [string]                                                                                                              
                                    of the node (at most 8)                                                                                                                               
     --grpc-tls-cert                TLS Certificate path for the    [string]                                                                                                              
                                    gRPC (e.g.                                                                                                                                            
                                    "node1=/Users/username/node1-grpc.cert" with multiple nodes comma separated)                                                                                                                        
     --grpc-tls-key                 TLS Certificate key path for    [string]                                                                                                              
                                    the gRPC (e.g.                                                                                                                                        
                                    "node1=/Users/username/node1-grpc.key" with multiple nodes comma separated)                                                                                                                        
     --grpc-web-endpoint            Configure gRPC Web endpoint     [Format: <address>[:<port>]]  [string]                                                                                
                                    (Default port: 8080)                                                                                                                                  
     --grpc-web-tls-cert            TLS Certificate path for gRPC   [string]                                                                                                              
                                    Web (e.g.                                                                                                                                             
                                    "node1=/Users/username/node1-grpc-web.cert" with multiple nodes comma separated)                                                                                                                        
     --grpc-web-tls-key             TLC Certificate key path for    [string]                                                                                                              
                                    gRPC Web (e.g.                                                                                                                                        
                                    "node1=/Users/username/node1-grpc-web.key" with multiple nodes comma separated)                                                                                                                        
     --haproxy-ips                  IP mapping where key = value    [string]                                                                                                              
                                    is node alias and static ip                                                                                                                           
                                    for haproxy, (e.g.:                                                                                                                                   
                                    --haproxy-ips                                                                                                                                         
                                    node1=127.0.0.1,node2=127.0.0.1)                                                                                                                        
     --local-build-path             path of hedera local repo       [string]                                                                                                              
     --pvcs                         Enable persistent volume        [boolean] [default: false]                                                                                            
                                    claims to store data outside                                                                                                                          
                                    the pod, required for                                                                                                                                 
                                    consensus node add                                                                                                                                    
-q,  --quiet-mode                   Quiet mode, do not prompt for   [boolean] [default: false]                                                                                            
                                    confirmation                                                                                                                                          
-t,  --release-tag                  DEPRECATED: use                 [string] [default: "v0.74.0"]                                                                                         
                                    --consensus-node-version                                                                                                                              
                                    (e.g. v0.74.0)                                                                                                                                        
     --solo-chart-version           Solo testing chart version      [string] [default: "0.64.0"]                                                                                          
     --tls-keys                     Generate gRPC TLS keys for      [boolean] [default: false]                                                                                            
                                    nodes                                                                                                                                                 
-v,  --version                      Show version number             [boolean]                                                                                                             
     --wraps-key-path               Path to a local directory       [string]                                                                                                              
                                    containing pre-existing WRAPs                                                                                                                         
                                    proving key files (.bin)                                                                                                                              

consensus node update

 consensus node update

Update a node with a specific version of Hedera platform

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
     --node-alias              Node alias (e.g. node99)        [string] [required]                           
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir               Local chart directory path      [string]                                      
                               (e.g. ~/solo-charts/charts)                                                   
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --debug-node-alias        Enable default jvm debug port   [string]                                      
                               (5005) for the given node id                                                  
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --force                   Force actions even if those     [boolean] [default: false]                    
                               can be skipped                                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --gossip-endpoints        Comma separated gossip          [string]                                      
                               endpoints of the node(e.g.                                                    
                               first one is internal, second                                                 
                               one is external)                                                              
     --gossip-private-key      path and file name of the       [string]                                      
                               private key for signing gossip                                                
                               in PEM key format to be used                                                  
     --gossip-public-key       path and file name of the       [string]                                      
                               public key for signing gossip                                                 
                               in PEM key format to be used                                                  
     --grpc-endpoints          Comma separated gRPC endpoints  [string]                                      
                               of the node (at most 8)                                                       
     --local-build-path        path of hedera local repo       [string]                                      
     --new-account-number      new account number for node     [string]                                      
                               update transaction                                                            
     --new-admin-key           new admin key for the Hedera    [string]                                      
                               account                                                                       
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                  
     --tls-private-key         path and file name of the       [string]                                      
                               private TLS key to be used                                                    
     --tls-public-key          path and file name of the       [string]                                      
                               public TLS key to be used                                                     
-v,  --version                 Show version number             [boolean]                                     
     --wraps-key-path          Path to a local directory       [string]                                      
                               containing pre-existing WRAPs                                                 
                               proving key files (.bin)                                                      

consensus node destroy

 consensus node destroy

Delete a node with a specific version of Hedera platform

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
     --node-alias              Node alias (e.g. node99)        [string] [required]                           
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-l,  --chain-id                Chain ID                        [string] [default: "298"]                     
     --chart-dir               Local chart directory path      [string]                                      
                               (e.g. ~/solo-charts/charts)                                                   
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --debug-node-alias        Enable default jvm debug port   [string]                                      
                               (5005) for the given node id                                                  
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --force                   Force actions even if those     [boolean] [default: false]                    
                               can be skipped                                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --local-build-path        path of hedera local repo       [string]                                      
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                  
-v,  --version                 Show version number             [boolean]                                     

consensus node collect-jfr

 consensus node collect-jfr

Collect Java Flight Recorder (JFR) files from a node for diagnostics and performance analysis. Requires the node to be running with Java Flight Recorder enabled.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
     --node-alias          Node alias (e.g. node99)        [string] [required]       
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

consensus state

 consensus state

List, download, and upload consensus node state backups to/from individual consensus node instances.

Commands:
  consensus state download   Downloads a signed state from consensus node/nodes.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus state download

 consensus state download

Downloads a signed state from consensus node/nodes.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
-i,  --node-aliases        Comma separated node aliases    [string] [required]       
                           (empty means all nodes)                                   
                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

consensus dev-node-add

 consensus dev-node-add

Dev operations for adding consensus nodes.

Commands:
  consensus dev-node-add prepare               Prepares the addition of a node with a specific version of Hedera platform
  consensus dev-node-add submit-transactions   Submits NodeCreateTransaction and Upgrade transactions to the network nodes
  consensus dev-node-add execute               Executes the addition of a previously prepared node

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus dev-node-add prepare

 consensus dev-node-add prepare

Prepares the addition of a node with a specific version of Hedera platform

Options:

-d,  --deployment                   The name the user will          [string] [required]                                                                                                   
                                    reference locally to link to a                                                                                                                        
                                    deployment                                                                                                                                            
     --output-dir                   Path to the directory where     [string] [required]                                                                                                   
                                    the command context will be                                                                                                                           
                                    saved to                                                                                                                                              
                                                                                                                                                                                          
     --admin-key                    Admin key                       [string] [default: "302e020100300506032b65700422042091132178e72057a1d7528025956fe39b0b847f200ab59b2fdd367017f3087137"]
     --app                          Testing app name                [string] [default: "HederaNode.jar"]                                                                                  
     --block-node-mapping           Configure block-node priority   [string]                                                                                                              
                                    mapping. Default: all                                                                                                                                 
                                    block-node included, first's                                                                                                                          
                                    priority is 2. Unlisted                                                                                                                               
                                    block-node will not routed to                                                                                                                         
                                    the consensus node node.                                                                                                                              
                                    Example:  --block-node-mapping                                                                                                                        
                                     1=2,2=1                                                                                                                                              
     --cache-dir                    Local cache directory           [string] [default: "/home/runner/.solo/cache"]                                                                        
-l,  --chain-id                     Chain ID                        [string] [default: "298"]                                                                                             
     --chart-dir                    Local chart directory path      [string]                                                                                                              
                                    (e.g. ~/solo-charts/charts)                                                                                                                           
-c,  --cluster-ref                  The cluster reference that      [string]                                                                                                              
                                    will be used for referencing                                                                                                                          
                                    the Kubernetes cluster and                                                                                                                            
                                    stored in the local and remote                                                                                                                        
                                    configuration for the                                                                                                                                 
                                    deployment.  For commands that                                                                                                                        
                                    take multiple clusters they                                                                                                                           
                                    can be separated by commas.                                                                                                                           
     --consensus-node-version       Consensus node version to       [string]                                                                                                              
                                    deploy (e.g. v0.73.0 or                                                                                                                               
                                    0.73.0).                                                                                                                                              
     --debug-node-alias             Enable default jvm debug port   [string]                                                                                                              
                                    (5005) for the given node id                                                                                                                          
     --dev                          Enable developer mode           [boolean] [default: false]                                                                                            
     --domain-names                 Custom domain names for         [string]                                                                                                              
                                    consensus nodes mapping for                                                                                                                           
                                    the(e.g. node0=domain.name                                                                                                                            
                                    where key is node alias and                                                                                                                           
                                    value is domain name)with                                                                                                                             
                                    multiple nodes comma separated                                                                                                                        
     --endpoint-type                Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                                                                                            
     --external-block-node-mapping  Configure external-block-node   [string]                                                                                                              
                                    priority mapping. Default: all                                                                                                                        
                                    external-block-node included,                                                                                                                         
                                    first's priority is 2.                                                                                                                                
                                    Unlisted external-block-node                                                                                                                          
                                    will not routed to the                                                                                                                                
                                    consensus node node. Example:                                                                                                                         
                                    --external-block-node-mapping                                                                                                                         
                                    1=2,2=1                                                                                                                                               
     --force                        Force actions even if those     [boolean] [default: false]                                                                                            
                                    can be skipped                                                                                                                                        
     --force-port-forward           Force port forward to access    [boolean] [default: true]                                                                                             
                                    the network services                                                                                                                                  
     --gossip-endpoints             Comma separated gossip          [string]                                                                                                              
                                    endpoints of the node(e.g.                                                                                                                            
                                    first one is internal, second                                                                                                                         
                                    one is external)                                                                                                                                      
     --gossip-keys                  Generate gossip keys for nodes  [boolean] [default: false]                                                                                            
     --grpc-endpoints               Comma separated gRPC endpoints  [string]                                                                                                              
                                    of the node (at most 8)                                                                                                                               
     --grpc-tls-cert                TLS Certificate path for the    [string]                                                                                                              
                                    gRPC (e.g.                                                                                                                                            
                                    "node1=/Users/username/node1-grpc.cert" with multiple nodes comma separated)                                                                                                                        
     --grpc-tls-key                 TLS Certificate key path for    [string]                                                                                                              
                                    the gRPC (e.g.                                                                                                                                        
                                    "node1=/Users/username/node1-grpc.key" with multiple nodes comma separated)                                                                                                                        
     --grpc-web-endpoint            Configure gRPC Web endpoint     [Format: <address>[:<port>]]  [string]                                                                                
                                    (Default port: 8080)                                                                                                                                  
     --grpc-web-tls-cert            TLS Certificate path for gRPC   [string]                                                                                                              
                                    Web (e.g.                                                                                                                                             
                                    "node1=/Users/username/node1-grpc-web.cert" with multiple nodes comma separated)                                                                                                                        
     --grpc-web-tls-key             TLC Certificate key path for    [string]                                                                                                              
                                    gRPC Web (e.g.                                                                                                                                        
                                    "node1=/Users/username/node1-grpc-web.key" with multiple nodes comma separated)                                                                                                                        
     --local-build-path             path of hedera local repo       [string]                                                                                                              
     --pvcs                         Enable persistent volume        [boolean] [default: false]                                                                                            
                                    claims to store data outside                                                                                                                          
                                    the pod, required for                                                                                                                                 
                                    consensus node add                                                                                                                                    
-q,  --quiet-mode                   Quiet mode, do not prompt for   [boolean] [default: false]                                                                                            
                                    confirmation                                                                                                                                          
-t,  --release-tag                  DEPRECATED: use                 [string] [default: "v0.74.0"]                                                                                         
                                    --consensus-node-version                                                                                                                              
                                    (e.g. v0.74.0)                                                                                                                                        
     --solo-chart-version           Solo testing chart version      [string] [default: "0.64.0"]                                                                                          
     --tls-keys                     Generate gRPC TLS keys for      [boolean] [default: false]                                                                                            
                                    nodes                                                                                                                                                 
-v,  --version                      Show version number             [boolean]                                                                                                             
     --wraps-key-path               Path to a local directory       [string]                                                                                                              
                                    containing pre-existing WRAPs                                                                                                                         
                                    proving key files (.bin)                                                                                                                              

consensus dev-node-add submit-transactions

 consensus dev-node-add submit-transactions

Submits NodeCreateTransaction and Upgrade transactions to the network nodes

Options:

-d,  --deployment                   The name the user will          [string] [required]                           
                                    reference locally to link to a                                                
                                    deployment                                                                    
     --input-dir                    Path to the directory where     [string] [required]                           
                                    the command context will be                                                   
                                    loaded from                                                                   
                                                                                                                  
     --app                          Testing app name                [string] [default: "HederaNode.jar"]          
     --block-node-mapping           Configure block-node priority   [string]                                      
                                    mapping. Default: all                                                         
                                    block-node included, first's                                                  
                                    priority is 2. Unlisted                                                       
                                    block-node will not routed to                                                 
                                    the consensus node node.                                                      
                                    Example:  --block-node-mapping                                                
                                     1=2,2=1                                                                      
     --cache-dir                    Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-l,  --chain-id                     Chain ID                        [string] [default: "298"]                     
     --chart-dir                    Local chart directory path      [string]                                      
                                    (e.g. ~/solo-charts/charts)                                                   
-c,  --cluster-ref                  The cluster reference that      [string]                                      
                                    will be used for referencing                                                  
                                    the Kubernetes cluster and                                                    
                                    stored in the local and remote                                                
                                    configuration for the                                                         
                                    deployment.  For commands that                                                
                                    take multiple clusters they                                                   
                                    can be separated by commas.                                                   
     --consensus-node-version       Consensus node version to       [string]                                      
                                    deploy (e.g. v0.73.0 or                                                       
                                    0.73.0).                                                                      
     --debug-node-alias             Enable default jvm debug port   [string]                                      
                                    (5005) for the given node id                                                  
     --dev                          Enable developer mode           [boolean] [default: false]                    
     --domain-names                 Custom domain names for         [string]                                      
                                    consensus nodes mapping for                                                   
                                    the(e.g. node0=domain.name                                                    
                                    where key is node alias and                                                   
                                    value is domain name)with                                                     
                                    multiple nodes comma separated                                                
     --endpoint-type                Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --external-block-node-mapping  Configure external-block-node   [string]                                      
                                    priority mapping. Default: all                                                
                                    external-block-node included,                                                 
                                    first's priority is 2.                                                        
                                    Unlisted external-block-node                                                  
                                    will not routed to the                                                        
                                    consensus node node. Example:                                                 
                                    --external-block-node-mapping                                                 
                                    1=2,2=1                                                                       
     --force                        Force actions even if those     [boolean] [default: false]                    
                                    can be skipped                                                                
     --force-port-forward           Force port forward to access    [boolean] [default: true]                     
                                    the network services                                                          
     --gossip-endpoints             Comma separated gossip          [string]                                      
                                    endpoints of the node(e.g.                                                    
                                    first one is internal, second                                                 
                                    one is external)                                                              
     --gossip-keys                  Generate gossip keys for nodes  [boolean] [default: false]                    
     --grpc-endpoints               Comma separated gRPC endpoints  [string]                                      
                                    of the node (at most 8)                                                       
     --grpc-tls-cert                TLS Certificate path for the    [string]                                      
                                    gRPC (e.g.                                                                    
                                    "node1=/Users/username/node1-grpc.cert" with multiple nodes comma separated)                                                
     --grpc-tls-key                 TLS Certificate key path for    [string]                                      
                                    the gRPC (e.g.                                                                
                                    "node1=/Users/username/node1-grpc.key" with multiple nodes comma separated)                                                
     --grpc-web-endpoint            Configure gRPC Web endpoint     [Format: <address>[:<port>]]  [string]        
                                    (Default port: 8080)                                                          
     --grpc-web-tls-cert            TLS Certificate path for gRPC   [string]                                      
                                    Web (e.g.                                                                     
                                    "node1=/Users/username/node1-grpc-web.cert" with multiple nodes comma separated)                                                
     --grpc-web-tls-key             TLC Certificate key path for    [string]                                      
                                    gRPC Web (e.g.                                                                
                                    "node1=/Users/username/node1-grpc-web.key" with multiple nodes comma separated)                                                
     --local-build-path             path of hedera local repo       [string]                                      
     --pvcs                         Enable persistent volume        [boolean] [default: false]                    
                                    claims to store data outside                                                  
                                    the pod, required for                                                         
                                    consensus node add                                                            
-q,  --quiet-mode                   Quiet mode, do not prompt for   [boolean] [default: false]                    
                                    confirmation                                                                  
-t,  --release-tag                  DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                                    --consensus-node-version                                                      
                                    (e.g. v0.74.0)                                                                
     --solo-chart-version           Solo testing chart version      [string] [default: "0.64.0"]                  
     --tls-keys                     Generate gRPC TLS keys for      [boolean] [default: false]                    
                                    nodes                                                                         
-v,  --version                      Show version number             [boolean]                                     
     --wraps-key-path               Path to a local directory       [string]                                      
                                    containing pre-existing WRAPs                                                 
                                    proving key files (.bin)                                                      

consensus dev-node-add execute

 consensus dev-node-add execute

Executes the addition of a previously prepared node

Options:

-d,  --deployment                   The name the user will          [string] [required]                                                                                                   
                                    reference locally to link to a                                                                                                                        
                                    deployment                                                                                                                                            
     --input-dir                    Path to the directory where     [string] [required]                                                                                                   
                                    the command context will be                                                                                                                           
                                    loaded from                                                                                                                                           
                                                                                                                                                                                          
     --admin-key                    Admin key                       [string] [default: "302e020100300506032b65700422042091132178e72057a1d7528025956fe39b0b847f200ab59b2fdd367017f3087137"]
     --app                          Testing app name                [string] [default: "HederaNode.jar"]                                                                                  
     --block-node-mapping           Configure block-node priority   [string]                                                                                                              
                                    mapping. Default: all                                                                                                                                 
                                    block-node included, first's                                                                                                                          
                                    priority is 2. Unlisted                                                                                                                               
                                    block-node will not routed to                                                                                                                         
                                    the consensus node node.                                                                                                                              
                                    Example:  --block-node-mapping                                                                                                                        
                                     1=2,2=1                                                                                                                                              
     --cache-dir                    Local cache directory           [string] [default: "/home/runner/.solo/cache"]                                                                        
-l,  --chain-id                     Chain ID                        [string] [default: "298"]                                                                                             
     --chart-dir                    Local chart directory path      [string]                                                                                                              
                                    (e.g. ~/solo-charts/charts)                                                                                                                           
-c,  --cluster-ref                  The cluster reference that      [string]                                                                                                              
                                    will be used for referencing                                                                                                                          
                                    the Kubernetes cluster and                                                                                                                            
                                    stored in the local and remote                                                                                                                        
                                    configuration for the                                                                                                                                 
                                    deployment.  For commands that                                                                                                                        
                                    take multiple clusters they                                                                                                                           
                                    can be separated by commas.                                                                                                                           
     --consensus-node-version       Consensus node version to       [string]                                                                                                              
                                    deploy (e.g. v0.73.0 or                                                                                                                               
                                    0.73.0).                                                                                                                                              
     --debug-node-alias             Enable default jvm debug port   [string]                                                                                                              
                                    (5005) for the given node id                                                                                                                          
     --dev                          Enable developer mode           [boolean] [default: false]                                                                                            
     --domain-names                 Custom domain names for         [string]                                                                                                              
                                    consensus nodes mapping for                                                                                                                           
                                    the(e.g. node0=domain.name                                                                                                                            
                                    where key is node alias and                                                                                                                           
                                    value is domain name)with                                                                                                                             
                                    multiple nodes comma separated                                                                                                                        
     --endpoint-type                Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                                                                                            
     --envoy-ips                    IP mapping where key = value    [string]                                                                                                              
                                    is node alias and static ip                                                                                                                           
                                    for envoy proxy, (e.g.:                                                                                                                               
                                    --envoy-ips                                                                                                                                           
                                    node1=127.0.0.1,node2=127.0.0.1)                                                                                                                        
     --external-block-node-mapping  Configure external-block-node   [string]                                                                                                              
                                    priority mapping. Default: all                                                                                                                        
                                    external-block-node included,                                                                                                                         
                                    first's priority is 2.                                                                                                                                
                                    Unlisted external-block-node                                                                                                                          
                                    will not routed to the                                                                                                                                
                                    consensus node node. Example:                                                                                                                         
                                    --external-block-node-mapping                                                                                                                         
                                    1=2,2=1                                                                                                                                               
     --force                        Force actions even if those     [boolean] [default: false]                                                                                            
                                    can be skipped                                                                                                                                        
     --force-port-forward           Force port forward to access    [boolean] [default: true]                                                                                             
                                    the network services                                                                                                                                  
     --gossip-endpoints             Comma separated gossip          [string]                                                                                                              
                                    endpoints of the node(e.g.                                                                                                                            
                                    first one is internal, second                                                                                                                         
                                    one is external)                                                                                                                                      
     --gossip-keys                  Generate gossip keys for nodes  [boolean] [default: false]                                                                                            
     --grpc-endpoints               Comma separated gRPC endpoints  [string]                                                                                                              
                                    of the node (at most 8)                                                                                                                               
     --grpc-tls-cert                TLS Certificate path for the    [string]                                                                                                              
                                    gRPC (e.g.                                                                                                                                            
                                    "node1=/Users/username/node1-grpc.cert" with multiple nodes comma separated)                                                                                                                        
     --grpc-tls-key                 TLS Certificate key path for    [string]                                                                                                              
                                    the gRPC (e.g.                                                                                                                                        
                                    "node1=/Users/username/node1-grpc.key" with multiple nodes comma separated)                                                                                                                        
     --grpc-web-endpoint            Configure gRPC Web endpoint     [Format: <address>[:<port>]]  [string]                                                                                
                                    (Default port: 8080)                                                                                                                                  
     --grpc-web-tls-cert            TLS Certificate path for gRPC   [string]                                                                                                              
                                    Web (e.g.                                                                                                                                             
                                    "node1=/Users/username/node1-grpc-web.cert" with multiple nodes comma separated)                                                                                                                        
     --grpc-web-tls-key             TLC Certificate key path for    [string]                                                                                                              
                                    gRPC Web (e.g.                                                                                                                                        
                                    "node1=/Users/username/node1-grpc-web.key" with multiple nodes comma separated)                                                                                                                        
     --haproxy-ips                  IP mapping where key = value    [string]                                                                                                              
                                    is node alias and static ip                                                                                                                           
                                    for haproxy, (e.g.:                                                                                                                                   
                                    --haproxy-ips                                                                                                                                         
                                    node1=127.0.0.1,node2=127.0.0.1)                                                                                                                        
     --local-build-path             path of hedera local repo       [string]                                                                                                              
     --pvcs                         Enable persistent volume        [boolean] [default: false]                                                                                            
                                    claims to store data outside                                                                                                                          
                                    the pod, required for                                                                                                                                 
                                    consensus node add                                                                                                                                    
-q,  --quiet-mode                   Quiet mode, do not prompt for   [boolean] [default: false]                                                                                            
                                    confirmation                                                                                                                                          
-t,  --release-tag                  DEPRECATED: use                 [string] [default: "v0.74.0"]                                                                                         
                                    --consensus-node-version                                                                                                                              
                                    (e.g. v0.74.0)                                                                                                                                        
     --solo-chart-version           Solo testing chart version      [string] [default: "0.64.0"]                                                                                          
     --tls-keys                     Generate gRPC TLS keys for      [boolean] [default: false]                                                                                            
                                    nodes                                                                                                                                                 
-v,  --version                      Show version number             [boolean]                                                                                                             
     --wraps-key-path               Path to a local directory       [string]                                                                                                              
                                    containing pre-existing WRAPs                                                                                                                         
                                    proving key files (.bin)                                                                                                                              

consensus dev-node-update

 consensus dev-node-update

Dev operations for updating consensus nodes

Commands:
  consensus dev-node-update prepare               Prepare the deployment to update a node with a specific version of Hedera platform
  consensus dev-node-update submit-transactions   Submit transactions for updating a node with a specific version of Hedera platform
  consensus dev-node-update execute               Executes the updating of a node with a specific version of Hedera platform

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus dev-node-update prepare

 consensus dev-node-update prepare

Prepare the deployment to update a node with a specific version of Hedera platform

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
     --node-alias              Node alias (e.g. node99)        [string] [required]                           
     --output-dir              Path to the directory where     [string] [required]                           
                               the command context will be                                                   
                               saved to                                                                      
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir               Local chart directory path      [string]                                      
                               (e.g. ~/solo-charts/charts)                                                   
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --debug-node-alias        Enable default jvm debug port   [string]                                      
                               (5005) for the given node id                                                  
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --force                   Force actions even if those     [boolean] [default: false]                    
                               can be skipped                                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --gossip-endpoints        Comma separated gossip          [string]                                      
                               endpoints of the node(e.g.                                                    
                               first one is internal, second                                                 
                               one is external)                                                              
     --gossip-private-key      path and file name of the       [string]                                      
                               private key for signing gossip                                                
                               in PEM key format to be used                                                  
     --gossip-public-key       path and file name of the       [string]                                      
                               public key for signing gossip                                                 
                               in PEM key format to be used                                                  
     --grpc-endpoints          Comma separated gRPC endpoints  [string]                                      
                               of the node (at most 8)                                                       
     --local-build-path        path of hedera local repo       [string]                                      
     --new-account-number      new account number for node     [string]                                      
                               update transaction                                                            
     --new-admin-key           new admin key for the Hedera    [string]                                      
                               account                                                                       
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                  
     --tls-private-key         path and file name of the       [string]                                      
                               private TLS key to be used                                                    
     --tls-public-key          path and file name of the       [string]                                      
                               public TLS key to be used                                                     
-v,  --version                 Show version number             [boolean]                                     
     --wraps-key-path          Path to a local directory       [string]                                      
                               containing pre-existing WRAPs                                                 
                               proving key files (.bin)                                                      

consensus dev-node-update submit-transactions

 consensus dev-node-update submit-transactions

Submit transactions for updating a node with a specific version of Hedera platform

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
     --input-dir               Path to the directory where     [string] [required]                           
                               the command context will be                                                   
                               loaded from                                                                   
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir               Local chart directory path      [string]                                      
                               (e.g. ~/solo-charts/charts)                                                   
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --debug-node-alias        Enable default jvm debug port   [string]                                      
                               (5005) for the given node id                                                  
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --force                   Force actions even if those     [boolean] [default: false]                    
                               can be skipped                                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --gossip-endpoints        Comma separated gossip          [string]                                      
                               endpoints of the node(e.g.                                                    
                               first one is internal, second                                                 
                               one is external)                                                              
     --grpc-endpoints          Comma separated gRPC endpoints  [string]                                      
                               of the node (at most 8)                                                       
     --local-build-path        path of hedera local repo       [string]                                      
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                  
-v,  --version                 Show version number             [boolean]                                     
     --wraps-key-path          Path to a local directory       [string]                                      
                               containing pre-existing WRAPs                                                 
                               proving key files (.bin)                                                      

consensus dev-node-update execute

 consensus dev-node-update execute

Executes the updating of a node with a specific version of Hedera platform

Options:

-d,  --deployment              The name the user will          [string] [required]                                                                                                   
                               reference locally to link to a                                                                                                                        
                               deployment                                                                                                                                            
     --input-dir               Path to the directory where     [string] [required]                                                                                                   
                               the command context will be                                                                                                                           
                               loaded from                                                                                                                                           
                                                                                                                                                                                     
     --admin-key               Admin key                       [string] [default: "302e020100300506032b65700422042091132178e72057a1d7528025956fe39b0b847f200ab59b2fdd367017f3087137"]
     --app                     Testing app name                [string] [default: "HederaNode.jar"]                                                                                  
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]                                                                        
     --chart-dir               Local chart directory path      [string]                                                                                                              
                               (e.g. ~/solo-charts/charts)                                                                                                                           
     --consensus-node-version  Consensus node version to       [string]                                                                                                              
                               deploy (e.g. v0.73.0 or                                                                                                                               
                               0.73.0).                                                                                                                                              
     --debug-node-alias        Enable default jvm debug port   [string]                                                                                                              
                               (5005) for the given node id                                                                                                                          
     --dev                     Enable developer mode           [boolean] [default: false]                                                                                            
     --domain-names            Custom domain names for         [string]                                                                                                              
                               consensus nodes mapping for                                                                                                                           
                               the(e.g. node0=domain.name                                                                                                                            
                               where key is node alias and                                                                                                                           
                               value is domain name)with                                                                                                                             
                               multiple nodes comma separated                                                                                                                        
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                                                                                            
     --force                   Force actions even if those     [boolean] [default: false]                                                                                            
                               can be skipped                                                                                                                                        
     --force-port-forward      Force port forward to access    [boolean] [default: true]                                                                                             
                               the network services                                                                                                                                  
     --gossip-endpoints        Comma separated gossip          [string]                                                                                                              
                               endpoints of the node(e.g.                                                                                                                            
                               first one is internal, second                                                                                                                         
                               one is external)                                                                                                                                      
     --grpc-endpoints          Comma separated gRPC endpoints  [string]                                                                                                              
                               of the node (at most 8)                                                                                                                               
     --local-build-path        path of hedera local repo       [string]                                                                                                              
     --new-account-number      new account number for node     [string]                                                                                                              
                               update transaction                                                                                                                                    
     --new-admin-key           new admin key for the Hedera    [string]                                                                                                              
                               account                                                                                                                                               
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                                                                                            
                               confirmation                                                                                                                                          
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                                                                                         
                               --consensus-node-version                                                                                                                              
                               (e.g. v0.74.0)                                                                                                                                        
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                                                                                          
-v,  --version                 Show version number             [boolean]                                                                                                             
     --wraps-key-path          Path to a local directory       [string]                                                                                                              
                               containing pre-existing WRAPs                                                                                                                         
                               proving key files (.bin)                                                                                                                              

consensus dev-node-upgrade

 consensus dev-node-upgrade

Dev operations for upgrading consensus nodes

Commands:
  consensus dev-node-upgrade prepare               Prepare for upgrading network
  consensus dev-node-upgrade submit-transactions   Submit transactions for upgrading network
  consensus dev-node-upgrade execute               Executes the upgrading the network

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus dev-node-upgrade prepare

 consensus dev-node-upgrade prepare

Prepare for upgrading network

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
     --output-dir          Path to the directory where     [string] [required]                           
                           the command context will be                                                   
                           saved to                                                                      
                                                                                                         
     --app                 Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir           Local chart directory path      [string]                                      
                           (e.g. ~/solo-charts/charts)                                                   
     --debug-node-alias    Enable default jvm debug port   [string]                                      
                           (5005) for the given node id                                                  
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force               Force actions even if those     [boolean] [default: false]                    
                           can be skipped                                                                
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
     --local-build-path    path of hedera local repo       [string]                                      
-i,  --node-aliases        Comma separated node aliases    [string]                                      
                           (empty means all nodes)                                                       
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --solo-chart-version  Solo testing chart version      [string] [default: "0.64.0"]                  
     --upgrade-zip-file    A zipped file used for network  [string]                                      
                           upgrade                                                                       
-v,  --version             Show version number             [boolean]                                     

consensus dev-node-upgrade submit-transactions

 consensus dev-node-upgrade submit-transactions

Submit transactions for upgrading network

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
     --input-dir           Path to the directory where     [string] [required]                           
                           the command context will be                                                   
                           loaded from                                                                   
                                                                                                         
     --app                 Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir           Local chart directory path      [string]                                      
                           (e.g. ~/solo-charts/charts)                                                   
     --debug-node-alias    Enable default jvm debug port   [string]                                      
                           (5005) for the given node id                                                  
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force               Force actions even if those     [boolean] [default: false]                    
                           can be skipped                                                                
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
     --local-build-path    path of hedera local repo       [string]                                      
-i,  --node-aliases        Comma separated node aliases    [string]                                      
                           (empty means all nodes)                                                       
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --solo-chart-version  Solo testing chart version      [string] [default: "0.64.0"]                  
     --upgrade-zip-file    A zipped file used for network  [string]                                      
                           upgrade                                                                       
-v,  --version             Show version number             [boolean]                                     

consensus dev-node-upgrade execute

 consensus dev-node-upgrade execute

Executes the upgrading the network

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
     --input-dir           Path to the directory where     [string] [required]                           
                           the command context will be                                                   
                           loaded from                                                                   
                                                                                                         
     --app                 Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir           Local chart directory path      [string]                                      
                           (e.g. ~/solo-charts/charts)                                                   
     --debug-node-alias    Enable default jvm debug port   [string]                                      
                           (5005) for the given node id                                                  
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force               Force actions even if those     [boolean] [default: false]                    
                           can be skipped                                                                
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
     --local-build-path    path of hedera local repo       [string]                                      
-i,  --node-aliases        Comma separated node aliases    [string]                                      
                           (empty means all nodes)                                                       
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --solo-chart-version  Solo testing chart version      [string] [default: "0.64.0"]                  
     --upgrade-zip-file    A zipped file used for network  [string]                                      
                           upgrade                                                                       
-v,  --version             Show version number             [boolean]                                     

consensus dev-node-delete

 consensus dev-node-delete

Dev operations for delete consensus nodes

Commands:
  consensus dev-node-delete prepare               Prepares the deletion of a node with a specific version of Hedera platform
  consensus dev-node-delete submit-transactions   Submits transactions to the network nodes for deleting a node
  consensus dev-node-delete execute               Executes the deletion of a previously prepared node

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus dev-node-delete prepare

 consensus dev-node-delete prepare

Prepares the deletion of a node with a specific version of Hedera platform

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
     --node-alias              Node alias (e.g. node99)        [string] [required]                           
     --output-dir              Path to the directory where     [string] [required]                           
                               the command context will be                                                   
                               saved to                                                                      
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-l,  --chain-id                Chain ID                        [string] [default: "298"]                     
     --chart-dir               Local chart directory path      [string]                                      
                               (e.g. ~/solo-charts/charts)                                                   
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --debug-node-alias        Enable default jvm debug port   [string]                                      
                               (5005) for the given node id                                                  
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --force                   Force actions even if those     [boolean] [default: false]                    
                               can be skipped                                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --local-build-path        path of hedera local repo       [string]                                      
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                  
-v,  --version                 Show version number             [boolean]                                     

consensus dev-node-delete submit-transactions

 consensus dev-node-delete submit-transactions

Submits transactions to the network nodes for deleting a node

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
     --input-dir               Path to the directory where     [string] [required]                           
                               the command context will be                                                   
                               loaded from                                                                   
     --node-alias              Node alias (e.g. node99)        [string] [required]                           
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-l,  --chain-id                Chain ID                        [string] [default: "298"]                     
     --chart-dir               Local chart directory path      [string]                                      
                               (e.g. ~/solo-charts/charts)                                                   
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --debug-node-alias        Enable default jvm debug port   [string]                                      
                               (5005) for the given node id                                                  
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --force                   Force actions even if those     [boolean] [default: false]                    
                               can be skipped                                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --local-build-path        path of hedera local repo       [string]                                      
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                  
-v,  --version                 Show version number             [boolean]                                     

consensus dev-node-delete execute

 consensus dev-node-delete execute

Executes the deletion of a previously prepared node

Options:

-d,  --deployment              The name the user will          [string] [required]                           
                               reference locally to link to a                                                
                               deployment                                                                    
     --input-dir               Path to the directory where     [string] [required]                           
                               the command context will be                                                   
                               loaded from                                                                   
     --node-alias              Node alias (e.g. node99)        [string] [required]                           
                                                                                                             
     --app                     Testing app name                [string] [default: "HederaNode.jar"]          
     --cache-dir               Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-l,  --chain-id                Chain ID                        [string] [default: "298"]                     
     --chart-dir               Local chart directory path      [string]                                      
                               (e.g. ~/solo-charts/charts)                                                   
     --consensus-node-version  Consensus node version to       [string]                                      
                               deploy (e.g. v0.73.0 or                                                       
                               0.73.0).                                                                      
     --debug-node-alias        Enable default jvm debug port   [string]                                      
                               (5005) for the given node id                                                  
     --dev                     Enable developer mode           [boolean] [default: false]                    
     --domain-names            Custom domain names for         [string]                                      
                               consensus nodes mapping for                                                   
                               the(e.g. node0=domain.name                                                    
                               where key is node alias and                                                   
                               value is domain name)with                                                     
                               multiple nodes comma separated                                                
     --endpoint-type           Endpoint type (IP or FQDN)      [string] [default: "FQDN"]                    
     --force                   Force actions even if those     [boolean] [default: false]                    
                               can be skipped                                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]                     
                               the network services                                                          
     --local-build-path        path of hedera local repo       [string]                                      
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]                    
                               confirmation                                                                  
-t,  --release-tag             DEPRECATED: use                 [string] [default: "v0.74.0"]                 
                               --consensus-node-version                                                      
                               (e.g. v0.74.0)                                                                
     --solo-chart-version      Solo testing chart version      [string] [default: "0.64.0"]                  
-v,  --version                 Show version number             [boolean]                                     

consensus dev-freeze

 consensus dev-freeze

Dev operations for freezing consensus nodes

Commands:
  consensus dev-freeze prepare-upgrade   Prepare the network for a Freeze Upgrade operation
  consensus dev-freeze freeze-upgrade    Performs a Freeze Upgrade operation with on the network after it has been prepared with prepare-upgrade

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

consensus dev-freeze prepare-upgrade

 consensus dev-freeze prepare-upgrade

Prepare the network for a Freeze Upgrade operation

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --skip-node-alias     The node alias to skip,         [string]                                      
                           because of a                                                                  
                           NodeUpdateTransaction or it is                                                
                           down (e.g. node99)                                                            
-v,  --version             Show version number             [boolean]                                     

consensus dev-freeze freeze-upgrade

 consensus dev-freeze freeze-upgrade

Performs a Freeze Upgrade operation with on the network after it has been prepared with prepare-upgrade

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --skip-node-alias     The node alias to skip,         [string]                                      
                           because of a                                                                  
                           NodeUpdateTransaction or it is                                                
                           down (e.g. node99)                                                            
-v,  --version             Show version number             [boolean]                                     

deployment

 deployment

Create, modify, and delete deployment configurations. Deployments are required for most of the other commands.

Commands:
  deployment cluster       View and manage Solo cluster references used by a deployment.
  deployment config        List, view, create, delete, and import deployments. These commands affect the local configuration only.
  deployment state         View the actual state of the deployment on the Kubernetes clusters or teardown/destroy all remote and local configuration for a given deployment.
  deployment refresh       Refresh port-forward processes for all components in the deployment.
  deployment diagnostics   Capture diagnostic information such as logs, signed states, and ledger/network/node configurations.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

deployment cluster

 deployment cluster

View and manage Solo cluster references used by a deployment.

Commands:
  deployment cluster attach   Attaches a cluster reference to a deployment.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

deployment cluster attach

 deployment cluster attach

Attaches a cluster reference to a deployment.

Options:

-c,  --cluster-ref                 The cluster reference that      [string] [required]                                          
                                   will be used for referencing                                                                 
                                   the Kubernetes cluster and                                                                   
                                   stored in the local and remote                                                               
                                   configuration for the                                                                        
                                   deployment.  For commands that                                                               
                                   take multiple clusters they                                                                  
                                   can be separated by commas.                                                                  
-d,  --deployment                  The name the user will          [string] [required]                                          
                                   reference locally to link to a                                                               
                                   deployment                                                                                   
                                                                                                                                
     --dev                         Enable developer mode           [boolean] [default: false]                                   
     --dns-base-domain             Base domain for the DNS is the  [string] [default: "cluster.local"]                          
                                   suffix used to construct the                                                                 
                                   fully qualified domain name                                                                  
                                   (FQDN)                                                                                       
     --dns-consensus-node-pattern  Pattern to construct the        [string] [default: "network-{nodeAlias}-svc.{namespace}.svc"]
                                   prefix for the fully qualified                                                               
                                   domain name (FQDN) for the                                                                   
                                   consensus node, the suffix is                                                                
                                   provided by the                                                                              
                                   --dns-base-domain  option (ex.                                                               
                                   network-{nodeAlias}-svc.{namespace}.svc)                                                               
     --enable-cert-manager         Pass the flag to enable cert    [boolean] [default: false]                                   
                                   manager                                                                                      
     --force-port-forward          Force port forward to access    [boolean] [default: true]                                    
                                   the network services                                                                         
     --num-consensus-nodes         Used to specify desired number  [number]                                                     
                                   of consensus nodes for                                                                       
                                   pre-genesis deployments                                                                      
-q,  --quiet-mode                  Quiet mode, do not prompt for   [boolean] [default: false]                                   
                                   confirmation                                                                                 
-v,  --version                     Show version number             [boolean]                                                    

deployment config

 deployment config

List, view, create, delete, and import deployments. These commands affect the local configuration only.

Commands:
  deployment config list     Lists all local deployment configurations or deployments in a specific cluster.
  deployment config create   Creates a new local deployment configuration.
  deployment config delete   Removes a local deployment configuration.
  deployment config info     Displays the full status of a deployment including components, versions, and port-forward status.
  deployment config ports    List all port-forwards for a deployment. JSON and YAMl output formats, create files containing the data

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

deployment config list

 deployment config list

Lists all local deployment configurations or deployments in a specific cluster.

Options:

                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment config create

 deployment config create

Creates a new local deployment configuration.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
-n,  --namespace           Namespace                       [string] [required]       
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
     --realm               Realm number. Requires          [number] [default: 0]     
                           network-node > v61.0 for                                  
                           non-zero values                                           
     --shard               Shard number. Requires          [number] [default: 0]     
                           network-node > v61.0 for                                  
                           non-zero values                                           
-v,  --version             Show version number             [boolean]                 

deployment config delete

 deployment config delete

Removes a local deployment configuration.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment config info

 deployment config info

Displays the full status of a deployment including components, versions, and port-forward status.

Options:

                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment config ports

 deployment config ports

List all port-forwards for a deployment. JSON and YAMl output formats, create files containing the data

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-c,  --cluster-ref         The cluster reference that      [string]                                      
                           will be used for referencing                                                  
                           the Kubernetes cluster and                                                    
                           stored in the local and remote                                                
                           configuration for the                                                         
                           deployment.  For commands that                                                
                           take multiple clusters they                                                   
                           can be separated by commas.                                                   
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-o,  --output              Output format. One of:          [string]                                      
                           json|yaml|wide                                                                
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-v,  --version             Show version number             [boolean]                                     

deployment state

 deployment state

View the actual state of the deployment on the Kubernetes clusters or teardown/destroy all remote and local configuration for a given deployment.

Commands:
  deployment state images   Lists every pod in the deployment namespace and shows its running container image. Useful to verify that a locally-built image was loaded correctly.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

deployment state images

 deployment state images

Lists every pod in the deployment namespace and shows its running container image. Useful to verify that a locally-built image was loaded correctly.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment refresh

 deployment refresh

Refresh port-forward processes for all components in the deployment.

Commands:
  deployment refresh port-forwards   Refresh and restore killed port-forward processes.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

deployment refresh port-forwards

 deployment refresh port-forwards

Refresh and restore killed port-forward processes.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment diagnostics

 deployment diagnostics

Capture diagnostic information such as logs, signed states, and ledger/network/node configurations.

Commands:
  deployment diagnostics all           Captures logs, configs, and diagnostic artifacts from all consensus nodes and test connections.
  deployment diagnostics debug         Similar to diagnostics all subcommand, but creates a zip archive for easy sharing.
  deployment diagnostics connections   Tests connections to Consensus, Relay, Explorer, Mirror and Block nodes.
  deployment diagnostics logs          Get logs and configuration files from consensus node/nodes.
  deployment diagnostics analyze       Analyze a previously collected diagnostics logs directory for common failure signatures.
  deployment diagnostics report        Collect diagnostic logs and create a GitHub issue using the gh CLI.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

deployment diagnostics all

 deployment diagnostics all

Captures logs, configs, and diagnostic artifacts from all consensus nodes and test connections.

Options:

                                                                                     
     --check               Fail if any configured remote   [boolean] [default: false]
                           port-forward is not reachable                             
                           locally                                                   
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment diagnostics debug

 deployment diagnostics debug

Similar to diagnostics all subcommand, but creates a zip archive for easy sharing.

Options:

                                                                                     
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --output-dir          Path to the directory where     [string]                  
                           the command context will be                               
                           saved to                                                  
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment diagnostics connections

 deployment diagnostics connections

Tests connections to Consensus, Relay, Explorer, Mirror and Block nodes.

Options:

                                                                                     
     --check               Fail if any configured remote   [boolean] [default: false]
                           port-forward is not reachable                             
                           locally                                                   
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment diagnostics logs

 deployment diagnostics logs

Get logs and configuration files from consensus node/nodes.

Options:

                                                                                     
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --output-dir          Path to the directory where     [string]                  
                           the command context will be                               
                           saved to                                                  
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment diagnostics analyze

 deployment diagnostics analyze

Analyze a previously collected diagnostics logs directory for common failure signatures.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --input-dir           Path to the directory where     [string]                  
                           the command context will be                               
                           loaded from                                               
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

deployment diagnostics report

 deployment diagnostics report

Collect diagnostic logs and create a GitHub issue using the gh CLI.

Options:

                                                                                     
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --output-dir          Path to the directory where     [string]                  
                           the command context will be                               
                           saved to                                                  
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

explorer

 explorer

Explorer Node operations for creating, modifying, and destroying resources.These commands require the presence of an existing deployment.

Commands:
  explorer node   List, create, manage, or destroy explorer node instances. Operates on a single explorer node instance at a time.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

explorer node

 explorer node

List, create, manage, or destroy explorer node instances. Operates on a single explorer node instance at a time.

Commands:
  explorer node add       Adds and configures a new node instance.
  explorer node destroy   Deletes the specified node from the deployment.
  explorer node upgrade   Upgrades the specified node in the deployment.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

explorer node add

 explorer node add

Adds and configures a new node instance.

Options:

-d,  --deployment                     The name the user will          [string] [required]                           
                                      reference locally to link to a                                                
                                      deployment                                                                    
                                                                                                                    
     --cache-dir                      Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir                      Local chart directory path      [string]                                      
                                      (e.g. ~/solo-charts/charts)                                                   
-c,  --cluster-ref                    The cluster reference that      [string]                                      
                                      will be used for referencing                                                  
                                      the Kubernetes cluster and                                                    
                                      stored in the local and remote                                                
                                      configuration for the                                                         
                                      deployment.  For commands that                                                
                                      take multiple clusters they                                                   
                                      can be separated by commas.                                                   
-s,  --cluster-setup-namespace        Cluster Setup Namespace         [string] [default: "solo-setup"]              
     --component-image                ,  --relay-image   Docker       [string]                                      
                                      image override. Accepts a                                                     
                                      registry reference (e.g.                                                      
                                      ghcr.io/hiero-ledger/block-node-server:0.36.0) or a local reference (e.g. block-node-server:0.36.0-SNAPSHOT). Local images found in Docker are automatically loaded into the Kind cluster.                                                
     --dev                            Enable developer mode           [boolean] [default: false]                    
     --domain-name                    Custom domain name              [string]                                      
     --enable-explorer-tls            Enable Explorer TLS, defaults   [boolean] [default: false]                    
                                      to false, requires certManager                                                
                                      and certManagerCrds, which can                                                
                                      be deployed through                                                           
                                      solo-cluster-setup chart or                                                   
                                      standalone                                                                    
     --enable-ingress                 enable ingress on the           [boolean] [default: false]                    
                                      component/pod                                                                 
     --explorer-chart-dir             Explorer local chart directory  [string]                                      
                                      path (e.g.                                                                    
                                      ~/hiero-mirror-node-explorer/charts)                                                
     --explorer-static-ip             The static IP address to use    [string]                                      
                                      for the Explorer load                                                         
                                      balancer, defaults to ""                                                      
     --explorer-tls-host-name         The host name to use for the    [string] [default: "explorer.solo.local"]     
                                      Explorer TLS, defaults to                                                     
                                      "explorer.solo.local"                                                         
     --explorer-version               Explorer chart version          [string] [default: "26.1.0"]                  
     --external-address               Bind address for kubectl        [string]                                      
                                      port-forward (for example                                                     
                                      127.0.0.1 or 0.0.0.0)                                                         
     --force-port-forward             Force port forward to access    [boolean] [default: true]                     
                                      the network services                                                          
     --ingress-controller-value-file  The value file to use for       [string]                                      
                                      ingress controller, defaults                                                  
                                      to ""                                                                         
     --mirror-namespace               Namespace to use for the        [string]                                      
                                      Mirror Node deployment, a new                                                 
                                      one will be created if it does                                                
                                      not exist                                                                     
     --mirror-node-id                 The id of the mirror node       [number]                                      
                                      which to connect                                                              
-n,  --namespace                      Namespace                       [string]                                      
-q,  --quiet-mode                     Quiet mode, do not prompt for   [boolean] [default: false]                    
                                      confirmation                                                                  
     --solo-chart-version             Solo testing chart version      [string] [default: "0.64.0"]                  
     --tls-cluster-issuer-type        The TLS cluster issuer type to  [string] [default: "self-signed"]             
                                      use for hedera explorer,                                                      
                                      defaults to "self-signed", the                                                
                                      available options are:                                                        
                                      "acme-staging", "acme-prod",                                                  
                                      or "self-signed"                                                              
-f,  --values-file                    Comma separated chart values    [string]                                      
                                      file                                                                          
-v,  --version                        Show version number             [boolean]                                     

explorer node destroy

 explorer node destroy

Deletes the specified node from the deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --chart-dir           Local chart directory path      [string]                  
                           (e.g. ~/solo-charts/charts)                               
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force               Force actions even if those     [boolean] [default: false]
                           can be skipped                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

explorer node upgrade

 explorer node upgrade

Upgrades the specified node in the deployment.

Options:

-d,  --deployment                     The name the user will          [string] [required]                           
                                      reference locally to link to a                                                
                                      deployment                                                                    
                                                                                                                    
     --cache-dir                      Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir                      Local chart directory path      [string]                                      
                                      (e.g. ~/solo-charts/charts)                                                   
-c,  --cluster-ref                    The cluster reference that      [string]                                      
                                      will be used for referencing                                                  
                                      the Kubernetes cluster and                                                    
                                      stored in the local and remote                                                
                                      configuration for the                                                         
                                      deployment.  For commands that                                                
                                      take multiple clusters they                                                   
                                      can be separated by commas.                                                   
-s,  --cluster-setup-namespace        Cluster Setup Namespace         [string] [default: "solo-setup"]              
     --component-image                ,  --relay-image   Docker       [string]                                      
                                      image override. Accepts a                                                     
                                      registry reference (e.g.                                                      
                                      ghcr.io/hiero-ledger/block-node-server:0.36.0) or a local reference (e.g. block-node-server:0.36.0-SNAPSHOT). Local images found in Docker are automatically loaded into the Kind cluster.                                                
     --dev                            Enable developer mode           [boolean] [default: false]                    
     --domain-name                    Custom domain name              [string]                                      
     --enable-explorer-tls            Enable Explorer TLS, defaults   [boolean] [default: false]                    
                                      to false, requires certManager                                                
                                      and certManagerCrds, which can                                                
                                      be deployed through                                                           
                                      solo-cluster-setup chart or                                                   
                                      standalone                                                                    
     --enable-ingress                 enable ingress on the           [boolean] [default: false]                    
                                      component/pod                                                                 
     --explorer-chart-dir             Explorer local chart directory  [string]                                      
                                      path (e.g.                                                                    
                                      ~/hiero-mirror-node-explorer/charts)                                                
     --explorer-static-ip             The static IP address to use    [string]                                      
                                      for the Explorer load                                                         
                                      balancer, defaults to ""                                                      
     --explorer-tls-host-name         The host name to use for the    [string] [default: "explorer.solo.local"]     
                                      Explorer TLS, defaults to                                                     
                                      "explorer.solo.local"                                                         
     --explorer-version               Explorer chart version          [string] [default: "26.1.0"]                  
     --external-address               Bind address for kubectl        [string]                                      
                                      port-forward (for example                                                     
                                      127.0.0.1 or 0.0.0.0)                                                         
     --force-port-forward             Force port forward to access    [boolean] [default: true]                     
                                      the network services                                                          
     --id                             The numeric identifier for the  [number]                                      
                                      component                                                                     
     --ingress-controller-value-file  The value file to use for       [string]                                      
                                      ingress controller, defaults                                                  
                                      to ""                                                                         
     --mirror-namespace               Namespace to use for the        [string]                                      
                                      Mirror Node deployment, a new                                                 
                                      one will be created if it does                                                
                                      not exist                                                                     
     --mirror-node-id                 The id of the mirror node       [number]                                      
                                      which to connect                                                              
-n,  --namespace                      Namespace                       [string]                                      
-q,  --quiet-mode                     Quiet mode, do not prompt for   [boolean] [default: false]                    
                                      confirmation                                                                  
     --solo-chart-version             Solo testing chart version      [string] [default: "0.64.0"]                  
     --tls-cluster-issuer-type        The TLS cluster issuer type to  [string] [default: "self-signed"]             
                                      use for hedera explorer,                                                      
                                      defaults to "self-signed", the                                                
                                      available options are:                                                        
                                      "acme-staging", "acme-prod",                                                  
                                      or "self-signed"                                                              
-f,  --values-file                    Comma separated chart values    [string]                                      
                                      file                                                                          
-v,  --version                        Show version number             [boolean]                                     

keys

 keys

Consensus key generation operations

Commands:
  keys consensus   Generate unique cryptographic keys (gossip or grpc TLS keys) for the Consensus Node instances.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

keys consensus

 keys consensus

Generate unique cryptographic keys (gossip or grpc TLS keys) for the Consensus Node instances.

Commands:
  keys consensus generate   Generates TLS keys required for consensus node communication.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

keys consensus generate

 keys consensus generate

Generates TLS keys required for consensus node communication.

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
     --gossip-keys         Generate gossip keys for nodes  [boolean] [default: false]                    
-n,  --namespace           Namespace                       [string]                                      
-i,  --node-aliases        Comma separated node aliases    [string]                                      
                           (empty means all nodes)                                                       
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --tls-keys            Generate gRPC TLS keys for      [boolean] [default: false]                    
                           nodes                                                                         
-v,  --version             Show version number             [boolean]                                     

ledger

 ledger

System, Account, and Crypto ledger-based management operations. These commands require an operational set of consensus nodes and may require an operational mirror node.

Commands:
  ledger system    Perform a full ledger initialization on a new deployment, rekey privileged/system accounts, or setup network staking parameters.
  ledger account   View, list, create, update, delete, and import ledger accounts.
  ledger file      Upload or update files on the Hiero network.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

ledger system

 ledger system

Perform a full ledger initialization on a new deployment, rekey privileged/system accounts, or setup network staking parameters.

Commands:
  ledger system init    Re-keys ledger system accounts and consensus node admin keys with uniquely generated ED25519 private keys and will stake consensus nodes.
  ledger system reset   Resets the ledger system to genesis by clearing saved states and ledger-related secrets.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

ledger system init

 ledger system init

Re-keys ledger system accounts and consensus node admin keys with uniquely generated ED25519 private keys and will stake consensus nodes.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-i,  --node-aliases        Comma separated node aliases    [string]                  
                           (empty means all nodes)                                   
-v,  --version             Show version number             [boolean]                 

ledger system reset

 ledger system reset

Resets the ledger system to genesis by clearing saved states and ledger-related secrets.

Options:

                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-i,  --node-aliases        Comma separated node aliases    [string]                  
                           (empty means all nodes)                                   
-v,  --version             Show version number             [boolean]                 

ledger account

 ledger account

View, list, create, update, delete, and import ledger accounts.

Commands:
  ledger account update       Updates an existing ledger account.
  ledger account create       Creates a new ledger account.
  ledger account info         Gets the account info including the current amount of HBAR
  ledger account predefined   Creates predefined accounts used by one-shot deployments.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

ledger account update

 ledger account update

Updates an existing ledger account.

Options:

     --account-id           The Hedera account id, e.g.:    [string] [required]       
                            0.0.1001                                                  
-d,  --deployment           The name the user will          [string] [required]       
                            reference locally to link to a                            
                            deployment                                                
                                                                                      
-c,  --cluster-ref          The cluster reference that      [string]                  
                            will be used for referencing                              
                            the Kubernetes cluster and                                
                            stored in the local and remote                            
                            configuration for the                                     
                            deployment.  For commands that                            
                            take multiple clusters they                               
                            can be separated by commas.                               
     --dev                  Enable developer mode           [boolean] [default: false]
     --ecdsa-private-key    Specify a hex-encoded ECDSA     [string]                  
                            private key for the Hedera                                
                            account                                                   
     --ed25519-private-key  Specify a hex-encoded ED25519   [string]                  
                            private key for the Hedera                                
                            account                                                   
     --force-port-forward   Force port forward to access    [boolean] [default: true] 
                            the network services                                      
     --hbar-amount          Amount of HBAR to add           [number] [default: 100]   
-v,  --version              Show version number             [boolean]                 

ledger account create

 ledger account create

Creates a new ledger account.

Options:

-d,  --deployment           The name the user will          [string] [required]       
                            reference locally to link to a                            
                            deployment                                                
                                                                                      
-c,  --cluster-ref          The cluster reference that      [string]                  
                            will be used for referencing                              
                            the Kubernetes cluster and                                
                            stored in the local and remote                            
                            configuration for the                                     
                            deployment.  For commands that                            
                            take multiple clusters they                               
                            can be separated by commas.                               
     --create-amount        Amount of new account to        [number] [default: 1]     
                            create                                                    
     --dev                  Enable developer mode           [boolean] [default: false]
     --ecdsa-private-key    Specify a hex-encoded ECDSA     [string]                  
                            private key for the Hedera                                
                            account                                                   
     --ed25519-private-key  Specify a hex-encoded ED25519   [string]                  
                            private key for the Hedera                                
                            account                                                   
     --force-port-forward   Force port forward to access    [boolean] [default: true] 
                            the network services                                      
     --generate-ecdsa-key   Generate ECDSA private key for  [boolean] [default: false]
                            the Hedera account                                        
     --hbar-amount          Amount of HBAR to add           [number] [default: 100]   
     --private-key          Show private key information    [boolean] [default: false]
     --set-alias            Sets the alias for the Hedera   [boolean] [default: false]
                            account when it is created,                               
                            requires  --ecdsa-private-key                             
-v,  --version              Show version number             [boolean]                 

ledger account info

 ledger account info

Gets the account info including the current amount of HBAR

Options:

     --account-id          The Hedera account id, e.g.:    [string] [required]       
                           0.0.1001                                                  
-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --private-key         Show private key information    [boolean] [default: false]
-v,  --version             Show version number             [boolean]                 

ledger account predefined

 ledger account predefined

Creates predefined accounts used by one-shot deployments.

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-c,  --cluster-ref         The cluster reference that      [string]                                      
                           will be used for referencing                                                  
                           the Kubernetes cluster and                                                    
                           stored in the local and remote                                                
                           configuration for the                                                         
                           deployment.  For commands that                                                
                           take multiple clusters they                                                   
                           can be separated by commas.                                                   
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-v,  --version             Show version number             [boolean]                                     

ledger file

 ledger file

Upload or update files on the Hiero network.

Commands:
  ledger file create   Create a new file on the Hiero network
  ledger file update   Update an existing file on the Hiero network

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

ledger file create

 ledger file create

Create a new file on the Hiero network

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
     --file-path           Local path to the file to       [string] [required]       
                           upload                                                    
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

ledger file update

 ledger file update

Update an existing file on the Hiero network

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
     --file-id             The network file id, e.g.:      [string] [required]       
                           0.0.150                                                   
     --file-path           Local path to the file to       [string] [required]       
                           upload                                                    
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

mirror

 mirror

Mirror Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.

Commands:
  mirror node   List, create, manage, or destroy mirror node instances. Operates on a single mirror node instance at a time.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

mirror node

 mirror node

List, create, manage, or destroy mirror node instances. Operates on a single mirror node instance at a time.

Commands:
  mirror node add       Adds and configures a new node instance.
  mirror node destroy   Deletes the specified node from the deployment.
  mirror node upgrade   Upgrades the specified node from the deployment.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

mirror node add

 mirror node add

Adds and configures a new node instance.

Options:

-d,  --deployment                        The name the user will          [string] [required]                           
                                         reference locally to link to a                                                
                                         deployment                                                                    
                                                                                                                       
     --cache-dir                         Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir                         Local chart directory path      [string]                                      
                                         (e.g. ~/solo-charts/charts)                                                   
-c,  --cluster-ref                       The cluster reference that      [string]                                      
                                         will be used for referencing                                                  
                                         the Kubernetes cluster and                                                    
                                         stored in the local and remote                                                
                                         configuration for the                                                         
                                         deployment.  For commands that                                                
                                         take multiple clusters they                                                   
                                         can be separated by commas.                                                   
     --component-image                   ,  --relay-image     Docker     [string]                                      
                                         image override. Accepts a                                                     
                                         registry reference (e.g.                                                      
                                         ghcr.io/hiero-ledger/block-node-server:0.36.0) or a local reference (e.g. block-node-server:0.36.0-SNAPSHOT). Local images found in Docker are automatically loaded into the Kind cluster.                                                
     --dev                               Enable developer mode           [boolean] [default: false]                    
     --domain-name                       Custom domain name              [string]                                      
     --enable-ingress                    enable ingress on the           [boolean] [default: false]                    
                                         component/pod                                                                 
     --external-address                  Bind address for kubectl        [string]                                      
                                         port-forward (for example                                                     
                                         127.0.0.1 or 0.0.0.0)                                                         
     --external-database-host            Use to provide the external     [string]                                      
                                         database host if the '                                                        
                                         --use-external-database ' is                                                  
                                         passed                                                                        
     --external-database-owner-password  Use to provide the external     [string]                                      
                                         database owner's password if                                                  
                                         the ' --use-external-database                                                 
                                         ' is passed                                                                   
     --external-database-owner-username  Use to provide the external     [string]                                      
                                         database owner's username if                                                  
                                         the ' --use-external-database                                                 
                                         ' is passed                                                                   
     --external-database-read-password   Use to provide the external     [string]                                      
                                         database readonly user's                                                      
                                         password if the '                                                             
                                         --use-external-database ' is                                                  
                                         passed                                                                        
     --external-database-read-username   Use to provide the external     [string]                                      
                                         database readonly user's                                                      
                                         username if the '                                                             
                                         --use-external-database ' is                                                  
                                         passed                                                                        
     --force                             Force enable block node         [boolean] [default: false]                    
                                         integration bypassing the                                                     
                                         version requirements CN >=                                                    
                                         v0.72.0, BN >= 0.29.0, CN >=                                                  
                                         0.150.0                                                                       
     --force-port-forward                Force port forward to access    [boolean] [default: true]                     
                                         the network services                                                          
     --ingress-controller-value-file     The value file to use for       [string]                                      
                                         ingress controller, defaults                                                  
                                         to ""                                                                         
     --mirror-node-chart-dir             Mirror node local chart         [string]                                      
                                         directory path (e.g.                                                          
                                         ~/hiero-mirror-node/charts).                                                  
                                         NOTE: This only provides the                                                  
                                         Helm chart templates  it does                                                
                                         NOT make the chart images                                                     
                                         available to the cluster. All                                                 
                                         container images referenced by                                                
                                         the chart must already be                                                     
                                         pullable (e.g. published to a                                                 
                                         registry or loaded into the                                                   
                                         cluster with `kind load                                                       
                                         docker-image`). Using a local                                                 
                                         branch chart with SNAPSHOT                                                    
                                         image tags will cause pods to                                                 
                                         fail with ImagePullBackOff                                                    
                                         unless those images have been                                                 
                                         built and pushed to a registry                                                
                                         or loaded into the cluster.                                                   
     --mirror-node-version               Mirror node chart version       [string] [default: "v0.157.0"]                
     --mirror-static-ip                  static IP address for the       [string]                                      
                                         mirror node                                                                   
     --operator-id                       Operator ID                     [string]                                      
     --operator-key                      Operator Key                    [string]                                      
     --parallel-deploy                   Run independent one-shot        [boolean] [default: true]                     
                                         deploy stages in parallel                                                     
                                         (consensus+block,                                                             
                                         mirror+accounts,                                                              
                                         explorer+relay). Disable with                                                 
                                         --no-parallel-deploy  for                                                     
                                         sequential execution (useful                                                  
                                         for debugging or                                                              
                                         resource-constrained                                                          
                                         environments).                                                                
     --pinger                            Enable Pinger service in the    [boolean] [default: false]                    
                                         Mirror node monitor                                                           
-q,  --quiet-mode                        Quiet mode, do not prompt for   [boolean] [default: false]                    
                                         confirmation                                                                  
     --solo-chart-version                Solo testing chart version      [string] [default: "0.64.0"]                  
     --storage-bucket                    name of storage bucket for      [string]                                      
                                         mirror node importer                                                          
     --storage-bucket-prefix             path prefix of storage bucket   [string]                                      
                                         mirror node importer                                                          
     --storage-bucket-region             region of storage bucket        [string]                                      
                                         mirror node importer                                                          
     --storage-endpoint                  storage endpoint URL for        [string]                                      
                                         mirror node importer                                                          
     --storage-read-access-key           storage read access key for     [string]                                      
                                         mirror node importer                                                          
     --storage-read-secrets              storage read-secret key for     [string]                                      
                                         mirror node importer                                                          
     --storage-type                      storage type for saving stream  [default: "minio_only"]                       
                                         files, available options are                                                  
                                         minio_only, aws_only,                                                         
                                         gcs_only, aws_and_gcs                                                         
     --use-external-database             Set to true if you have an      [boolean] [default: false]                    
                                         external database to use                                                      
                                         instead of the database that                                                  
                                         the Mirror Node Helm chart                                                    
                                         supplies                                                                      
-f,  --values-file                       Comma separated chart values    [string]                                      
                                         file                                                                          
-v,  --version                           Show version number             [boolean]                                     

mirror node destroy

 mirror node destroy

Deletes the specified node from the deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --chart-dir           Local chart directory path      [string]                  
                           (e.g. ~/solo-charts/charts)                               
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force               Force actions even if those     [boolean] [default: false]
                           can be skipped                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --id                  The numeric identifier for the  [number]                  
                           component                                                 
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

mirror node upgrade

 mirror node upgrade

Upgrades the specified node from the deployment.

Options:

-d,  --deployment                        The name the user will          [string] [required]                           
                                         reference locally to link to a                                                
                                         deployment                                                                    
                                                                                                                       
     --cache-dir                         Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --chart-dir                         Local chart directory path      [string]                                      
                                         (e.g. ~/solo-charts/charts)                                                   
-c,  --cluster-ref                       The cluster reference that      [string]                                      
                                         will be used for referencing                                                  
                                         the Kubernetes cluster and                                                    
                                         stored in the local and remote                                                
                                         configuration for the                                                         
                                         deployment.  For commands that                                                
                                         take multiple clusters they                                                   
                                         can be separated by commas.                                                   
     --component-image                   ,  --relay-image     Docker     [string]                                      
                                         image override. Accepts a                                                     
                                         registry reference (e.g.                                                      
                                         ghcr.io/hiero-ledger/block-node-server:0.36.0) or a local reference (e.g. block-node-server:0.36.0-SNAPSHOT). Local images found in Docker are automatically loaded into the Kind cluster.                                                
     --dev                               Enable developer mode           [boolean] [default: false]                    
     --domain-name                       Custom domain name              [string]                                      
     --enable-ingress                    enable ingress on the           [boolean] [default: false]                    
                                         component/pod                                                                 
     --external-address                  Bind address for kubectl        [string]                                      
                                         port-forward (for example                                                     
                                         127.0.0.1 or 0.0.0.0)                                                         
     --external-database-host            Use to provide the external     [string]                                      
                                         database host if the '                                                        
                                         --use-external-database ' is                                                  
                                         passed                                                                        
     --external-database-owner-password  Use to provide the external     [string]                                      
                                         database owner's password if                                                  
                                         the ' --use-external-database                                                 
                                         ' is passed                                                                   
     --external-database-owner-username  Use to provide the external     [string]                                      
                                         database owner's username if                                                  
                                         the ' --use-external-database                                                 
                                         ' is passed                                                                   
     --external-database-read-password   Use to provide the external     [string]                                      
                                         database readonly user's                                                      
                                         password if the '                                                             
                                         --use-external-database ' is                                                  
                                         passed                                                                        
     --external-database-read-username   Use to provide the external     [string]                                      
                                         database readonly user's                                                      
                                         username if the '                                                             
                                         --use-external-database ' is                                                  
                                         passed                                                                        
     --force                             Force enable block node         [boolean] [default: false]                    
                                         integration bypassing the                                                     
                                         version requirements CN >=                                                    
                                         v0.72.0, BN >= 0.29.0, CN >=                                                  
                                         0.150.0                                                                       
     --force-port-forward                Force port forward to access    [boolean] [default: true]                     
                                         the network services                                                          
     --id                                The numeric identifier for the  [number]                                      
                                         component                                                                     
     --ingress-controller-value-file     The value file to use for       [string]                                      
                                         ingress controller, defaults                                                  
                                         to ""                                                                         
     --mirror-node-chart-dir             Mirror node local chart         [string]                                      
                                         directory path (e.g.                                                          
                                         ~/hiero-mirror-node/charts).                                                  
                                         NOTE: This only provides the                                                  
                                         Helm chart templates  it does                                                
                                         NOT make the chart images                                                     
                                         available to the cluster. All                                                 
                                         container images referenced by                                                
                                         the chart must already be                                                     
                                         pullable (e.g. published to a                                                 
                                         registry or loaded into the                                                   
                                         cluster with `kind load                                                       
                                         docker-image`). Using a local                                                 
                                         branch chart with SNAPSHOT                                                    
                                         image tags will cause pods to                                                 
                                         fail with ImagePullBackOff                                                    
                                         unless those images have been                                                 
                                         built and pushed to a registry                                                
                                         or loaded into the cluster.                                                   
     --mirror-node-version               Mirror node chart version       [string] [default: "v0.157.0"]                
     --mirror-static-ip                  static IP address for the       [string]                                      
                                         mirror node                                                                   
     --operator-id                       Operator ID                     [string]                                      
     --operator-key                      Operator Key                    [string]                                      
     --pinger                            Enable Pinger service in the    [boolean] [default: false]                    
                                         Mirror node monitor                                                           
-q,  --quiet-mode                        Quiet mode, do not prompt for   [boolean] [default: false]                    
                                         confirmation                                                                  
     --solo-chart-version                Solo testing chart version      [string] [default: "0.64.0"]                  
     --storage-bucket                    name of storage bucket for      [string]                                      
                                         mirror node importer                                                          
     --storage-bucket-prefix             path prefix of storage bucket   [string]                                      
                                         mirror node importer                                                          
     --storage-bucket-region             region of storage bucket        [string]                                      
                                         mirror node importer                                                          
     --storage-endpoint                  storage endpoint URL for        [string]                                      
                                         mirror node importer                                                          
     --storage-read-access-key           storage read access key for     [string]                                      
                                         mirror node importer                                                          
     --storage-read-secrets              storage read-secret key for     [string]                                      
                                         mirror node importer                                                          
     --storage-type                      storage type for saving stream  [default: "minio_only"]                       
                                         files, available options are                                                  
                                         minio_only, aws_only,                                                         
                                         gcs_only, aws_and_gcs                                                         
     --use-external-database             Set to true if you have an      [boolean] [default: false]                    
                                         external database to use                                                      
                                         instead of the database that                                                  
                                         the Mirror Node Helm chart                                                    
                                         supplies                                                                      
-f,  --values-file                       Comma separated chart values    [string]                                      
                                         file                                                                          
-v,  --version                           Show version number             [boolean]                                     

relay

 relay

RPC Relay Node operations for creating, modifying, and destroying resources. These commands require the presence of an existing deployment.

Commands:
  relay node   List, create, manage, or destroy relay node instances. Operates on a single relay node instance at a time.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

relay node

 relay node

List, create, manage, or destroy relay node instances. Operates on a single relay node instance at a time.

Commands:
  relay node add       Adds and configures a new node instance.
  relay node destroy   Deletes the specified node from the deployment.
  relay node upgrade   Upgrades the specified node from the deployment.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

relay node add

 relay node add

Adds and configures a new node instance.

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-l,  --chain-id            Chain ID                        [string] [default: "298"]                     
     --chart-dir           Local chart directory path      [string]                                      
                           (e.g. ~/solo-charts/charts)                                                   
-c,  --cluster-ref         The cluster reference that      [string]                                      
                           will be used for referencing                                                  
                           the Kubernetes cluster and                                                    
                           stored in the local and remote                                                
                           configuration for the                                                         
                           deployment.  For commands that                                                
                           take multiple clusters they                                                   
                           can be separated by commas.                                                   
     --component-image     ,  --relay-image   Docker       [string]                                      
                           image override. Accepts a                                                     
                           registry reference (e.g.                                                      
                           ghcr.io/hiero-ledger/block-node-server:0.36.0) or a local reference (e.g. block-node-server:0.36.0-SNAPSHOT). Local images found in Docker are automatically loaded into the Kind cluster.                                                
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --domain-name         Custom domain name              [string]                                      
     --external-address    Bind address for kubectl        [string]                                      
                           port-forward (for example                                                     
                           127.0.0.1 or 0.0.0.0)                                                         
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
     --mirror-namespace    Namespace to use for the        [string]                                      
                           Mirror Node deployment, a new                                                 
                           one will be created if it does                                                
                           not exist                                                                     
     --mirror-node-id      The id of the mirror node       [number]                                      
                           which to connect                                                              
-i,  --node-aliases        Comma separated node aliases    [string]                                      
                           (empty means all nodes)                                                       
     --operator-id         Operator ID                     [string]                                      
     --operator-key        Operator Key                    [string]                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --relay-chart-dir     Relay local chart directory     [string]                                      
                           path (e.g.                                                                    
                           ~/hiero-json-rpc-relay/charts)                                                
     --relay-release       DEPRECATED: use                 [string] [default: "0.77.0"]                  
                           --relay-version  (e.g.                                                        
                           v0.48.0)                                                                      
     --relay-version       JSON-RPC relay version to       [string]                                      
                           deploy (e.g. v0.76.2 or                                                       
                           0.76.2).                                                                      
     --replica-count       Replica count                   [number] [default: 1]                         
-f,  --values-file         Comma separated chart values    [string]                                      
                           file                                                                          
-v,  --version             Show version number             [boolean]                                     

relay node destroy

 relay node destroy

Deletes the specified node from the deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --chart-dir           Local chart directory path      [string]                  
                           (e.g. ~/solo-charts/charts)                               
-c,  --cluster-ref         The cluster reference that      [string]                  
                           will be used for referencing                              
                           the Kubernetes cluster and                                
                           stored in the local and remote                            
                           configuration for the                                     
                           deployment.  For commands that                            
                           take multiple clusters they                               
                           can be separated by commas.                               
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
     --id                  The numeric identifier for the  [number]                  
                           component                                                 
-i,  --node-aliases        Comma separated node aliases    [string]                  
                           (empty means all nodes)                                   
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

relay node upgrade

 relay node upgrade

Upgrades the specified node from the deployment.

Options:

-d,  --deployment          The name the user will          [string] [required]                           
                           reference locally to link to a                                                
                           deployment                                                                    
                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-l,  --chain-id            Chain ID                        [string] [default: "298"]                     
     --chart-dir           Local chart directory path      [string]                                      
                           (e.g. ~/solo-charts/charts)                                                   
-c,  --cluster-ref         The cluster reference that      [string]                                      
                           will be used for referencing                                                  
                           the Kubernetes cluster and                                                    
                           stored in the local and remote                                                
                           configuration for the                                                         
                           deployment.  For commands that                                                
                           take multiple clusters they                                                   
                           can be separated by commas.                                                   
     --component-image     ,  --relay-image   Docker       [string]                                      
                           image override. Accepts a                                                     
                           registry reference (e.g.                                                      
                           ghcr.io/hiero-ledger/block-node-server:0.36.0) or a local reference (e.g. block-node-server:0.36.0-SNAPSHOT). Local images found in Docker are automatically loaded into the Kind cluster.                                                
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --domain-name         Custom domain name              [string]                                      
     --external-address    Bind address for kubectl        [string]                                      
                           port-forward (for example                                                     
                           127.0.0.1 or 0.0.0.0)                                                         
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
     --id                  The numeric identifier for the  [number]                                      
                           component                                                                     
     --mirror-namespace    Namespace to use for the        [string]                                      
                           Mirror Node deployment, a new                                                 
                           one will be created if it does                                                
                           not exist                                                                     
     --mirror-node-id      The id of the mirror node       [number]                                      
                           which to connect                                                              
-i,  --node-aliases        Comma separated node aliases    [string]                                      
                           (empty means all nodes)                                                       
     --operator-id         Operator ID                     [string]                                      
     --operator-key        Operator Key                    [string]                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
     --relay-chart-dir     Relay local chart directory     [string]                                      
                           path (e.g.                                                                    
                           ~/hiero-json-rpc-relay/charts)                                                
     --relay-release       DEPRECATED: use                 [string] [default: "0.77.0"]                  
                           --relay-version  (e.g.                                                        
                           v0.48.0)                                                                      
     --relay-version       JSON-RPC relay version to       [string]                                      
                           deploy (e.g. v0.76.2 or                                                       
                           0.76.2).                                                                      
     --replica-count       Replica count                   [number] [default: 1]                         
-f,  --values-file         Comma separated chart values    [string]                                      
                           file                                                                          
-v,  --version             Show version number             [boolean]                                     

cache

 cache

Manage solo cached items.

Commands:
  cache image   Manage image archives used by solo.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

cache image

 cache image

Manage image archives used by solo.

Commands:
  cache image pull     Pull and caches docker images used by solo, prerequisite for `solo cache image load`.
  cache image load     Loads the images archive into a cluster. Pulling the images with `solo cache images pull` is a prerequisite.
  cache image list     Lists all cached image archives.
  cache image clear    Clears the image archives.
  cache image prune    Prune the image archives.
  cache image status   Lists all images, displays data about them and all missing images.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

cache image pull

 cache image pull

Pull and caches docker images used by solo, prerequisite for `solo cache image load`.

Options:

                                                                                                          
     --block-node-version   Block node version to deploy    [string]                                      
                            for (e.g. v0.31.0 or 0.31.0).                                                 
     --cache-dir            Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                  Enable developer mode           [boolean] [default: false]                    
     --edge                 Use edge component versions     [boolean] [default: false]                    
                            (newer than defaults). Also                                                   
                            supports version overrides                                                    
                            from solo.config.yaml and                                                     
                            solo.config.json, for example:                                                
                            `consensus-node-version:                                                      
                            v0.73.0` (YAML) or                                                            
                            `{"consensusNodeVersion":"v0.73.0"}` (JSON).                                                
     --explorer-version     Explorer chart version          [string] [default: "26.1.0"]                  
     --force-port-forward   Force port forward to access    [boolean] [default: true]                     
                            the network services                                                          
     --mirror-node-version  Mirror node chart version       [string] [default: "v0.157.0"]                
-q,  --quiet-mode           Quiet mode, do not prompt for   [boolean] [default: false]                    
                            confirmation                                                                  
     --relay-version        JSON-RPC relay version to       [string]                                      
                            deploy (e.g. v0.76.2 or                                                       
                            0.76.2).                                                                      
-v,  --version              Show version number             [boolean]                                     

cache image load

 cache image load

Loads the images archive into a cluster. Pulling the images with `solo cache images pull` is a prerequisite.

Options:

                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-c,  --cluster-ref         The cluster reference that      [string]                                      
                           will be used for referencing                                                  
                           the Kubernetes cluster and                                                    
                           stored in the local and remote                                                
                           configuration for the                                                         
                           deployment.  For commands that                                                
                           take multiple clusters they                                                   
                           can be separated by commas.                                                   
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-v,  --version             Show version number             [boolean]                                     

cache image list

 cache image list

Lists all cached image archives.

Options:

                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-v,  --version             Show version number             [boolean]                                     

cache image clear

 cache image clear

Clears the image archives.

Options:

                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-v,  --version             Show version number             [boolean]                                     

cache image prune

 cache image prune

Prune the image archives.

Options:

                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-v,  --version             Show version number             [boolean]                                     

cache image status

 cache image status

Lists all images, displays data about them and all missing images.

Options:

                                                                                                         
     --cache-dir           Local cache directory           [string] [default: "/home/runner/.solo/cache"]
-c,  --cluster-ref         The cluster reference that      [string]                                      
                           will be used for referencing                                                  
                           the Kubernetes cluster and                                                    
                           stored in the local and remote                                                
                           configuration for the                                                         
                           deployment.  For commands that                                                
                           take multiple clusters they                                                   
                           can be separated by commas.                                                   
     --dev                 Enable developer mode           [boolean] [default: false]                    
     --force-port-forward  Force port forward to access    [boolean] [default: true]                     
                           the network services                                                          
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                    
                           confirmation                                                                  
-v,  --version             Show version number             [boolean]                                     

one-shot

 one-shot

One Shot commands for new and returning users who need a preset environment type. These commands use reasonable defaults to provide a single command out of box experience.

Commands:
  one-shot single   Creates a uniquely named deployment with a single consensus node, mirror node, block node, relay node, and explorer node.
  one-shot multi    Creates a uniquely named deployment with multiple consensus nodes, mirror node, block node, relay node, and explorer node.
  one-shot falcon   Creates a uniquely named deployment with optional chart values override using --values-file.
  one-shot show     Display information about one-shot deployments.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

one-shot single

 one-shot single

Creates a uniquely named deployment with a single consensus node, mirror node, block node, relay node, and explorer node.

Commands:
  one-shot single deploy    Deploys all required components for the selected one shot configuration.
  one-shot single destroy   Removes the deployed resources for the selected one shot configuration.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

one-shot single deploy

 one-shot single deploy

Deploys all required components for the selected one shot configuration.

Options:

                                                                                             
     --block-node-version      Block node version to deploy    [string]                      
                               for (e.g. v0.31.0 or 0.31.0).                                 
     --chart-version           DEPRECATED: use                 [string] [default: "0.36.0"]  
                               --block-node-version                                          
-c,  --cluster-ref             The cluster reference that      [string]                      
                               will be used for referencing                                  
                               the Kubernetes cluster and                                    
                               stored in the local and remote                                
                               configuration for the                                         
                               deployment.  For commands that                                
                               take multiple clusters they                                   
                               can be separated by commas.                                   
     --consensus-node-version  Consensus node version to       [string]                      
                               deploy (e.g. v0.73.0 or                                       
                               0.73.0).                                                      
-d,  --deployment              The name the user will          [string]                      
                               reference locally to link to a                                
                               deployment                                                    
     --dev                     Enable developer mode           [boolean] [default: false]    
     --edge                    Use edge component versions     [boolean] [default: false]    
                               (newer than defaults). Also                                   
                               supports version overrides                                    
                               from solo.config.yaml and                                     
                               solo.config.json, for example:                                
                               `consensus-node-version:                                      
                               v0.73.0` (YAML) or                                            
                               `{"consensusNodeVersion":"v0.73.0"}` (JSON).                                
     --explorer-version        Explorer chart version          [string] [default: "26.1.0"]  
     --external-address        Bind address for kubectl        [string]                      
                               port-forward (for example                                     
                               127.0.0.1 or 0.0.0.0)                                         
     --force                   Force actions even if those     [boolean] [default: false]    
                               can be skipped                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]     
                               the network services                                          
     --metrics-server          Deploy metrics server to        [boolean] [default: false]    
                               enable kubectl top for CPU and                                
                               memory usage monitoring                                       
     --minimal-setup           Create a deployment with        [boolean] [default: false]    
                               minimal setup. Only includes a                                
                               single consensus node and                                     
                               mirror node                                                   
     --mirror-node-version     Mirror node chart version       [string] [default: "v0.157.0"]
-n,  --namespace               Namespace                       [string]                      
     --parallel-deploy         Run independent one-shot        [boolean] [default: true]     
                               deploy stages in parallel                                     
                               (consensus+block,                                             
                               mirror+accounts,                                              
                               explorer+relay). Disable with                                 
                               --no-parallel-deploy  for                                     
                               sequential execution (useful                                  
                               for debugging or                                              
                               resource-constrained                                          
                               environments).                                                
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]    
                               confirmation                                                  
     --relay-release           DEPRECATED: use                 [string] [default: "0.77.0"]  
                               --relay-version  (e.g.                                        
                               v0.48.0)                                                      
     --relay-version           JSON-RPC relay version to       [string]                      
                               deploy (e.g. v0.76.2 or                                       
                               0.76.2).                                                      
     --rollback                Opt in to automatic cleanup     [boolean] [default: false]    
                               when deploy fails. By default,                                
                               failed one-shot deploys keep                                  
                               partial resources so you can                                  
                               inspect the failure and re-run                                
                               the same command.                                             
-v,  --version                 Show version number             [boolean]                     

one-shot single destroy

 one-shot single destroy

Removes the deployed resources for the selected one shot configuration.

Options:

                                                                                     
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

one-shot multi

 one-shot multi

Creates a uniquely named deployment with multiple consensus nodes, mirror node, block node, relay node, and explorer node.

Commands:
  one-shot multi deploy    Deploys all required components for the selected multiple node one shot configuration.
  one-shot multi destroy   Removes the deployed resources for the selected multiple node one shot configuration.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

one-shot multi deploy

 one-shot multi deploy

Deploys all required components for the selected multiple node one shot configuration.

Options:

                                                                                             
     --block-node-version      Block node version to deploy    [string]                      
                               for (e.g. v0.31.0 or 0.31.0).                                 
     --chart-version           DEPRECATED: use                 [string] [default: "0.36.0"]  
                               --block-node-version                                          
-c,  --cluster-ref             The cluster reference that      [string]                      
                               will be used for referencing                                  
                               the Kubernetes cluster and                                    
                               stored in the local and remote                                
                               configuration for the                                         
                               deployment.  For commands that                                
                               take multiple clusters they                                   
                               can be separated by commas.                                   
     --consensus-node-version  Consensus node version to       [string]                      
                               deploy (e.g. v0.73.0 or                                       
                               0.73.0).                                                      
-d,  --deployment              The name the user will          [string]                      
                               reference locally to link to a                                
                               deployment                                                    
     --dev                     Enable developer mode           [boolean] [default: false]    
     --edge                    Use edge component versions     [boolean] [default: false]    
                               (newer than defaults). Also                                   
                               supports version overrides                                    
                               from solo.config.yaml and                                     
                               solo.config.json, for example:                                
                               `consensus-node-version:                                      
                               v0.73.0` (YAML) or                                            
                               `{"consensusNodeVersion":"v0.73.0"}` (JSON).                                
     --explorer-version        Explorer chart version          [string] [default: "26.1.0"]  
     --external-address        Bind address for kubectl        [string]                      
                               port-forward (for example                                     
                               127.0.0.1 or 0.0.0.0)                                         
     --force                   Force actions even if those     [boolean] [default: false]    
                               can be skipped                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]     
                               the network services                                          
     --metrics-server          Deploy metrics server to        [boolean] [default: false]    
                               enable kubectl top for CPU and                                
                               memory usage monitoring                                       
     --minimal-setup           Create a deployment with        [boolean] [default: false]    
                               minimal setup. Only includes a                                
                               single consensus node and                                     
                               mirror node                                                   
     --mirror-node-version     Mirror node chart version       [string] [default: "v0.157.0"]
-n,  --namespace               Namespace                       [string]                      
     --num-consensus-nodes     Used to specify desired number  [number]                      
                               of consensus nodes for                                        
                               pre-genesis deployments                                       
     --parallel-deploy         Run independent one-shot        [boolean] [default: true]     
                               deploy stages in parallel                                     
                               (consensus+block,                                             
                               mirror+accounts,                                              
                               explorer+relay). Disable with                                 
                               --no-parallel-deploy  for                                     
                               sequential execution (useful                                  
                               for debugging or                                              
                               resource-constrained                                          
                               environments).                                                
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]    
                               confirmation                                                  
     --relay-release           DEPRECATED: use                 [string] [default: "0.77.0"]  
                               --relay-version  (e.g.                                        
                               v0.48.0)                                                      
     --relay-version           JSON-RPC relay version to       [string]                      
                               deploy (e.g. v0.76.2 or                                       
                               0.76.2).                                                      
     --rollback                Opt in to automatic cleanup     [boolean] [default: false]    
                               when deploy fails. By default,                                
                               failed one-shot deploys keep                                  
                               partial resources so you can                                  
                               inspect the failure and re-run                                
                               the same command.                                             
-v,  --version                 Show version number             [boolean]                     

one-shot multi destroy

 one-shot multi destroy

Removes the deployed resources for the selected multiple node one shot configuration.

Options:

                                                                                     
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

one-shot falcon

 one-shot falcon

Creates a uniquely named deployment with optional chart values override using --values-file.

Commands:
  one-shot falcon deploy    Deploys all required components for the selected one shot configuration (with optional values file).
  one-shot falcon destroy   Removes the deployed resources for the selected one shot configuration (with optional values file).
  one-shot falcon prepare   Generates a falcon values file for use with one-shot falcon deploy. Writes to /home/runner/.solo/cache/falcon-values.yaml by default.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

one-shot falcon deploy

 one-shot falcon deploy

Deploys all required components for the selected one shot configuration (with optional values file).

Options:

                                                                                             
     --block-node-version      Block node version to deploy    [string]                      
                               for (e.g. v0.31.0 or 0.31.0).                                 
     --chart-version           DEPRECATED: use                 [string] [default: "0.36.0"]  
                               --block-node-version                                          
-c,  --cluster-ref             The cluster reference that      [string]                      
                               will be used for referencing                                  
                               the Kubernetes cluster and                                    
                               stored in the local and remote                                
                               configuration for the                                         
                               deployment.  For commands that                                
                               take multiple clusters they                                   
                               can be separated by commas.                                   
     --consensus-node-version  Consensus node version to       [string]                      
                               deploy (e.g. v0.73.0 or                                       
                               0.73.0).                                                      
     --deploy-explorer         Deploy explorer as part of      [boolean] [default: true]     
                               one-shot falcon deployment                                    
     --deploy-mirror-node      Deploy mirror node as part of   [boolean] [default: true]     
                               one-shot falcon deployment                                    
     --deploy-relay            Deploy relay as part of         [boolean] [default: true]     
                               one-shot falcon deployment                                    
-d,  --deployment              The name the user will          [string]                      
                               reference locally to link to a                                
                               deployment                                                    
     --dev                     Enable developer mode           [boolean] [default: false]    
     --edge                    Use edge component versions     [boolean] [default: false]    
                               (newer than defaults). Also                                   
                               supports version overrides                                    
                               from solo.config.yaml and                                     
                               solo.config.json, for example:                                
                               `consensus-node-version:                                      
                               v0.73.0` (YAML) or                                            
                               `{"consensusNodeVersion":"v0.73.0"}` (JSON).                                
     --explorer-version        Explorer chart version          [string] [default: "26.1.0"]  
     --external-address        Bind address for kubectl        [string]                      
                               port-forward (for example                                     
                               127.0.0.1 or 0.0.0.0)                                         
     --force                   Force actions even if those     [boolean] [default: false]    
                               can be skipped                                                
     --force-port-forward      Force port forward to access    [boolean] [default: true]     
                               the network services                                          
     --metrics-server          Deploy metrics server to        [boolean] [default: false]    
                               enable kubectl top for CPU and                                
                               memory usage monitoring                                       
     --mirror-node-version     Mirror node chart version       [string] [default: "v0.157.0"]
-n,  --namespace               Namespace                       [string]                      
     --num-consensus-nodes     Used to specify desired number  [number]                      
                               of consensus nodes for                                        
                               pre-genesis deployments                                       
     --parallel-deploy         Run independent one-shot        [boolean] [default: true]     
                               deploy stages in parallel                                     
                               (consensus+block,                                             
                               mirror+accounts,                                              
                               explorer+relay). Disable with                                 
                               --no-parallel-deploy  for                                     
                               sequential execution (useful                                  
                               for debugging or                                              
                               resource-constrained                                          
                               environments).                                                
-q,  --quiet-mode              Quiet mode, do not prompt for   [boolean] [default: false]    
                               confirmation                                                  
     --relay-release           DEPRECATED: use                 [string] [default: "0.77.0"]  
                               --relay-version  (e.g.                                        
                               v0.48.0)                                                      
     --relay-version           JSON-RPC relay version to       [string]                      
                               deploy (e.g. v0.76.2 or                                       
                               0.76.2).                                                      
     --rollback                Opt in to automatic cleanup     [boolean] [default: false]    
                               when deploy fails. By default,                                
                               failed one-shot deploys keep                                  
                               partial resources so you can                                  
                               inspect the failure and re-run                                
                               the same command.                                             
-f,  --values-file             Comma separated chart values    [string]                      
                               file                                                          
-v,  --version                 Show version number             [boolean]                     

one-shot falcon destroy

 one-shot falcon destroy

Removes the deployed resources for the selected one shot configuration (with optional values file).

Options:

                                                                                     
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

one-shot falcon prepare

 one-shot falcon prepare

Generates a falcon values file for use with one-shot falcon deploy. Writes to /home/runner/.solo/cache/falcon-values.yaml by default.

Options:

                                                                                                                             
     --chart-version        DEPRECATED: use                 [string] [default: "0.36.0"]                                     
                            --block-node-version                                                                             
     --debug-node-alias     Enable default jvm debug port   [string]                                                         
                            (5005) for the given node id                                                                     
     --dev                  Enable developer mode           [boolean] [default: false]                                       
     --explorer-version     Explorer chart version          [string] [default: "26.1.0"]                                     
     --force-port-forward   Force port forward to access    [boolean] [default: true]                                        
                            the network services                                                                             
     --load-balancer        Enable load balancer for        [boolean] [default: false]                                       
                            network node proxies                                                                             
     --local-build-path     path of hedera local repo       [string]                                                         
     --mirror-node-version  Mirror node chart version       [string] [default: "v0.157.0"]                                   
     --num-consensus-nodes  Used to specify desired number  [number]                                                         
                            of consensus nodes for                                                                           
                            pre-genesis deployments                                                                          
     --output-values-file   Output path for the generated   [string] [default: "/home/runner/.solo/cache/falcon-values.yaml"]
                            falcon values YAML file.                                                                         
                            Defaults to                                                                                      
                            ~/.solo/cache/falcon-values.yaml. Relative paths are resolved against the current working directory.                                                                   
-q,  --quiet-mode           Quiet mode, do not prompt for   [boolean] [default: false]                                       
                            confirmation                                                                                     
     --relay-release        DEPRECATED: use                 [string] [default: "0.77.0"]                                     
                            --relay-version  (e.g.                                                                           
                            v0.48.0)                                                                                         
-t,  --release-tag          DEPRECATED: use                 [string] [default: "v0.74.0"]                                    
                            --consensus-node-version                                                                         
                            (e.g. v0.74.0)                                                                                   
     --solo-chart-version   Solo testing chart version      [string] [default: "0.64.0"]                                     
-v,  --version              Show version number             [boolean]                                                        

one-shot show

 one-shot show

Display information about one-shot deployments.

Commands:
  one-shot show deployment   Display information about the last one-shot deployment including name, versions, and deployed components.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

one-shot show deployment

 one-shot show deployment

Display information about the last one-shot deployment including name, versions, and deployed components.

Options:

                                                                                     
-d,  --deployment          The name the user will          [string]                  
                           reference locally to link to a                            
                           deployment                                                
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

rapid-fire

 rapid-fire

Commands for performing load tests a Solo deployment

Commands:
  rapid-fire load      Run load tests using the network load generator with the selected class.
  rapid-fire destroy   Uninstall the Network Load Generator Helm chart and clean up resources.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

rapid-fire load

 rapid-fire load

Run load tests using the network load generator with the selected class.

Commands:
  rapid-fire load start   Start a rapid-fire load test using the selected class.
  rapid-fire load stop    Stop any running processes using the selected class.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

rapid-fire load start

 rapid-fire load start

Start a rapid-fire load test using the selected class.

Options:

     --args                All arguments to be passed to   [string] [required]                       
                           the NLG load test class. Value                                            
                           MUST be wrapped in 2 sets of                                              
                           different quotes. Example:                                                
                           '"-c 100 -a 40 -t 3600"'                                                  
-d,  --deployment          The name the user will          [string] [required]                       
                           reference locally to link to a                                            
                           deployment                                                                
     --test                The class name of the           [string] [required]                       
                           Performance Test to run                                                   
                                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]                
     --force               Force actions even if those     [boolean] [default: false]                
                           can be skipped                                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true]                 
                           the network services                                                      
     --javaHeap            Max Java heap size in GB for    [number] [default: 8]                     
                           the NLG load test class,                                                  
                           defaults to 8                                                             
     --max-tps             The maximum transactions per    [number] [default: 0]                     
                           second to be generated by the                                             
                           NLG load test                                                             
     --package             The package name of the         [string] [default: "com.hedera.benchmark"]
                           Performance Test to run.                                                  
                           Defaults to                                                               
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                
                           confirmation                                                              
-f,  --values-file         Comma separated chart values    [string]                                  
                           file                                                                      
-v,  --version             Show version number             [boolean]                                 

rapid-fire load stop

 rapid-fire load stop

Stop any running processes using the selected class.

Options:

-d,  --deployment          The name the user will          [string] [required]                       
                           reference locally to link to a                                            
                           deployment                                                                
     --test                The class name of the           [string] [required]                       
                           Performance Test to run                                                   
                                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]                
     --force               Force actions even if those     [boolean] [default: false]                
                           can be skipped                                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true]                 
                           the network services                                                      
     --package             The package name of the         [string] [default: "com.hedera.benchmark"]
                           Performance Test to run.                                                  
                           Defaults to                                                               
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]                
                           confirmation                                                              
-v,  --version             Show version number             [boolean]                                 

rapid-fire destroy

 rapid-fire destroy

Uninstall the Network Load Generator Helm chart and clean up resources.

Commands:
  rapid-fire destroy all   Uninstall the Network Load Generator Helm chart and remove all related resources.

Options:

                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-v,  --version             Show version number             [boolean]                 

rapid-fire destroy all

 rapid-fire destroy all

Uninstall the Network Load Generator Helm chart and remove all related resources.

Options:

-d,  --deployment          The name the user will          [string] [required]       
                           reference locally to link to a                            
                           deployment                                                
                                                                                     
     --dev                 Enable developer mode           [boolean] [default: false]
     --force               Force actions even if those     [boolean] [default: false]
                           can be skipped                                            
     --force-port-forward  Force port forward to access    [boolean] [default: true] 
                           the network services                                      
-q,  --quiet-mode          Quiet mode, do not prompt for   [boolean] [default: false]
                           confirmation                                              
-v,  --version             Show version number             [boolean]                 

9.2 - CLI Migration Reference

Legacy-to-current Solo CLI command mappings for users migrating from pre-v0.44 command paths.

Overview

Use this page when migrating scripts or runbooks from legacy Solo CLI command paths (< v0.44.0) to the current command structure.

For full current syntax and flags, see Solo CLI Reference.

Legacy to Current Mapping

Legacy commandCurrent command
initinit
block node addblock node add
block node destroyblock node destroy
block node upgradeblock node upgrade
account initledger system init
account updateledger account update
account createledger account create
account getledger account info
quick-start single deployone-shot single deploy
quick-start single destroyone-shot single destroy
cluster-ref connectcluster-ref config connect
cluster-ref disconnectcluster-ref config disconnect
cluster-ref listcluster-ref config list
cluster-ref infocluster-ref config info
cluster-ref setupcluster-ref config setup
cluster-ref resetcluster-ref config reset
deployment add-clusterdeployment cluster attach
deployment listdeployment config list
deployment createdeployment config create
deployment deletedeployment config delete
explorer deployexplorer node add
explorer destroyexplorer node destroy
mirror-node deploymirror node add
mirror-node destroymirror node destroy
relay deployrelay node add
relay destroyrelay node destroy
network deployconsensus network deploy
network destroyconsensus network destroy
node keyskeys consensus generate
node freezeconsensus network freeze
node upgradeconsensus network upgrade
node setupconsensus node setup
node startconsensus node start
node stopconsensus node stop
node restartconsensus node restart
node refreshconsensus node refresh
node addconsensus node add
node updateconsensus node update
node deleteconsensus node destroy
node add-prepareconsensus dev-node-add prepare
node add-submit-transactionconsensus dev-node-add submit-transactions
node add-executeconsensus dev-node-add execute
node update-prepareconsensus dev-node-update prepare
node update-submit-transactionconsensus dev-node-update submit-transactions
node update-executeconsensus dev-node-update execute
node upgrade-prepareconsensus dev-node-upgrade prepare
node upgrade-submit-transactionconsensus dev-node-upgrade submit-transactions
node upgrade-executeconsensus dev-node-upgrade execute
node delete-prepareconsensus dev-node-delete prepare
node delete-submit-transactionconsensus dev-node-delete submit-transactions
node delete-executeconsensus dev-node-delete execute
node prepare-upgradeconsensus dev-freeze prepare-upgrade
node freeze-upgradeconsensus dev-freeze freeze-upgrade
node logsdeployment diagnostics logs
node download-generated-filesNo direct equivalent. Use deployment diagnostics all or deployment diagnostics debug based on intent.
node statesconsensus state download

Notes

  • Current command tree includes additional commands not present in legacy CLI (for example ledger account predefined, rapid-fire load start, and consensus node collect-jfr).

10 - Solo Image Cache

Speed up deployments by pre-pulling and reusing the container images Solo needs. Manage the local image cache with the solo cache image commands, and control automatic caching during install and one-shot deployments.

Overview

A Solo network runs roughly 29 container images (consensus node, mirror node, JSON-RPC relay, Explorer, MinIO, and supporting services). The image cache pre-pulls those images and stores them as local .tar archives, so repeat deployments load them from disk instead of re-downloading them from their registries.

Solo populates and uses the cache automatically in two places:

  • At install time - Homebrew and npm installs pre-pull the default images.
  • During solo one-shot deploys - Solo pulls and loads the cached images as pipeline phases before the network is deployed.

You can also manage the cache directly with the solo cache image commands.

Prerequisites

  • Solo CLI v0.73.0 or later installed - the image cache was introduced in Solo v0.73.0; earlier versions have no solo cache image command. See Quickstart.

Where the cache lives

Cached image archives are stored under your Solo home directory, in ~/.solo/cache/images/ (one archive per image).

Managing the cache

All commands live under solo cache image.

Pull images

Download the default (stable) images and write them to the cache. This is a prerequisite for load.

solo cache image pull

Pass --edge to cache the edge (pre-release) component versions instead of the stable defaults:

solo cache image pull --edge

You can also pin individual components with the per-component version flags --mirror-node-version, --block-node-version, --relay-version, and --explorer-version.

Load images into a cluster

Load the cached archives into a cluster. This step needs a prior pull and a running cluster with a configured cluster reference (pull itself needs neither a running cluster nor a Docker daemon).

solo cache image load --cluster-ref <cluster-ref>

<cluster-ref> is a Solo cluster reference: an alias Solo maps to a Kubernetes context.

  • solo one-shot deployments create one named one-shot.
  • List the references you already have with solo cluster-ref config list.
  • Create a new one with solo cluster-ref config connect --cluster-ref <name> --context <kube-context>.

List cached archives

solo cache image list

Show cache status

Report which images are cached and which are missing. Pass --cluster-ref to also compare against the images already loaded in a cluster.

solo cache image status --cluster-ref <cluster-ref>

Clear or prune the cache

Remove cached image archives with clear, or with prune (Solo v0.78.0 and later):

solo cache image clear
solo cache image prune

Disabling the cache

The image cache is enabled by default. Each install/deploy path has its own opt-out:

ContextOpt-outNotes
solo one-shot deployENABLE_IMAGE_CACHE=falseRequires Solo v0.78.0 or later.
npm global installSOLO_NO_CACHE=trueSkips the post-install image pull.
Homebrew installHOMEBREW_NO_SOLO_CACHESet to any value (presence-based). Skips both the brew-level pull and the npm post-install pull.

Caching a specific component version

Solo resolves the component versions it caches from environment variables, not from CLI flags or solo.config.yaml. To cache a non-default version, set the version environment variable on the deploy command:

MIRROR_NODE_VERSION=v0.150.0 solo one-shot single deploy

Note: Passing the version with the --mirror-node-version CLI flag (or in solo.config.yaml) changes the deployed component but not the cached images - the cache still uses the default versions, which can cause a cache miss on first deploy. Use the environment variable to keep the cache aligned with the deployed versions.

Troubleshooting

  • [SOLO-4049] Cache has not been materialized yet — the load, list, status, clear, and prune commands require a populated cache. Run solo cache image pull first, then retry the command.
  • The cache is empty after installing Solo. The install-time pull is best-effort and can be skipped by a network hiccup. Populate it manually with solo cache image pull.
  • load cannot find the target cluster. Confirm the cluster reference with solo cluster-ref config list, then re-run load with the correct --cluster-ref.