mirror of https://github.com/embarklabs/embark.git
don't stop on contract fail
This commit is contained in:
parent
ef4134015c
commit
9f7a932252
|
@ -52,6 +52,7 @@ class DeployManager {
|
||||||
self.events.emit("deploy:beforeAll");
|
self.events.emit("deploy:beforeAll");
|
||||||
|
|
||||||
const contractDeploys = {};
|
const contractDeploys = {};
|
||||||
|
const errors = [];
|
||||||
contracts.forEach(contract => {
|
contracts.forEach(contract => {
|
||||||
function deploy(result, callback) {
|
function deploy(result, callback) {
|
||||||
if (typeof result === 'function') {
|
if (typeof result === 'function') {
|
||||||
|
@ -59,7 +60,11 @@ class DeployManager {
|
||||||
}
|
}
|
||||||
contract._gasLimit = self.gasLimit;
|
contract._gasLimit = self.gasLimit;
|
||||||
self.events.request('deploy:contract', contract, (err) => {
|
self.events.request('deploy:contract', contract, (err) => {
|
||||||
callback(err);
|
if (err) {
|
||||||
|
contract.error = err.message || err;
|
||||||
|
errors.push(err);
|
||||||
|
}
|
||||||
|
callback();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,15 +77,13 @@ class DeployManager {
|
||||||
contractDeploys[className].push(deploy);
|
contractDeploys[className].push(deploy);
|
||||||
});
|
});
|
||||||
|
|
||||||
async.auto(contractDeploys, function(err, _results) {
|
try {
|
||||||
if (err) {
|
async.auto(contractDeploys, function(_err, _results) {
|
||||||
|
if (errors.length) {
|
||||||
self.logger.error(__("error deploying contracts"));
|
self.logger.error(__("error deploying contracts"));
|
||||||
if(err.message !== undefined) {
|
errors.forEach(error => {
|
||||||
self.logger.error(err.message);
|
self.logger.error(error.message || error);
|
||||||
self.logger.debug(err.stack);
|
});
|
||||||
} else {
|
|
||||||
self.logger.error(err);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (contracts.length === 0) {
|
if (contracts.length === 0) {
|
||||||
self.logger.info(__("no contracts found"));
|
self.logger.info(__("no contracts found"));
|
||||||
|
@ -89,6 +92,10 @@ class DeployManager {
|
||||||
self.logger.info(__("finished deploying contracts"));
|
self.logger.info(__("finished deploying contracts"));
|
||||||
done(err);
|
done(err);
|
||||||
});
|
});
|
||||||
|
} catch (e) {
|
||||||
|
self.logger.error(e.message || e);
|
||||||
|
done(__('Error deploying'));
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue