diff --git a/lifecycleScripts/submodules/index.js b/lifecycleScripts/submodules/index.js index 17a2e5565..2d13d3c89 100644 --- a/lifecycleScripts/submodules/index.js +++ b/lifecycleScripts/submodules/index.js @@ -61,17 +61,22 @@ module.exports = function submodules() { console.warn("\nThey will not be updated."); } - return Promise.all(statuses + return statuses .filter(function(status) { return !status.onNewCommit; }) - .map(function(submoduleToUpdate) { - console.log("[nodegit] Initializing submodules"); - - return exec( - "git submodule update --init --recursive " + submoduleToUpdate.name - ); - }) - ); + .reduce(function(chainPromise, submoduleToUpdate) { + return chainPromise + .then(function() { + console.log( + "[nodegit] Initializing submodule", + submoduleToUpdate.name + ); + return exec( + "git submodule update --init --recursive " + + submoduleToUpdate.name + ); + }); + }, Promise.resolve()); }); };