in src/plugman/install.js [555:580]
function handleInstall (actions, pluginInfo, platform, project_dir, plugins_dir, plugin_dir, filtered_variables, options) {
// @tests - important this event is checked spec/install.spec.js
events.emit('verbose', 'Install start for "' + pluginInfo.id + '" on ' + platform + '.');
options.variables = filtered_variables;
return platform_modules.getPlatformApi(platform, project_dir)
.addPlugin(pluginInfo, options)
.then(function (result) {
events.emit('verbose', 'Install complete for ' + pluginInfo.id + ' on ' + platform + '.');
// Add plugin to installed list. This already done in platform,
// but need to be duplicated here to manage dependencies properly.
PlatformJson.load(plugins_dir, platform)
.addPlugin(pluginInfo.id, filtered_variables, options.is_top_level)
.save();
// WIN!
// Log out plugin INFO element contents in case additional install steps are necessary
const info_strings = pluginInfo.getInfo(platform) || [];
info_strings.forEach(function (info) {
events.emit('results', interp_vars(filtered_variables, info));
});
// Propagate value, returned by platform's addPlugin method to caller
return Promise.resolve(result);
});
}