Skip to content
Snippets Groups Projects
Unverified Commit 7a6e91c4 authored by Alexandru Vasile's avatar Alexandru Vasile Committed by GitHub
Browse files

cli/net_params: Warn on empty public-addr when starting a validator node (#5240)


This PR shows a warning when the `--public-addr` is not provided for
validators.

In the future, we'll transform this warning into a hard failure.
Validators are encouraged to provide this parameter for better
availability over the network.

cc @paritytech/networking

---------

Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
parent dd48544a
No related merge requests found
Pipeline #487828 waiting for manual action with stages
in 46 minutes and 28 seconds
title: Warn on empty public-addr when starting a validator node
doc:
- audience: Node Operator
description: |
This PR shows a warning when the `--public-addr` CLI parameter is missing for validators.
In the future, we'll transform this warning into a hard failure.
Validators are encouraged to provide this parameter for better availability over the network.
crates:
- name: sc-cli
bump: patch
......@@ -172,7 +172,7 @@ pub trait CliConfiguration<DCV: DefaultConfigurationValues = ()>: Sized {
node_key: NodeKeyConfig,
default_listen_port: u16,
) -> Result<NetworkConfiguration> {
Ok(if let Some(network_params) = self.network_params() {
let network_config = if let Some(network_params) = self.network_params() {
network_params.network_config(
chain_spec,
is_dev,
......@@ -185,7 +185,13 @@ pub trait CliConfiguration<DCV: DefaultConfigurationValues = ()>: Sized {
)
} else {
NetworkConfiguration::new(node_name, client_id, node_key, Some(net_config_dir))
})
};
// TODO: Return error here in the next release:
// https://github.com/paritytech/polkadot-sdk/issues/5266
// if is_validator && network_config.public_addresses.is_empty() {}
Ok(network_config)
}
/// Get the keystore configuration.
......@@ -638,6 +644,14 @@ pub trait CliConfiguration<DCV: DefaultConfigurationValues = ()>: Sized {
logger.init()?;
if config.role.is_authority() && config.network.public_addresses.is_empty() {
warn!(
"WARNING: No public address specified, validator node may not be reachable.
Consider setting `--public-addr` to the public IP address of this node.
This will become a hard requirement in future versions."
);
}
match fdlimit::raise_fd_limit() {
Ok(fdlimit::Outcome::LimitRaised { to, .. }) =>
if to < RECOMMENDED_OPEN_FILE_DESCRIPTOR_LIMIT {
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment