diff --git a/lib/multi-semantic-release.js b/lib/multi-semantic-release.js index 1247e618244dc35f6d60d1e484fbd1a84e504b2a..fc8dbf1c418351f2c25698e3fc3fab478693f125 100644 --- a/lib/multi-semantic-release.js +++ b/lib/multi-semantic-release.js @@ -114,6 +114,11 @@ async function releasePackage(package_, createInlinePlugin, multiContext, flags) options.ci = flags.ci === undefined ? options.ci : flags.ci; options.branches = flags.branches ? castArray(flags.branches) : options.branches; + // Patching so plugins from globalOptions are also inherited. + // If the third element in the array is set to true, the plugin will not be inherited. + options.plugins = [...(multiContext.globalOptions.plugins || []), ...(options.plugins || [])] + .filter(plugin => Array.isArray(plugin) ? !plugin[2] : true) + // This options are needed for plugins that do not rely on `pluginOptions` and extract them independently. options._pkgOptions = packageOptions;