Seed makes it easy to configure your stages with email, slack, and custom webhook notifications. Notifications are sent when a build is deployed to a stage.

You can configure each stage separately. For example, maybe you only want to be notified for updates to the production stage. Or maybe you want a specific stage to notify a specific member on your team.

To add build notifications, head over to your app settings and select the stage under Stage Settings on the right.

Select stage

Select Show Notification Options.

Click Show Notification Options

Note that, you’ll be notified for all services that are built in this stage.

Notification Options

By default, you’ll be notified for all the build events (success and failure).

Notification events

You can change this to only be notified for failed builds by clicking on the dropdown and selecting Build failures as the Notification event.

Notification build failure event

The Notification type allows you to pick the way you want to be notified. Seed can notify you via email, Slack, or a custom webhook.

Email Notifications

Add the email of the person you’d like to notify from the stage settings.

Add email notification

You’ll receive email notifications for successful and failed deployments.

Slack Notifications

To configure your Slack you need to:

  1. Create an Incoming Webhook. You can follow this simple guide to configure an Incoming Webhook.

  2. Add the webhook URL and the slack channel you’d like to send the notifications to. The channel is optional, since the webhook comes configured with a default channel.

Add slack notification

You’ll receive slack notifications for when a build is starting and if it succeeds or fails.

Custom Webhooks

To configure your webhook to be notified you can specify the Webhook URL. And optionally, you can pass in a JWS secret token.

Add webhook notification

If the JWS secret token is provided, Seed will generate a JSON Web Signature and pass it as the x-webhook-signature in the request header.

And here is an example of the Webhook request body.

{
  "build": 5,
  "stage": "dev",
  "service": "main",
  "status": "deploying",
  "service_link": "https://console.seed.run/apps/hello-world/services/default",
  "stage_link": "https://console.seed.run/apps/hello-world/services/default/stages/dev",
  "build_link": "https://console.seed.run/apps/hello-world/services/default/stages/dev/builds/5",
  "commit_sha": "5ad6f2d7b44ad77e5cfe925e7c9550b3be36c158",
  "ts": 1530079736
}

Where the status field can be either deploying, success, or failure.