Me encuentro con el mismo problema propuesto por esta pregunta . No puedo resolverlo porque estoy usando un proveedor remoto (INFURA), según este documento .
Mi código se ve así:
var ethwallet = require('ethereumjs-wallet');
var ProviderEngine = require("web3-provider-engine");
var WalletSubprovider = require('web3-provider-engine/subproviders/wallet.js');
var Web3Subprovider = require("web3-provider-engine/subproviders/web3.js");
var Web3 = require("web3");
// Import the raw private key of the admin
const keys = require('../test/keystores/keys.json');
const admin_key = keys.admin.privateKey;
const admin_addr = keys.admin.address;
// Add the admin key to the provider. This will unlock the account so it can
// deploy the contracts and run the tests.
var wallet = ethwallet.fromPrivateKey(Buffer.from(admin_key, 'hex'));
var engine = new ProviderEngine();
// Start the infuranet provider
var infuranet = "https://infuranet.infura.io";
var engine = new ProviderEngine();
engine.addProvider(new WalletSubprovider(wallet, {}));
engine.addProvider(new Web3Subprovider(new
Web3.providers.HttpProvider(infuranet)));
engine.start();
module.exports = {
networks: {
infura: {
network_id: 5810,
provider: engine,
from: admin_addr
},
development: {
host: "localhost",
port: 8545,
network_id: "*"
}
}
};
Y estoy corriendo:
truffle migrate --network infura
Que cuelga indefinidamente. Esto también sucede si ejecuto:
truffle compile --network infura
O cualquier otra acción de la trufa.
¿Es posible ejecutar esto sin un nodo local? Me gustaría implementarlos en esta red utilizando el proveedor remoto de INFURA.
La respuesta a este problema debería ser agregar dos líneas más, que puede encontrar en la última respuesta aquí .
ismael
infuranet.infura.io
, intente con la url obtenida cuando se registró en el servicio de infura.