Reputation: 13477
I'm using Bitbucket Pipelines to do CD for a Serverless app. I want to use as few "build minutes" as possible for each deployment. The lifecycle of the serverless deploy
command, when using AWS as the backing, seems to be:
Because of the huge time difference, I don't want to do step two. So my question is simple: how do I deploy a serverless app such that it only does step one and returns success or failure based on whether or now CloudFormation successfully accepted the new package?
I've looked at the docs for serverless deploy
and I can't see any options to enable that. Also, there seem to be AWS specific options in the serverless deploy
command already, so maybe this is an option that the serverless team will consider if there is no other way to do this.
N.B. As for, "how will you know if CloudFormation fails?", for that, I would rather set up notifications to come from CloudFormation directly. The build can just have the responsibility of pushing to CloudFormation.
Upvotes: 0
Views: 369
Reputation: 3992
I don't think you can do it with serverless deploy
. You can try serverless package
command that will store the package in .serverless folder or you can specify the path using --package. Package will create a CloudFormation template file e.g. cloudformation-template-update-stack.json
. You can then call Create Stack API action to create the stack. It will return the stack ID without waiting for all the resources to be created.
Upvotes: 1