MCPcopy Create free account
hub / github.com/Sifchain/sifnode / Build

Method Build

tools/sifgen/network/network.go:64–163  ·  view source on GitHub ↗
(count int, outputDir, seedIPv4Addr string)

Source from the content-addressed store, hash-verified

62}
63
64func (n *Network) Build(count int, outputDir, seedIPv4Addr string) (*string, error) {
65 if err := n.CLI.Reset([]string{outputDir}); err != nil {
66 return nil, err
67 }
68
69 initDirs := []string{
70 fmt.Sprintf("%s/%s", outputDir, ValidatorsDir),
71 fmt.Sprintf("%s/%s", outputDir, GentxsDir),
72 }
73
74 if err := n.createDirs(initDirs); err != nil {
75 return nil, err
76 }
77
78 gentxDir := fmt.Sprintf("%s/%s", outputDir, GentxsDir)
79 validators := n.initValidators(count, outputDir, seedIPv4Addr)
80
81 for _, validator := range validators {
82 appDirs := []string{validator.NodeHomeDir}
83 if err := n.createDirs(appDirs); err != nil {
84 return nil, err
85 }
86
87 if err := n.generateKey(validator); err != nil {
88 return nil, err
89 }
90
91 if err := n.initChain(validator); err != nil {
92 return nil, err
93 }
94
95 if err := n.setValidatorAddress(validator); err != nil {
96 return nil, err
97 }
98
99 if err := n.setValidatorConsensusAddress(validator); err != nil {
100 return nil, err
101 }
102
103 if err := genesis.ReplaceStakingBondDenom(validator.NodeHomeDir); err != nil {
104 return nil, err
105 }
106
107 if err := genesis.ReplaceMintBondDenom(validator.NodeHomeDir); err != nil {
108 return nil, err
109 }
110
111 if err := n.setValidatorID(validator); err != nil {
112 return nil, err
113 }
114
115 if !validator.Seed {
116 seedValidator := n.getSeedValidator(validators)
117
118 if err := n.addValidatorKeyToSeed(validator, seedValidator); err != nil {
119 return nil, err
120 }
121

Callers 2

NetworkCreateMethod · 0.95
networkCreateCmdFunction · 0.95

Calls 15

createDirsMethod · 0.95
initValidatorsMethod · 0.95
generateKeyMethod · 0.95
initChainMethod · 0.95
setValidatorAddressMethod · 0.95
setValidatorIDMethod · 0.95
getSeedValidatorMethod · 0.95
addValidatorKeyToSeedMethod · 0.95
addGenesisMethod · 0.95
generateTxMethod · 0.95
setGenesisOracleAdminMethod · 0.95

Tested by

no test coverage detected