Merge pull request #572 from embark-framework/bug_fix/embark-build-writes-pipeline

Fix for `embark build --contracts` writing into the pipeline
This commit is contained in:
Iuri Matias 2018-06-25 13:54:07 -04:00 committed by GitHub
commit 0ba5f1a1b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -194,7 +194,9 @@ class Embark {
engine.startService("libraryManager"); engine.startService("libraryManager");
engine.startService("codeRunner"); engine.startService("codeRunner");
engine.startService("web3"); engine.startService("web3");
engine.startService("pipeline"); if (!options.onlyCompile) {
engine.startService("pipeline");
}
engine.startService("deployment", {onlyCompile: options.onlyCompile}); engine.startService("deployment", {onlyCompile: options.onlyCompile});
engine.startService("storage"); engine.startService("storage");
engine.startService("codeGenerator"); engine.startService("codeGenerator");
@ -206,21 +208,30 @@ class Embark {
}); });
}, },
function waitForWriteFinish(callback) { function waitForWriteFinish(callback) {
if (options.onlyCompile) {
engine.logger.info("Finished compiling".underline);
return callback(null, true);
}
engine.logger.info("Finished deploying".underline); engine.logger.info("Finished deploying".underline);
// Necessary log for simple projects. This event is trigger to soon because there is no file if (!engine.config.assetFiles || !Object.keys(engine.config.assetFiles).length) {
// Also, not exiting straight after the deploy leaves time for async afterDeploys to finish return callback();
engine.logger.info("If you have no files to build, you can exit now with CTRL+C"); }
engine.events.on('outputDone', callback); engine.events.on('outputDone', (err) => {
engine.logger.info(__("finished building").underline);
callback(err, true);
});
} }
], function (err, _result) { ], function (err, canExit) {
if (err) { if (err) {
engine.logger.error(err.message); engine.logger.error(err.message);
engine.logger.debug(err.stack); engine.logger.debug(err.stack);
} else {
engine.logger.info(__("finished building").underline);
} }
// needed due to child processes
process.exit(); if (canExit || !engine.config.contractsConfig.afterDeploy || !engine.config.contractsConfig.afterDeploy.length) {
process.exit();
}
engine.logger.info(__('Waiting for after deploy to finish...'));
engine.logger.info(__('You can exit with CTRL+C when after deploy completes'));
}); });
} }