0

I'm trying to deploy a contract to the main network ("1") that I succeeded in deploying to test-rpc and to the test network using the geth --dev flag.

Here’s how my truffle.js file looks:

module.exports = {
  networks: {
    development: {
      host: "localhost",
      port: 8545,
      network_id: "*" // Match any network id
    },
    // geth: {
    //   host: 'http://10.0.0.241',
    //   port: 8110,
    //   network_id: '1234' // Match network id
    //   // from: '0x7824b8756cfa5131ead88e190e8adb10546fefaf' // account 0 
    //     // (default account which has been already unlocked)
    // },
    live: {
      network_id: 1,
      host: "localhost",
      port: 8546,
      from: "3984bc76cb775d7866d1cd55c4f49e3d13d411d4"
      // host: "localhost",
      // port: 8546   // Different than the default below
      // optional config values:
      // gas
      // gasPrice
      // from - default address to use for any transaction Truffle makes during migrations
      // provider - web3 provider instance Truffle should use to talk to the Ethereum network.
      //          - if specified, host and port are ignored.
    }
  }
};

I run:

geth --unlock 3984bc76cb775d7866d1cd55c4f49e3d13d411d4 --mine --minerthreads 1 --port 8546 --rpc --rpcapi db,eth,net,web3,personal --rpccorsdomain * --rpcaddr "localhost" --rpcport 8546

…and when I run truffle migrate…

$ truffle migrate --network live  --verbose-rpc

Using network 'live'.


    > {
       >   "jsonrpc": "2.0",
       >   "id": 1,
       >   "method": "eth_call",
       >   "params": [
       >     {
       >       "from": "0x3984bc76cb775d7866d1cd55c4f49e3d13d411d4",
       >       "gas": "0x47e7c4",
       >       "gasPrice": "0x174876e800",
       >       "to": "0x16529aa9698987f5e1a983a8ac5f5bb7ccf25f82",
       >       "data": "0x445df0ac"
       >     },
       >     "latest"
       >   ]
       > }
    Error: Invalid JSON RPC response: ""
        at Object.InvalidResponse (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:37022:16)
        at XMLHttpRequest.request.onreadystatechange (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:208519:32)
        at XMLHttpRequestEventTarget.dispatchEvent (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:210395:18)
        at XMLHttpRequest._setReadyState (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:210685:12)
        at XMLHttpRequest._onHttpRequestError (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:210875:12)
        at ClientRequest.<anonymous> (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:210745:24)
        at emitOne (events.js:115:13)
        at ClientRequest.emit (events.js:210:7)
        at Socket.socketOnEnd (_http_client.js:437:9)
        at emitNone (events.js:110:20)

I’ve tried a wide variety of different things to remedy this, but so far to no avail. Anyone got any ideas?

Just to check off a few things: - The account is unlocked. - The account is funded, although not in a Scrooge McDuck way: https://etherscan.io/address/0x3984bc76cb775d7866d1cd55c4f49e3d13d411d4

Matt Lally
  • 435
  • 1
  • 3
  • 13

1 Answers1

0

It turns out that even though I included the flag --rpcport 8546, geth was listening on 8545. If I'd read the chunk of text it splurted out after running, I would have known this.

INFO [08-10|09:54:42] HTTP endpoint opened: http://127.0.0.1:8545
Matt Lally
  • 435
  • 1
  • 3
  • 13