81ba6ab6f0
* feat: lp mig - first few steps * lp mig: default tasks * code comments * docs * lp-mig-progress * shared * comments and todos * fix: curio: rename lotus-provider to curio (#11645) * rename provider to curio * install gotext * fix lint errors, mod tidy * fix typo * fix API_INFO and add gotext to circleCI * add back gotext * add gotext after remerge * lp: channels doc * finish easy-migration TODOs * out generate * merging and more renames * avoid make-all * minor doc stuff * cu: make gen * make gen fix * make gen * tryfix * go mod tidy * minor ez migration fixes * ez setup - ui cleanups * better error message * guided setup colors * better path to saveconfigtolayer * loadconfigwithupgrades fix * readMiner oops * guided - homedir * err if miner is running * prompt error should exit * process already running, miner_id sectors in migration * dont prompt for language a second time * check miner stopped * unlock repo * render and sql oops * curio easyMig - some fixes * easyMigration runs successfully * lint * review fixes * fix backup path * fixes1 * fixes2 * fixes 3 --------- Co-authored-by: LexLuthr <88259624+LexLuthr@users.noreply.github.com> Co-authored-by: LexLuthr <lexluthr@protocol.ai>
65 lines
1.8 KiB
Go
65 lines
1.8 KiB
Go
package curio
|
|
|
|
import (
|
|
"golang.org/x/xerrors"
|
|
|
|
"github.com/filecoin-project/go-address"
|
|
|
|
"github.com/filecoin-project/lotus/api"
|
|
"github.com/filecoin-project/lotus/curiosrc/multictladdr"
|
|
"github.com/filecoin-project/lotus/node/config"
|
|
)
|
|
|
|
func AddressSelector(addrConf []config.CurioAddresses) func() (*multictladdr.MultiAddressSelector, error) {
|
|
return func() (*multictladdr.MultiAddressSelector, error) {
|
|
as := &multictladdr.MultiAddressSelector{
|
|
MinerMap: make(map[address.Address]api.AddressConfig),
|
|
}
|
|
if addrConf == nil {
|
|
return as, nil
|
|
}
|
|
|
|
for _, addrConf := range addrConf {
|
|
for _, minerID := range addrConf.MinerAddresses {
|
|
tmp := api.AddressConfig{
|
|
DisableOwnerFallback: addrConf.DisableOwnerFallback,
|
|
DisableWorkerFallback: addrConf.DisableWorkerFallback,
|
|
}
|
|
|
|
for _, s := range addrConf.PreCommitControl {
|
|
addr, err := address.NewFromString(s)
|
|
if err != nil {
|
|
return nil, xerrors.Errorf("parsing precommit control address: %w", err)
|
|
}
|
|
|
|
tmp.PreCommitControl = append(tmp.PreCommitControl, addr)
|
|
}
|
|
|
|
for _, s := range addrConf.CommitControl {
|
|
addr, err := address.NewFromString(s)
|
|
if err != nil {
|
|
return nil, xerrors.Errorf("parsing commit control address: %w", err)
|
|
}
|
|
|
|
tmp.CommitControl = append(tmp.CommitControl, addr)
|
|
}
|
|
|
|
for _, s := range addrConf.TerminateControl {
|
|
addr, err := address.NewFromString(s)
|
|
if err != nil {
|
|
return nil, xerrors.Errorf("parsing terminate control address: %w", err)
|
|
}
|
|
|
|
tmp.TerminateControl = append(tmp.TerminateControl, addr)
|
|
}
|
|
a, err := address.NewFromString(minerID)
|
|
if err != nil {
|
|
return nil, xerrors.Errorf("parsing miner address %s: %w", minerID, err)
|
|
}
|
|
as.MinerMap[a] = tmp
|
|
}
|
|
}
|
|
return as, nil
|
|
}
|
|
}
|