warn if mismatch on network id

This commit is contained in:
Jonathan Rainville 2018-07-31 09:59:27 -04:00 committed by Iuri Matias
parent 5f77d5e5f0
commit ca32d7aac0
2 changed files with 20 additions and 2 deletions

View File

@ -38,7 +38,13 @@
"blockchainExit": "blockchainExit",
"init": "init",
"initiated": "initiated",
"servicePortOnProxy": 10
"servicePortOnProxy": 10,
"networkIds": {
"mainnet": 1,
"testnet": 3,
"ropsten": 3,
"rinkeby": 4
}
},
"storage": {
"init": "init",

View File

@ -2,6 +2,7 @@ const Web3 = require('web3');
const async = require('async');
const Provider = require('./provider.js');
const utils = require('../../utils/utils');
const constants = require('../../constants');
const WEB3_READY = 'web3Ready';
@ -18,7 +19,6 @@ class BlockchainConnector {
this.isDev = options.isDev;
this.web3Endpoint = '';
this.isWeb3Ready = false;
this.web3StartedInProcess = false;
self.events.setCommandHandler("blockchain:web3:isReady", (cb) => {
cb(self.isWeb3Ready);
@ -74,6 +74,18 @@ class BlockchainConnector {
self.events.request("processes:launch", "blockchain", () => {
self.provider.startWeb3Provider(() => {
this.web3.eth.net.getId()
.then(id => {
let networkId = self.blockchainConfig.networkId;
if (!networkId && constants.blockchain.networkIds[self.blockchainConfig.networkType]) {
networkId = constants.blockchain.networkIds[self.blockchainConfig.networkType];
}
if (id !== networkId) {
self.logger.warn(__('Connected to a blockchain node on network {{realId}} while your config specifies {{configId}}', {realId: id, configId: networkId}));
self.logger.warn(__('Make sure you started the right blockchain node'));
}
})
.catch(console.error);
self.provider.fundAccounts(() => {
self.isWeb3Ready = true;
self.events.emit(WEB3_READY);