From 4454d57e0294ce08e8f5ab50569c3b39d916e3a3 Mon Sep 17 00:00:00 2001 From: Pierre Vanduynslager Date: Tue, 19 Jun 2018 14:52:01 -0400 Subject: [PATCH] feat: allow to disable the publish plugin hook --- lib/definitions/plugins.js | 2 +- test/definitions/plugins.test.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/definitions/plugins.js b/lib/definitions/plugins.js index 6f97b719..2fdf3378 100644 --- a/lib/definitions/plugins.js +++ b/lib/definitions/plugins.js @@ -45,7 +45,7 @@ module.exports = { publish: { default: ['@semantic-release/npm', '@semantic-release/github'], config: { - validator: conf => Boolean(conf) && (isArray(conf) ? conf : [conf]).every(conf => validatePluginConfig(conf)), + validator: conf => !conf || (isArray(conf) ? conf : [conf]).every(conf => validatePluginConfig(conf)), }, output: { validator: output => !output || isPlainObject(output), diff --git a/test/definitions/plugins.test.js b/test/definitions/plugins.test.js index 744c8a4f..f016c59a 100644 --- a/test/definitions/plugins.test.js +++ b/test/definitions/plugins.test.js @@ -60,9 +60,9 @@ test('The "prepare" plugin, if defined, must be a single or an array of plugins test('The "publish" plugin is mandatory, and must be a single or an array of plugins definition', t => { t.false(plugins.publish.config.validator({})); t.false(plugins.publish.config.validator({path: null})); - t.false(plugins.publish.config.validator()); t.true(plugins.publish.config.validator({path: 'plugin-path.js'})); + t.true(plugins.publish.config.validator()); t.true(plugins.publish.config.validator('plugin-path.js')); t.true(plugins.publish.config.validator(() => {})); t.true(plugins.publish.config.validator([{path: 'plugin-path.js'}, 'plugin-path.js', () => {}]));