When Seed builds your Serverless Framework application, it generates some build artifacts as a part of the build process. These artifacts are stored for later use. In this chapter we’ll look at them in a bit more detail.

Build artifacts in Seed

Seed splits up the serverless deploy process into a couple of steps. For example, for a commit to master, connected to a stage called dev will trigger the following:

  1. A package is created for the target stage (in this case dev) using the serverless package command.
  2. A package is created for the production stage (and a pre-production stage, if configured).
  3. The target stage (in this case dev) is deployed using the serverless deploy --package command. Here the package is the one generated in Step 1.

The package created in Step 2 of this process is tagged with the Git commit and stored for later use. So when you decide to promote this build to production, we load up that previously stored package and use that to generate a CloudFormation Change Set.

While rolling back to a previous build, we use the same stored package and deploy it using the serverless deploy --package command. Thereby avoiding any unnecessary surprises we might encounter if we were to re-package it at a later date.