soy novato, quiero implementar mi contrato en la red Ropsten con MetaMask & Truffle, por favor explícame los pasos para implementarlo.
Solución 1: Con tu propio nodo
Puede implementar fácilmente en la red ropsten si posee un nodo completo que se ejecuta en su máquina.
i. correr geth
$ geth --fast --cache=1048 --testnet --unlock "0xmyaddress" --rpc --rpcapi "eth,net,web3" --rpccorsdomain '*' --rpcaddr localhost --rpcport 8545
ii. En truffle.js, agregue la siguiente configuración para la red ropsten
module.exports = {
networks: {
localhost: {
host: "localhost",
port: 8546,
network_id: "*"
},
ropsten: {
host: "localhost",
port: 8545,
network_id: "3"
}
}
};
iii. Implementar en la red ropsten
$ truffle migrate --network ropsten
Solución 2: Con un nodo público como Infura
i. Instale las bibliotecas necesarias
Navegue a la carpeta del proyecto y ejecute el siguiente comando:
npm init
npm install truffle-hdwallet-provider --save
ii. En truffle.js , agregue el siguiente código para desbloquear su cuenta Metamask y configure el nodo Infura Ropsten como punto de entrada al proporcionar la frase mnemotécnica (Metamask / Configuración / Revelar palabras semilla)
var HDWalletProvider = require("truffle-hdwallet-provider");
var infura_apikey = "XXXXXX";
var mnemonic = "twelve words you can find in metamask/settings/reveal seed words blabla";
module.exports = {
networks: {
development: {
host: "localhost",
port: 8545,
network_id: "*" // Match any network id
},
ropsten: {
provider: new HDWalletProvider(mnemonic, "https://ropsten.infura.io/"+infura_apikey),
network_id: 3
}
}
};
iii. Implementar en la red ropsten
$ truffle migrate --network ropsten
EDITAR: Reemplace la solución por truffle-hdwallet-provider
.Una solución mucho más simple queethereumjs-wallet bip39 web3-provider-engine web3
npm install ethereumjs-wallet bip39 web3-provider-engine web3 --save
(Edité la respuesta con los detalles)geth --light
?AssertionError [ERR_ASSERTION]: The field nonce must not have more 32 bytes
. Usando truffle-hdwallet-provider 0.0.5.
Richard Horrocks