No se puede implementar en una cadena privada usando Truffle

Creé una cadena privada de Parity usando el tutorial oficial ( https://wiki.parity.io/Demo-PoA-tutorial ). Luego lo configuré en mi configuración de Truffle:

module.exports = {
  networks: {
    private: {
      host: "127.0.0.1",
      port: 8540,
      network_id: "*" // Match any network id
    }
  }
};

Puedo conectarme a él usando la consola Truffle, pero cuando intento implementarlo, se cuelga para siempre:

trufa (privado)> migrar --reset

Usando la red 'privada'.

Ejecutando migración: 1_initial_migration.js

Implementando migraciones...

Esto es lo que veo en la salida del nodo:

7decca6e11722f25d1b633502f41ff986492b22638c27c8df5eac7e282541738880608081d5cb2d8
91cf0b9e9dc0a42867bfe68da161877ee4eb6e014@127.0.0.1:30300
2018-07-01 19:30:20   TRACE rpc  Request: {"jsonrpc":"2.0","id":25,"method":"eth
_accounts","params":[]}.
2018-07-01 19:30:20   DEBUG rpc  Response: {"jsonrpc":"2.0","result":["0x00bd138
abd70e2f00903268f3db08f2d25677c9e"],"id":25}.
2018-07-01 19:30:20   TRACE rpc  Request: {"jsonrpc":"2.0","id":26,"method":"net
_version","params":[]}.
2018-07-01 19:30:20   DEBUG rpc  Response: {"jsonrpc":"2.0","result":"8995","id"
:26}.
2018-07-01 19:30:20   TRACE rpc  Request: {"jsonrpc":"2.0","id":27,"method":"net
_version","params":[]}.
2018-07-01 19:30:20   DEBUG rpc  Response: {"jsonrpc":"2.0","result":"8995","id"
:27}.
2018-07-01 19:30:20   TRACE rpc  Request: {"jsonrpc":"2.0","id":28,"method":"eth
_sendTransaction","params":[{"from":"0x00bd138abd70e2f00903268f3db08f2d25677c9e"
,"gas":"0x6691b7","gasPrice":"0x174876e800","data":"0x60806040523480156100105760
0080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916
908373ffffffffffffffffffffffffffffffffffffffff1602179055506102f88061006060003960
00f300608060405260043610610062576000357c0100000000000000000000000000000000000000
000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100aa5780
638da5cb5b146100d5578063fdacd5761461012c575b600080fd5b34801561007357600080fd5b50
6100a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001
90929190505050610159565b005b3480156100b657600080fd5b506100bf610241565b6040518082
815260200191505060405180910390f35b3480156100e157600080fd5b506100ea610247565b6040
51808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffff
ffffffffffff16815260200191505060405180910390f35b34801561013857600080fd5b50610157
6004803603810190808035906020019092919050505061026c565b005b6000806000905490610100
0a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffff
ffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561023d5781905080
73ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff16
7c010000000000000000000000000000000000000000000000000000000002815260040180828152
602001915050600060405180830381600087803b15801561022457600080fd5b505af11580156102
38573d6000803e3d6000fd5b505050505b5050565b60015481565b6000809054906101000a900473
ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffff
ffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16
3373ffffffffffffffffffffffffffffffffffffffff1614156102c957806001819055505b505600
a165627a7a72305820f447dde0ef1d4d3a1752d10ae91ef75165287db6411fe180a975e1e0543517
ca0029"}]}.
2018-07-01 19:30:25  Verifier #6 INFO import  Imported #37 5c74:10ce (0 txs, 0.0
0 Mgas, 0.87 ms, 0.56 KiB)
2018-07-01 19:30:27  IO Worker #3 INFO import     1/25 peers     14 KiB chain
20 KiB db  0 bytes queue   10 KiB sync  RPC:  0 conn,  0 req/s,  51 чs
2018-07-01 19:30:57  IO Worker #3 INFO import     1/25 peers     14 KiB chain
20 KiB db  0 bytes queue   10 KiB sync  RPC:  0 conn,  0 req/s,  51 чs

Entonces, como puede ver, la solicitud nunca obtiene una respuesta.

ACTUALIZACIÓN: el mismo resultado ocurre cada vez que envío una transacción simple: se atasca para siempre.

Respuestas (2)

Lo imaginé. Necesitaba desbloquear mi cuenta, aquella desde la que estaba implementando. Por alguna razón, Parity no me lo contó, así que pasé 2 horas adivinando.

Desbloqueé mi cuenta usando la opción de línea de comando --unlock.

Es difícil decir eso. Aquí hay cosas que probaría:

Verifique si es un problema de firewall. - Haga ping al puerto que está ejecutando

Verifique que no sea un problema de paridad. - Prueba geth

Verifique que no sea un problema de Truffle. Pruebe etherlime para implementar sus contratos. Aquí hay un fragmento rápido:

const etherlime = require('etherlime');

const ICOTokenContract = require('./build/contracts/ICOToken.json');

const defaultConfigs = {
    gasPrice: 20000000000,
    gasLimit: 4700000
}

const deployer = new etherlime.InfuraPrivateKeyDeployer('Your Private KEY', 'ropsten', 'Your infura API key', defaultConfigs);
const contractWrapper = await deployer.deploy(ICOTokenContract); // Make sure you call this method in an async function or use it as a promise without await

Puedes encontrar más ejemplos aquí