Rename announce and no_announce settings to be consistent with listen_multiaddress

This commit is contained in:
Jonas Michel 2023-12-20 09:40:32 -06:00
parent 95beedb679
commit 009dada8d6
3 changed files with 26 additions and 24 deletions

View File

@ -96,10 +96,10 @@ type Config struct {
// If non-empty, this array specifies the swarm addresses to announce to
// the network. If empty, the daemon will announce inferred swarm addresses.
Announce []ma.Multiaddr
AnnounceAddr []ma.Multiaddr
// Array of swarm addresses not to announce to the network.
NoAnnounce []ma.Multiaddr
NoAnnounceAddr []ma.Multiaddr
// Time between syncs of the consensus state to the
// tracker state. Normally states are synced anyway, but this helps
@ -186,11 +186,11 @@ type configJSON struct {
Secret string `json:"secret" hidden:"true"`
LeaveOnShutdown bool `json:"leave_on_shutdown"`
ListenMultiaddress config.Strings `json:"listen_multiaddress"`
AnnounceMultiaddress config.Strings `json:"announce_multiaddress"`
NoAnnounceMultiaddress config.Strings `json:"no_announce_multiaddress"`
EnableRelayHop bool `json:"enable_relay_hop"`
ConnectionManager *connMgrConfigJSON `json:"connection_manager"`
DialPeerTimeout string `json:"dial_peer_timeout"`
Announce []string `json:"announce"`
NoAnnounce []string `json:"no_announce"`
StateSyncInterval string `json:"state_sync_interval"`
PinRecoverInterval string `json:"pin_recover_interval"`
ReplicationFactorMin int `json:"replication_factor_min"`
@ -381,6 +381,8 @@ func (cfg *Config) setDefaults() {
listenAddrs = append(listenAddrs, addr)
}
cfg.ListenAddr = listenAddrs
cfg.AnnounceAddr = []ma.Multiaddr{}
cfg.NoAnnounceAddr = []ma.Multiaddr{}
cfg.EnableRelayHop = DefaultEnableRelayHop
cfg.ConnMgr = ConnMgrConfig{
HighWater: DefaultConnMgrHighWater,
@ -388,8 +390,6 @@ func (cfg *Config) setDefaults() {
GracePeriod: DefaultConnMgrGracePeriod,
}
cfg.DialPeerTimeout = DefaultDialPeerTimeout
cfg.Announce = []ma.Multiaddr{}
cfg.NoAnnounce = []ma.Multiaddr{}
cfg.LeaveOnShutdown = DefaultLeaveOnShutdown
cfg.StateSyncInterval = DefaultStateSyncInterval
cfg.PinRecoverInterval = DefaultPinRecoverInterval
@ -441,6 +441,21 @@ func (cfg *Config) applyConfigJSON(jcfg *configJSON) error {
return err
}
cfg.ListenAddr = listenAddrs
announceAddrs, err := toMultiAddrs(jcfg.AnnounceMultiaddress)
if err != nil {
err = fmt.Errorf("error parsing announce: %s", err)
return err
}
cfg.AnnounceAddr = announceAddrs
noAnnounceAddrs, err := toMultiAddrs(jcfg.NoAnnounceMultiaddress)
if err != nil {
err = fmt.Errorf("error parsing no_announce: %s", err)
return err
}
cfg.NoAnnounceAddr = noAnnounceAddrs
cfg.EnableRelayHop = jcfg.EnableRelayHop
if conman := jcfg.ConnectionManager; conman != nil {
cfg.ConnMgr = ConnMgrConfig{
@ -455,20 +470,6 @@ func (cfg *Config) applyConfigJSON(jcfg *configJSON) error {
}
}
annAddrs, err := toMultiAddrs(jcfg.Announce)
if err != nil {
err = fmt.Errorf("error parsing announce: %s", err)
return err
}
cfg.Announce = annAddrs
noAnnAddrs, err := toMultiAddrs(jcfg.NoAnnounce)
if err != nil {
err = fmt.Errorf("error parsing no_announce: %s", err)
return err
}
cfg.NoAnnounce = noAnnAddrs
rplMin := jcfg.ReplicationFactorMin
rplMax := jcfg.ReplicationFactorMax
config.SetIfNotDefault(rplMin, &cfg.ReplicationFactorMin)
@ -538,6 +539,8 @@ func (cfg *Config) toConfigJSON() (jcfg *configJSON, err error) {
listenAddrs = append(listenAddrs, addr.String())
}
jcfg.ListenMultiaddress = config.Strings(listenAddrs)
jcfg.AnnounceMultiaddress = multiAddrstoStrings(cfg.AnnounceAddr)
jcfg.NoAnnounceMultiaddress = multiAddrstoStrings(cfg.NoAnnounceAddr)
jcfg.EnableRelayHop = cfg.EnableRelayHop
jcfg.ConnectionManager = &connMgrConfigJSON{
HighWater: cfg.ConnMgr.HighWater,
@ -545,8 +548,6 @@ func (cfg *Config) toConfigJSON() (jcfg *configJSON, err error) {
GracePeriod: cfg.ConnMgr.GracePeriod.String(),
}
jcfg.DialPeerTimeout = cfg.DialPeerTimeout.String()
jcfg.Announce = multiAddrstoStrings(cfg.Announce)
jcfg.NoAnnounce = multiAddrstoStrings(cfg.NoAnnounce)
jcfg.StateSyncInterval = cfg.StateSyncInterval.String()
jcfg.PinRecoverInterval = cfg.PinRecoverInterval.String()
jcfg.MonitorPingInterval = cfg.MonitorPingInterval.String()

View File

@ -88,7 +88,7 @@ func NewClusterHost(
return idht
}
addrsFactory, err := makeAddrsFactory(cfg.Announce, cfg.NoAnnounce)
addrsFactory, err := makeAddrsFactory(cfg.AnnounceAddr, cfg.NoAnnounceAddr)
if err != nil {
return nil, nil, nil, err
}

View File

@ -10,6 +10,7 @@ import (
blake2b "golang.org/x/crypto/blake2b"
"github.com/ipfs-cluster/ipfs-cluster/api"
"github.com/ipfs-cluster/ipfs-cluster/config"
peer "github.com/libp2p/go-libp2p/core/peer"
ma "github.com/multiformats/go-multiaddr"
madns "github.com/multiformats/go-multiaddr-dns"
@ -210,7 +211,7 @@ func publicIPFSAddresses(in []api.Multiaddr) []api.Multiaddr {
return out
}
func toMultiAddrs(addrs []string) ([]ma.Multiaddr, error) {
func toMultiAddrs(addrs config.Strings) ([]ma.Multiaddr, error) {
var mAddrs []ma.Multiaddr
for _, addr := range addrs {
mAddr, err := ma.NewMultiaddr(addr)