@@ -17,6 +17,7 @@ import (
17
17
"github.com/ava-labs/avalanche-network-runner/network"
18
18
"github.com/ava-labs/avalanche-network-runner/network/node"
19
19
"github.com/ava-labs/avalanche-network-runner/rpcpb"
20
+ "github.com/ava-labs/avalanche-network-runner/utils"
20
21
"github.com/ava-labs/avalanche-network-runner/utils/constants"
21
22
"github.com/ava-labs/avalanche-network-runner/ux"
22
23
"github.com/ava-labs/avalanchego/config"
@@ -165,22 +166,29 @@ func (lc *localNetwork) createConfig() error {
165
166
166
167
cfg .NetworkID = lc .options .networkID
167
168
169
+ for k , v := range lc .options .chainConfigs {
170
+ ov , ok := cfg .ChainConfigFiles [k ]
171
+ if ok {
172
+ v , err = utils .CombineJSONs (ov , v )
173
+ if err != nil {
174
+ return err
175
+ }
176
+ }
177
+ cfg .ChainConfigFiles [k ] = v
178
+ }
179
+ for k , v := range lc .options .upgradeConfigs {
180
+ cfg .UpgradeConfigFiles [k ] = v
181
+ }
182
+ for k , v := range lc .options .subnetConfigs {
183
+ cfg .SubnetConfigFiles [k ] = v
184
+ }
185
+
168
186
for i := range cfg .NodeConfigs {
169
187
// NOTE: Naming convention for node names is currently `node` + number, i.e. `node1,node2,node3,...node101`
170
188
nodeName := fmt .Sprintf ("node%d" , i + 1 )
171
189
172
190
cfg .NodeConfigs [i ].Name = nodeName
173
191
174
- for k , v := range lc .options .chainConfigs {
175
- cfg .NodeConfigs [i ].ChainConfigFiles [k ] = v
176
- }
177
- for k , v := range lc .options .upgradeConfigs {
178
- cfg .NodeConfigs [i ].UpgradeConfigFiles [k ] = v
179
- }
180
- for k , v := range lc .options .subnetConfigs {
181
- cfg .NodeConfigs [i ].SubnetConfigFiles [k ] = v
182
- }
183
-
184
192
if cfg .NodeConfigs [i ].Flags == nil {
185
193
cfg .NodeConfigs [i ].Flags = map [string ]interface {}{}
186
194
}
0 commit comments