serverless/lib/plugins/aws/deploy/lib/validateTemplate.js
Mariusz Nowak 4944f471b1
Prettify
2019-06-26 12:43:01 +02:00

23 lines
878 B
JavaScript

'use strict';
const getS3EndpointForRegion = require('../../utils/getS3EndpointForRegion');
module.exports = {
validateTemplate() {
const bucketName = this.bucketName;
const artifactDirectoryName = this.serverless.service.package.artifactDirectoryName;
const compiledTemplateFileName = 'compiled-cloudformation-template.json';
const s3Endpoint = getS3EndpointForRegion(this.provider.getRegion());
this.serverless.cli.log('Validating template...');
const params = {
TemplateURL: `https://${s3Endpoint}/${bucketName}/${artifactDirectoryName}/${compiledTemplateFileName}`,
};
return this.provider.request('CloudFormation', 'validateTemplate', params).catch(error => {
const errorMessage = ['The CloudFormation template is invalid:', ` ${error.message}`].join(
''
);
throw new Error(errorMessage);
});
},
};