Trait sc_cli::CliConfiguration
source · pub trait CliConfiguration<DCV: DefaultConfigurationValues = ()>: Sized {
Show 51 methods
// Required method
fn shared_params(&self) -> &SharedParams;
// Provided methods
fn import_params(&self) -> Option<&ImportParams> { ... }
fn pruning_params(&self) -> Option<&PruningParams> { ... }
fn keystore_params(&self) -> Option<&KeystoreParams> { ... }
fn network_params(&self) -> Option<&NetworkParams> { ... }
fn offchain_worker_params(&self) -> Option<&OffchainWorkerParams> { ... }
fn node_key_params(&self) -> Option<&NodeKeyParams> { ... }
fn database_params(&self) -> Option<&DatabaseParams> { ... }
fn base_path(&self) -> Result<Option<BasePath>> { ... }
fn is_dev(&self) -> Result<bool> { ... }
fn role(&self, _is_dev: bool) -> Result<Role> { ... }
fn transaction_pool(&self, _is_dev: bool) -> Result<TransactionPoolOptions> { ... }
fn network_config(
&self,
chain_spec: &Box<dyn ChainSpec>,
is_dev: bool,
is_validator: bool,
net_config_dir: PathBuf,
client_id: &str,
node_name: &str,
node_key: NodeKeyConfig,
default_listen_port: u16
) -> Result<NetworkConfiguration> { ... }
fn keystore_config(&self, config_dir: &PathBuf) -> Result<KeystoreConfig> { ... }
fn database_cache_size(&self) -> Result<Option<usize>> { ... }
fn database(&self) -> Result<Option<Database>> { ... }
fn database_config(
&self,
base_path: &PathBuf,
cache_size: usize,
database: Database
) -> Result<DatabaseSource> { ... }
fn trie_cache_maximum_size(&self) -> Result<Option<usize>> { ... }
fn state_pruning(&self) -> Result<Option<PruningMode>> { ... }
fn blocks_pruning(&self) -> Result<BlocksPruning> { ... }
fn chain_id(&self, is_dev: bool) -> Result<String> { ... }
fn node_name(&self) -> Result<String> { ... }
fn wasm_method(&self) -> Result<WasmExecutionMethod> { ... }
fn wasm_runtime_overrides(&self) -> Option<PathBuf> { ... }
fn execution_strategies(
&self,
is_dev: bool,
is_validator: bool
) -> Result<ExecutionStrategies> { ... }
fn rpc_addr(&self, _default_listen_port: u16) -> Result<Option<SocketAddr>> { ... }
fn rpc_methods(&self) -> Result<RpcMethods> { ... }
fn rpc_max_connections(&self) -> Result<u32> { ... }
fn rpc_cors(&self, _is_dev: bool) -> Result<Option<Vec<String>>> { ... }
fn rpc_max_request_size(&self) -> Result<u32> { ... }
fn rpc_max_response_size(&self) -> Result<u32> { ... }
fn rpc_max_subscriptions_per_connection(&self) -> Result<u32> { ... }
fn prometheus_config(
&self,
_default_listen_port: u16,
_chain_spec: &Box<dyn ChainSpec>
) -> Result<Option<PrometheusConfig>> { ... }
fn telemetry_endpoints(
&self,
chain_spec: &Box<dyn ChainSpec>
) -> Result<Option<TelemetryEndpoints>> { ... }
fn default_heap_pages(&self) -> Result<Option<u64>> { ... }
fn offchain_worker(&self, role: &Role) -> Result<OffchainWorkerConfig> { ... }
fn force_authoring(&self) -> Result<bool> { ... }
fn disable_grandpa(&self) -> Result<bool> { ... }
fn dev_key_seed(&self, _is_dev: bool) -> Result<Option<String>> { ... }
fn tracing_targets(&self) -> Result<Option<String>> { ... }
fn tracing_receiver(&self) -> Result<TracingReceiver> { ... }
fn node_key(&self, net_config_dir: &PathBuf) -> Result<NodeKeyConfig> { ... }
fn max_runtime_instances(&self) -> Result<Option<usize>> { ... }
fn runtime_cache_size(&self) -> Result<u8> { ... }
fn announce_block(&self) -> Result<bool> { ... }
fn create_configuration<C: SubstrateCli>(
&self,
cli: &C,
tokio_handle: Handle
) -> Result<Configuration> { ... }
fn log_filters(&self) -> Result<String> { ... }
fn detailed_log_output(&self) -> Result<bool> { ... }
fn enable_log_reloading(&self) -> Result<bool> { ... }
fn disable_log_color(&self) -> Result<bool> { ... }
fn init<F>(
&self,
support_url: &String,
impl_version: &String,
logger_hook: F,
config: &Configuration
) -> Result<()>
where F: FnOnce(&mut LoggerBuilder, &Configuration) { ... }
}Expand description
A trait that allows converting an object to a Configuration
Required Methods§
Get the SharedParams for this object
Provided Methods§
sourcefn import_params(&self) -> Option<&ImportParams>
fn import_params(&self) -> Option<&ImportParams>
Get the ImportParams for this object
sourcefn pruning_params(&self) -> Option<&PruningParams>
fn pruning_params(&self) -> Option<&PruningParams>
Get the PruningParams for this object
sourcefn keystore_params(&self) -> Option<&KeystoreParams>
fn keystore_params(&self) -> Option<&KeystoreParams>
Get the KeystoreParams for this object
sourcefn network_params(&self) -> Option<&NetworkParams>
fn network_params(&self) -> Option<&NetworkParams>
Get the NetworkParams for this object
sourcefn offchain_worker_params(&self) -> Option<&OffchainWorkerParams>
fn offchain_worker_params(&self) -> Option<&OffchainWorkerParams>
Get a reference to OffchainWorkerParams for this object.
sourcefn node_key_params(&self) -> Option<&NodeKeyParams>
fn node_key_params(&self) -> Option<&NodeKeyParams>
Get the NodeKeyParams for this object
sourcefn database_params(&self) -> Option<&DatabaseParams>
fn database_params(&self) -> Option<&DatabaseParams>
Get the DatabaseParams for this object
sourcefn base_path(&self) -> Result<Option<BasePath>>
fn base_path(&self) -> Result<Option<BasePath>>
Get the base path of the configuration (if any)
By default this is retrieved from SharedParams.
sourcefn is_dev(&self) -> Result<bool>
fn is_dev(&self) -> Result<bool>
Returns true if the node is for development or not
By default this is retrieved from SharedParams.
sourcefn transaction_pool(&self, _is_dev: bool) -> Result<TransactionPoolOptions>
fn transaction_pool(&self, _is_dev: bool) -> Result<TransactionPoolOptions>
Get the transaction pool options
By default this is TransactionPoolOptions::default().
sourcefn network_config(
&self,
chain_spec: &Box<dyn ChainSpec>,
is_dev: bool,
is_validator: bool,
net_config_dir: PathBuf,
client_id: &str,
node_name: &str,
node_key: NodeKeyConfig,
default_listen_port: u16
) -> Result<NetworkConfiguration>
fn network_config( &self, chain_spec: &Box<dyn ChainSpec>, is_dev: bool, is_validator: bool, net_config_dir: PathBuf, client_id: &str, node_name: &str, node_key: NodeKeyConfig, default_listen_port: u16 ) -> Result<NetworkConfiguration>
Get the network configuration
By default this is retrieved from NetworkParams if it is available otherwise it creates
a default NetworkConfiguration based on node_name, client_id, node_key and
net_config_dir.
sourcefn keystore_config(&self, config_dir: &PathBuf) -> Result<KeystoreConfig>
fn keystore_config(&self, config_dir: &PathBuf) -> Result<KeystoreConfig>
Get the keystore configuration.
By default this is retrieved from KeystoreParams if it is available. Otherwise it uses
KeystoreConfig::InMemory.
sourcefn database_cache_size(&self) -> Result<Option<usize>>
fn database_cache_size(&self) -> Result<Option<usize>>
Get the database cache size.
By default this is retrieved from DatabaseParams if it is available. Otherwise its None.
sourcefn database(&self) -> Result<Option<Database>>
fn database(&self) -> Result<Option<Database>>
Get the database backend variant.
By default this is retrieved from DatabaseParams if it is available. Otherwise its None.
sourcefn database_config(
&self,
base_path: &PathBuf,
cache_size: usize,
database: Database
) -> Result<DatabaseSource>
fn database_config( &self, base_path: &PathBuf, cache_size: usize, database: Database ) -> Result<DatabaseSource>
Get the database configuration object for the parameters provided
sourcefn trie_cache_maximum_size(&self) -> Result<Option<usize>>
fn trie_cache_maximum_size(&self) -> Result<Option<usize>>
Get the trie cache maximum size.
By default this is retrieved from ImportParams if it is available. Otherwise its 0.
If None is returned the trie cache is disabled.
sourcefn state_pruning(&self) -> Result<Option<PruningMode>>
fn state_pruning(&self) -> Result<Option<PruningMode>>
Get the state pruning mode.
By default this is retrieved from PruningMode if it is available. Otherwise its
PruningMode::default().
sourcefn blocks_pruning(&self) -> Result<BlocksPruning>
fn blocks_pruning(&self) -> Result<BlocksPruning>
Get the block pruning mode.
By default this is retrieved from block_pruning if it is available. Otherwise its
BlocksPruning::KeepFinalized.
sourcefn chain_id(&self, is_dev: bool) -> Result<String>
fn chain_id(&self, is_dev: bool) -> Result<String>
Get the chain ID (string).
By default this is retrieved from SharedParams.
sourcefn node_name(&self) -> Result<String>
fn node_name(&self) -> Result<String>
Get the name of the node.
By default a random name is generated.
sourcefn wasm_method(&self) -> Result<WasmExecutionMethod>
fn wasm_method(&self) -> Result<WasmExecutionMethod>
Get the WASM execution method.
By default this is retrieved from ImportParams if it is available. Otherwise its
WasmExecutionMethod::default().
sourcefn wasm_runtime_overrides(&self) -> Option<PathBuf>
fn wasm_runtime_overrides(&self) -> Option<PathBuf>
Get the path where WASM overrides live.
By default this is None.
sourcefn execution_strategies(
&self,
is_dev: bool,
is_validator: bool
) -> Result<ExecutionStrategies>
fn execution_strategies( &self, is_dev: bool, is_validator: bool ) -> Result<ExecutionStrategies>
Get the execution strategies.
By default this is retrieved from ImportParams if it is available. Otherwise its
ExecutionStrategies::default().
sourcefn rpc_addr(&self, _default_listen_port: u16) -> Result<Option<SocketAddr>>
fn rpc_addr(&self, _default_listen_port: u16) -> Result<Option<SocketAddr>>
Get the RPC address.
sourcefn rpc_methods(&self) -> Result<RpcMethods>
fn rpc_methods(&self) -> Result<RpcMethods>
Returns the RPC method set to expose.
By default this is RpcMethods::Auto (unsafe RPCs are denied iff
rpc_external returns true, respectively).
sourcefn rpc_max_connections(&self) -> Result<u32>
fn rpc_max_connections(&self) -> Result<u32>
Get the maximum number of RPC server connections.
sourcefn rpc_cors(&self, _is_dev: bool) -> Result<Option<Vec<String>>>
fn rpc_cors(&self, _is_dev: bool) -> Result<Option<Vec<String>>>
Get the RPC cors (None if disabled)
By default this is Some(Vec::new()).
sourcefn rpc_max_request_size(&self) -> Result<u32>
fn rpc_max_request_size(&self) -> Result<u32>
Get maximum RPC request payload size.
sourcefn rpc_max_response_size(&self) -> Result<u32>
fn rpc_max_response_size(&self) -> Result<u32>
Get maximum RPC response payload size.
sourcefn rpc_max_subscriptions_per_connection(&self) -> Result<u32>
fn rpc_max_subscriptions_per_connection(&self) -> Result<u32>
Get maximum number of subscriptions per connection.
sourcefn prometheus_config(
&self,
_default_listen_port: u16,
_chain_spec: &Box<dyn ChainSpec>
) -> Result<Option<PrometheusConfig>>
fn prometheus_config( &self, _default_listen_port: u16, _chain_spec: &Box<dyn ChainSpec> ) -> Result<Option<PrometheusConfig>>
Get the prometheus configuration (None if disabled)
By default this is None.
sourcefn telemetry_endpoints(
&self,
chain_spec: &Box<dyn ChainSpec>
) -> Result<Option<TelemetryEndpoints>>
fn telemetry_endpoints( &self, chain_spec: &Box<dyn ChainSpec> ) -> Result<Option<TelemetryEndpoints>>
Get the telemetry endpoints (if any)
By default this is retrieved from the chain spec loaded by load_spec.
sourcefn default_heap_pages(&self) -> Result<Option<u64>>
fn default_heap_pages(&self) -> Result<Option<u64>>
Get the default value for heap pages
By default this is None.
sourcefn offchain_worker(&self, role: &Role) -> Result<OffchainWorkerConfig>
fn offchain_worker(&self, role: &Role) -> Result<OffchainWorkerConfig>
Returns an offchain worker config wrapped in Ok(_)
By default offchain workers are disabled.
Returns Ok(true) if authoring should be forced
By default this is false.
sourcefn disable_grandpa(&self) -> Result<bool>
fn disable_grandpa(&self) -> Result<bool>
Returns Ok(true) if grandpa should be disabled
By default this is false.
sourcefn dev_key_seed(&self, _is_dev: bool) -> Result<Option<String>>
fn dev_key_seed(&self, _is_dev: bool) -> Result<Option<String>>
Get the development key seed from the current object
By default this is None.
sourcefn tracing_targets(&self) -> Result<Option<String>>
fn tracing_targets(&self) -> Result<Option<String>>
Get the tracing targets from the current object (if any)
By default this is retrieved from SharedParams if it is available. Otherwise its
None.
sourcefn tracing_receiver(&self) -> Result<TracingReceiver>
fn tracing_receiver(&self) -> Result<TracingReceiver>
Get the TracingReceiver value from the current object
By default this is retrieved from SharedParams if it is available. Otherwise its
TracingReceiver::default().
sourcefn node_key(&self, net_config_dir: &PathBuf) -> Result<NodeKeyConfig>
fn node_key(&self, net_config_dir: &PathBuf) -> Result<NodeKeyConfig>
Get the node key from the current object
By default this is retrieved from NodeKeyParams if it is available. Otherwise its
NodeKeyConfig::default().
sourcefn max_runtime_instances(&self) -> Result<Option<usize>>
fn max_runtime_instances(&self) -> Result<Option<usize>>
Get maximum runtime instances
By default this is None.
sourcefn runtime_cache_size(&self) -> Result<u8>
fn runtime_cache_size(&self) -> Result<u8>
Get maximum different runtimes in cache
By default this is 2.
sourcefn announce_block(&self) -> Result<bool>
fn announce_block(&self) -> Result<bool>
Activate or not the automatic announcing of blocks after import
By default this is false.
sourcefn create_configuration<C: SubstrateCli>(
&self,
cli: &C,
tokio_handle: Handle
) -> Result<Configuration>
fn create_configuration<C: SubstrateCli>( &self, cli: &C, tokio_handle: Handle ) -> Result<Configuration>
Create a Configuration object from the current object
sourcefn log_filters(&self) -> Result<String>
fn log_filters(&self) -> Result<String>
Get the filters for the logging.
This should be a list of comma-separated values.
Example: foo=trace,bar=debug,baz=info
By default this is retrieved from SharedParams.
sourcefn detailed_log_output(&self) -> Result<bool>
fn detailed_log_output(&self) -> Result<bool>
Should the detailed log output be enabled.
sourcefn enable_log_reloading(&self) -> Result<bool>
fn enable_log_reloading(&self) -> Result<bool>
Is log reloading enabled?
sourcefn disable_log_color(&self) -> Result<bool>
fn disable_log_color(&self) -> Result<bool>
Should the log color output be disabled?
sourcefn init<F>(
&self,
support_url: &String,
impl_version: &String,
logger_hook: F,
config: &Configuration
) -> Result<()>where
F: FnOnce(&mut LoggerBuilder, &Configuration),
fn init<F>( &self, support_url: &String, impl_version: &String, logger_hook: F, config: &Configuration ) -> Result<()>where F: FnOnce(&mut LoggerBuilder, &Configuration),
Initialize substrate. This must be done only once per process.
This method:
- Sets the panic handler
- Optionally customize logger/profiling
- Initializes the logger
- Raises the FD limit
The logger_hook closure is executed before the logger is constructed
and initialized. It is useful for setting up a custom profiler.
Example:
use sc_tracing::{SpanDatum, TraceEvent};
struct TestProfiler;
impl sc_tracing::TraceHandler for TestProfiler {
fn handle_span(&self, sd: &SpanDatum) {}
fn handle_event(&self, _event: &TraceEvent) {}
};
fn logger_hook() -> impl FnOnce(&mut sc_cli::LoggerBuilder, &sc_service::Configuration) -> () {
|logger_builder, config| {
logger_builder.with_custom_profiling(Box::new(TestProfiler{}));
}
}