From 2e35a521f83fbe43fea81b668aa1850212d33009 Mon Sep 17 00:00:00 2001 From: kandrzejczak Date: Thu, 30 Jul 2020 15:17:19 +0200 Subject: [PATCH 1/3] Skip create ChangSet when there are no changes to deploy --- lib/createChangeSet.js | 5 +++++ lib/createChangeSet.test.js | 11 ++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/createChangeSet.js b/lib/createChangeSet.js index 7255703..f040791 100644 --- a/lib/createChangeSet.js +++ b/lib/createChangeSet.js @@ -49,6 +49,11 @@ module.exports = { const stackName = this.provider.naming.getStackName() const changeSetName = this.options.changeSetName ? this.options.changeSetName : `${stackName}-${Date.now()}` + if (this.shouldNotDeploy) { + this.serverless.cli.log('Skip create ChangeSet', 'Serverless', { color: 'orange' }); + return Promise.resolve(); + } + this.serverless.cli.log(`Creating CloudFormation ChangeSet [${changeSetName}]...`) return createChangeSet(this, stackName, changeSetName, 'UPDATE') .catch(e => { diff --git a/lib/createChangeSet.test.js b/lib/createChangeSet.test.js index 8e458f5..276b174 100644 --- a/lib/createChangeSet.test.js +++ b/lib/createChangeSet.test.js @@ -133,5 +133,14 @@ describe('updateStack', () => { ) }) }) + + it('should skip create ChangSet if should not deploy', () => { + serverlessChangeSets.shouldNotDeploy = true + + return createChangeSet.bind(serverlessChangeSets)() + .then(() => { + sinon.assert.notCalled(createChangeSetStub) + }) + }) + }) }) -}) From b8a1397f1dc6975bfb89e2a0c8993f52cf663910 Mon Sep 17 00:00:00 2001 From: kandrzejczak Date: Thu, 30 Jul 2020 15:20:26 +0200 Subject: [PATCH 2/3] Skip create ChangeSet when there are no changes to deploy --- lib/createChangeSet.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/createChangeSet.test.js b/lib/createChangeSet.test.js index 276b174..703a383 100644 --- a/lib/createChangeSet.test.js +++ b/lib/createChangeSet.test.js @@ -134,7 +134,7 @@ describe('updateStack', () => { }) }) - it('should skip create ChangSet if should not deploy', () => { + it('should skip create ChangeSet if should not deploy', () => { serverlessChangeSets.shouldNotDeploy = true return createChangeSet.bind(serverlessChangeSets)() From 7f4dea799ec74b188df8ae382b42bbeb8328c292 Mon Sep 17 00:00:00 2001 From: kandrzejczak Date: Thu, 30 Jul 2020 17:27:51 +0200 Subject: [PATCH 3/3] Skip create ChangeSet when there are no changes to deploy --- lib/createChangeSet.js | 2 +- lib/createChangeSet.test.js | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/createChangeSet.js b/lib/createChangeSet.js index f040791..d128cd6 100644 --- a/lib/createChangeSet.js +++ b/lib/createChangeSet.js @@ -50,7 +50,7 @@ module.exports = { const changeSetName = this.options.changeSetName ? this.options.changeSetName : `${stackName}-${Date.now()}` if (this.shouldNotDeploy) { - this.serverless.cli.log('Skip create ChangeSet', 'Serverless', { color: 'orange' }); + this.serverless.cli.log('Skipping create ChangeSet...', 'Serverless', { color: 'orange' }); return Promise.resolve(); } diff --git a/lib/createChangeSet.test.js b/lib/createChangeSet.test.js index 703a383..0a757c5 100644 --- a/lib/createChangeSet.test.js +++ b/lib/createChangeSet.test.js @@ -134,13 +134,13 @@ describe('updateStack', () => { }) }) - it('should skip create ChangeSet if should not deploy', () => { - serverlessChangeSets.shouldNotDeploy = true + it('should skip create ChangeSet if should not deploy', () => { + serverlessChangeSets.shouldNotDeploy = true - return createChangeSet.bind(serverlessChangeSets)() - .then(() => { - sinon.assert.notCalled(createChangeSetStub) - }) - }) + return createChangeSet.bind(serverlessChangeSets)() + .then(() => { + sinon.assert.notCalled(createChangeSetStub) + }) }) }) +})