Commit Graph

71 Commits

Author SHA1 Message Date
emizzle dcdcfb5b32
Minor fixes for rebase 2018-10-25 13:04:33 +02:00
emizzle 9a830c3423
Remove default behavior of logging to file
Default behavior of logging to file is no longer needed now that Embark log history can be properly served using the `ProcessLogsApi` and `LogHandler` classes.

# Conflicts:
#	lib/core/logger.js
#	lib/modules/blockchain_process/blockchain.js
2018-10-25 13:04:33 +02:00
emizzle 728713a183
Embark blockchain logs when running standalone
When running `embark blockchain` followed by `embark run` previously, logs generated in the standalone `embark blockchain` process were black boxed and not accessible to the main Embark process.

This is fixed by creating a client IPC connection in the `embark blockchain` process that connects to the IPC server connection running in `embark run`. The connection is made by way of polling `ipc.connect` and continues polling even after a connection is made in case `embark run` is killed and restarted without restarting `embark blockchain`.

`LogHandler` was introduced to extrapolate functionality used in `ProcessLauncher` that needed to also be used in the standalone blockchain process. It also caps the number of logs that are stored in memory per process by a constant value defined in `constants.json`.

A `blockchain_listener` was module was created (and run inside of `embark run`) that listens for logs emitted by the `embark blockchain` client IPC and runs them through the `LogHandler`. Additionally, this module registers the API endpoints needed to handle requests for blockchain process logs in the cockpit (which were 404’ing before).

# Conflicts:
#	lib/modules/blockchain_process/blockchain.js
2018-10-25 12:51:43 +02:00
Anthony Laibe 4c27d34e0c
Listen to contract events 2018-10-23 11:03:29 +02:00
Anthony Laibe 5fa118ae2e
Event function filt 2018-10-23 11:02:54 +02:00
Jonathan Rainville feea4c27fc
log message after connecting in case of disconnect 2018-10-23 10:47:26 +02:00
Iuri Matias 7532562e28
rebase fixes 2018-10-23 10:34:46 +02:00
Jonathan Rainville 21d8d84cca
conflict in api 2018-10-23 10:25:13 +02:00
Michael Bradley, Jr dd4bb22da5
blockchain -- defaultHost, dockerHostSwap 2018-10-23 10:14:00 +02:00
Iuri Matias 95df68e67c
fixes due to bad rebase 2018-10-23 09:46:40 +02:00
Michael Bradley, Jr fc27e710fc
blockchain -- defaultHost, dockerHostSwap 2018-10-23 09:37:24 +02:00
emizzle 5fe746df51
Add message warning user a password is needed to unlock
When `mineWhenNeeded` is true (occurs in zero-config) and an account on the node exists, a password is required to be specified `config/blockchain.js > account > password` so that the existing account can be unlocked by geth (the `—unlock` cli option).
2018-10-22 19:54:43 +02:00
Dan Lipert 898ecfe293
Accept standard Ether units and update/add tests 2018-10-22 19:54:43 +02:00
Giuseppe Bertone 81e798c89c
Add support for Parity
Addons
 - New chain initialization and genesis management
 - Option to choose client to use
 - Option to "ping forever" for Geth
 - Creation and unlock of accounts at client's start
 - Utility to fund accounts with ethers
 - Miner settings inside the ethereum client
 - Workaround to CORS problem: origin is now http://embark
 - Several double callback's checks

Updates
 - Boilerplate, templates, configuration files and demo stuff
 - Messages and i18n strings
 - Tests

Fixes
 - Geth client now uses miner.gastarget instead of the deprecated targetGasLimit
 - Workaround for shh_version with Parity

Reworks of other PRs into the new code
 - Included delayed proxy
 - Send ready only when the proxy is started
 - Start HTTP and WS proxies individually
 - Async setupProxy
 - Fixed datadir for GethMiner
2018-10-22 19:53:49 +02:00
Moksh Jain 51b2cce0ea
adds dashboard logging for: geth, ipfs, swarm 2018-10-22 19:39:25 +02:00
Pascal Precht 081b7eee89
chore(blockchainProcess): improve error message when blockchain client exits early
In cases a blockchain client exits before Embark is done doing its work,
the current error message doesn't provide any pointers to why this
happened.

