We’ve got an awesome new update in the works. Seed can now drastically speed up your builds by only deploying the Lambda functions that’ve been updated.

Seed Incremental Deploy build log

Incremental Deploys

Incremental Deploys allows Seed to only deploy the parts of your app that have been updated. So far Seed has supported incrementally deploying the services in your Serverless app. It does this by either looking at the Git log, or by using Lerna to figure out which packages have been updated.

Incremental Lambda Deploys

Today we are launching Incremental Lambda Deploys in beta. This allows Seed to deploy only the Lambda functions in your Serverless service that’ve been updated.

Seed does this by checking if the CloudFormation template or Serverless config has been changed. If it hasn’t, then it’ll look at the individual Lambda functions in the service and deploy only the ones that have been updated. It’ll deploy the Lambda functions concurrently and directly, without doing a CloudFormation update. This can greatly speed up your deployments. Especially when you are actively developing your app.

By incrementally deploying your Serverless services and Lambda functions, Seed can potentially speed up your deployments by 100x!

Incremental Deploys in Seed can potentially speed up your deployments by 100x!

Enabling Incremental Lambda Deploys

To enable incremental deployments for your service, first install the Serverless Seed plugin:

$ npm install --save-dev serverless-seed

Then add it to your serverless.yml.

  - serverless-seed

And enable Incremental Lambda Deploys.

      enabled: true

And that’s it. Make a couple of deployments to Seed and it’ll now use this plugin to figure out if it can incrementally deploy your Lambda functions.

You can also disable Incremental Deploys for specific stages.

      enabled: true
        - prod

You can read more about Incremental Lambda Deploys over on our docs.

During the Beta

Incremental Lambda Deploys works with most of the popular Serverless Framework plugins. But during the beta we’d like you to test it out with your setups and give us feedback. You can test it out with your apps today and contact us via email or post on our GitHub if you have any questions or run into any issues.