Supported Chains

cw-orchestrator currently explicitly supports the chains in this section:

Support a new Cosmos Chain

Almost all Cosmos Chains can be added to cw-orchestrator. Depending on the on-chain modules (CosmWasm is not available on all chains for instance), action may be forbidden for some chains. However, connection should work out of the box for most of the chains. In order to add a new chain to your project, you can use the following objects:


use cw_orch::environment::{ChainInfo, ChainKind, NetworkInfo};

pub const NEW_NETWORK_INFO: NetworkInfo = NetworkInfo {
    chain_name: "osmosis",
    pub_address_prefix: "osmo",
    coin_type: 118,
};

pub const NEW_CHAIN_INFO: ChainInfo = ChainInfo {
    chain_id: "osmosis-4",
    gas_denom: "uosmo",
    gas_price: 7575.8,
    grpc_urls: &["Some GRPC URLS"],
    lcd_url: None, // Not necessary for cw-orch
    fcd_url: None, // Not necessary for cw-orch
    network_info: NEW_NETWORK_INFO,
    kind: ChainKind::Mainnet,
};

This chain info can then be used inside your project just like any other chain defined inside cw-orch.

Alternatively, we suggest using the grpc_url and gas methods on the DaemonBuilder for quick and dirty fixes to the grpc url and the gas prices if needed.

If you would like to add explicit support for another chain, please feel free to open a PR!

Config Overwrite

If you’re running into issues with a dead gRPC URL, wrong gas price or similar issues then you can use a config file to overwrite those variables. To do so, make a new config file in ~/.cw-orchestrator/networks.toml.

touch ~/.cw-orchestrator/networks.toml

Then you can add the following optional content to the file, replacing the values with the ones you need. The chain-id is used to identify the chain you want to overwrite the values for.

[juno-1]
kind = "mainnet"
chain_id = "juno-1"
gas_denom = "ujuno"
gas_price = 0.075
grpc_urls = ["http://juno-grpc.polkachu.com:12690"]

[juno-1.network_info]
chain_name = "juno"
pub_address_prefix = "juno"
coin_type = 118

So in the example above the configuration is applied for a Daemon built with the JUNO_1 network.

Issues

Each of the gRPC endpoints has been battle-tested for deployments. If you find any issues, please open an issue!