Running `$ embark blockchain` separately could yield more information by
the underlying process.
2018-10-22 19:35:58 +02:00
emizzle 3e9abdcdd2
fix rebase 2018-10-22 19:33:40 +02:00
Iuri Matias 967703a333
restore ws functionality to webserver 2018-10-22 19:30:12 +02:00
emizzle f378ea55da
fix rebase #2 2018-10-22 19:30:12 +02:00
emizzle 58ba0549c4
Fix rebase 2018-10-22 19:30:12 +02:00
Iuri Matias 58a75f5080
restore ws functionality to webserver 2018-10-22 19:25:19 +02:00
Michael Bradley, Jr 5d4ac32a2a
Boolean() -> !! 2018-10-22 19:25:14 +02:00
Iuri Matias 4b81968482
restore ws functionality to webserver 2018-10-22 19:24:41 +02:00
Iuri Matias a7a6a03bfe make linter happy 2018-09-28 16:38:42 -04:00
Iuri Matias 24d661a65e fix blockchain defaults for config-less dapps 2018-09-28 16:32:37 -04:00
Iuri Matias 71cbb07ad8
Merge pull request #878 from embark-framework/bug_fix/minewhenneeded-fixes-3
Fix datadir for miner (PR for next branch)
2018-09-21 09:36:06 -04:00
Anthony Laibe 907b486531 Send ready only when the proxy is started 2018-09-20 10:16:48 +01:00
Iuri Matias 4a321e3c0c coerce boolean value using more commmon !! 2018-09-20 15:33:33 +10:00
emizzle ab7784c1e9 Fix datadir for miner
The datadir path was not being passed to the miner, was resolving as `undefined`, and therefore, was not setting up an ipc connection correctly and no communication was happening.

The fix passes the `datadir` from the blockchain config to the miner in the constructor.
2018-09-20 15:30:06 +10:00
emizzle c477445896 Start HTTP and WS proxies individually
As geth is starting up, the output is monitored for endpoint info. Once the HTTP or WS endpoints are opened, the corresponding proxies are started.

This is more maintainable in the long run in case the geth process being started does not allow for rpc or websockets, or geth modifies the order in which endpoint are opened.
2018-09-20 15:08:02 +10:00
Michael Bradley, Jr eba9ce361e setupProxy should not be conditional on isDev 2018-09-19 22:31:54 -05:00
Michael Bradley, Jr 917757b04c outer function doesn't need to be async 2018-09-19 21:13:19 -05:00
Michael Bradley, Jr e19b3b2f51 simplify syntax 2018-09-19 21:13:06 -05:00
Michael Bradley, Jr 2b816af9a8 eslint doesn't like `void 0` here 2018-09-19 21:12:37 -05:00
Michael Bradley, Jr 1408abf8d9 supply radix 2018-09-19 21:12:20 -05:00
Michael Bradley, Jr aae7954020 await proxy just before createFundAndUnlockAccounts 2018-09-19 20:11:36 -05:00
Michael Bradley, Jr 35c772d727 async setupProxy 2018-09-19 20:10:46 -05:00
Michael Bradley, Jr b9975668b8 proxy should attempt to wait on target 2018-09-19 20:10:15 -05:00
Michael Bradley, Jr 3846db79f7 make sure port is an integer, port var should hold offset port value 2018-09-19 20:10:15 -05:00
Iuri Matias 7f66e24b2f
Merge pull request #863 from embark-framework/bug_fix/minewhenneeded-fixes-2
Geth creates new account - add password warning
2018-09-18 13:02:01 -04:00
Anthony Laibe 4c0b4c2410 Delay the start of the proxy 2018-09-18 12:12:17 +01:00
emizzle d965ba6db9 Geth creates new account - add password warning
When `isDev` is false, and `mineWhenNeeded` is true, embark attempts to create a new account using `geth account new`, and uses the password file specified in `blockchain/config > accounts > password`. This warning informs the user that the create account command may fail if the password is missing.
2018-09-18 16:28:23 +10:00
emizzle 472b87f4cd Adding back calling code block for dev_funds
This may have been removed in the rebase, adding it back in.
2018-09-17 22:48:24 +10:00
Anthony Laibe 8ffc9b89e2 Swarm use local data dir 2018-09-13 13:37:44 +01:00
Michael Bradley, Jr 7549c1f8e6 require.resolve() should start by looking in embark's own node_modules 2018-09-07 16:28:03 -05:00
Anthony Laibe df651865c1 Enable no-else-return 2018-08-30 14:53:04 +01:00
Iuri Matias 7eb52c1f8f
Merge pull request #735 from embark-framework/bugfix/allow-zero-config-blockchain
Allow zero config in blockchain
2018-08-29 17:33:15 -04:00
Anthony Laibe 23f7ec396a Allow zero config in blockchain 2018-08-27 10:06:37 +01:00
Jonathan Rainville 13e0d453ae fix websocket test, but still some hangs on second test run 2018-08-24 12:09:38 -04:00
Jonathan Rainville 86f1cf51d2 enable node=embark 2018-08-23 12:54:43 -04:00