diff --git a/packages/serverless-offline-sqs/README.md b/packages/serverless-offline-sqs/README.md index 52aff3ab..76dbed43 100644 --- a/packages/serverless-offline-sqs/README.md +++ b/packages/serverless-offline-sqs/README.md @@ -92,6 +92,7 @@ You could use [ElasticMQ](https://github.com/adamw/elasticmq) with the following ```yml custom: serverless-offline-sqs: + enabled: true # if is not set, true by default autoCreate: true # create queue if not exists apiVersion: '2012-11-05' endpoint: http://0.0.0.0:9324 diff --git a/packages/serverless-offline-sqs/src/index.js b/packages/serverless-offline-sqs/src/index.js index 94227fcf..3afe633a 100644 --- a/packages/serverless-offline-sqs/src/index.js +++ b/packages/serverless-offline-sqs/src/index.js @@ -44,19 +44,25 @@ const extractQueueNameFromARN = arn => { class ServerlessOfflineSQS { constructor(serverless, options) { - this.serverless = serverless; - this.service = serverless.service; - this.options = options; + const isEnabled = getOr(true, 'enabled', options); - this.commands = {}; + if (isEnabled) { + this.serverless = serverless; + this.service = serverless.service; + this.options = options; - this.hooks = { - 'before:offline:start': this.offlineStartInit.bind(this), - 'before:offline:start:init': this.offlineStartInit.bind(this), - 'before:offline:start:end': this.offlineStartEnd.bind(this) - }; + this.commands = {}; + + this.hooks = { + 'before:offline:start': this.offlineStartInit.bind(this), + 'before:offline:start:init': this.offlineStartInit.bind(this), + 'before:offline:start:end': this.offlineStartEnd.bind(this) + }; - this.streams = []; + this.streams = []; + } else { + serverless.cli.log('WARN Serverless Offline SQS is Disabled'); + } } getConfig() {