Manage workflows with Terraform

Weekly Update

You can now manage your workflows using our Terraform provider ๐ŸŽ‰

This is useful if you:

  • Want to use version control to preview and roll back changes to a workflow
  • Want to apply complex access control (e.g. only members of the SRE team can edit specific core SRE workflows)
  • Want to create workflows programmatically based on other data that you store in Terraform

Building your Terraform

Workflows have extensive configurability, and have been designed to leverage the full capability of Catalog. Weโ€™ve built a visual workflow builder in our UI which is the easiest way to configure workflows. Weโ€™d still recommend you use the visual builder, and then copy the Terraform into your repo.

Making the dashboard โ€˜Terraform awareโ€™

The incident.io dashboard understands youโ€™re managing a workflow via Terraform. This means you can be confident making configuration changes, and know that your workflows managed via Terraform are rock solid.

You can easily see which workflows are managed via Terraform:

  • You can tell us where your Terraform code is stored so itโ€™s easy for your colleagues to find and update it
  • We warn you before you make a change that would pull the workflow out of sync with your Terraform state

You can find out more in our Terraform provider docs, or watch the video below for a full run-through of the changes.

Managing Schedules via Terraform

Weโ€™ve also added Schedules to our Terraform provider, alongside an incident.io User Data Source thatโ€™ll let you look up your users via e-mail so you can manage schedules alongside other team configuration.

This also benefits from the Terraform-aware dashboard, meaning that you can safely manage schedules without worrying that theyโ€™ll be overwritten in the dashboard.

๐Ÿš€ What else weโ€™ve shipped

๐Ÿ› Display "do not export" when there is no default issue tracker for a follow-up
๐Ÿ› Fix a bug where creating a pay report was erroring if you used to have the PagerDuty integration, but no longer do
๐Ÿ› Fix issue that was incorrectly limiting grouped custom fields when managing internal status pages
๐Ÿ› Fix issue where a custom field used in a condition for an integration sync configuration being deleted would break the configuration
๐Ÿ› Fix layout issue for tabs in the incident view when viewing in small screen
๐Ÿ› Fix pausing incidents over a month in the future
๐Ÿ› Fix permissions error accessing sentry issues we do not have access to
๐Ÿ› Fix UI bug where multi-line conditions were spilling outside their container
๐Ÿ› Prevent manually linking an issue from a broken integration
๐Ÿ› Remove the tutorial incident button if a tutorial has already been completed
๐Ÿ› Surface error message when trying to create an if/else statement with mandatory else clause
๐Ÿ› We correctly show who has acked an escalation in Slack when you receive many escalations at once
๐Ÿ†• Add related incident IDs to webhook payloads
๐Ÿ†• Make inc.new display full page incident declare form
๐Ÿ†• Notify channel when an attached postmortem has been marked as completed
๐Ÿ†• Notify when a user accepts a cover request but an override has been made over the requested period just before the user accepted it
๐Ÿ†• Pay calculator reports now include the total shift duration in hours, like on the dashboard
๐Ÿ†• Support backlinks to parents for catalog entries imported from Cortex
๐Ÿ†• We now automatically highlight URLs in incident updates, status page updates and alert descriptions
๐Ÿ†• You can now access alert payload data using the name of the fields directly, like $.metadata.your-field instead of $.metadata["your-field"]
๐Ÿ†• You can now send test alerts from the status page alert source
๐Ÿ†• You can now trigger workflows when a public status page is updated, or when someone leaves a channel
๐Ÿ’… Add a callout about external calendar provider syncing delays on our on-call calendar syncing modal
๐Ÿ’… Add incident logo to notifications from incident.io
๐Ÿ’… Align the button on the Jira integrations configuration page
๐Ÿ’… Be less aggressive in breaking up message summaries into slack threads
๐Ÿ’… Clarify how we automatically sync your on-call schedules to Slack user groups
๐Ÿ’… Collapse automatically set fields to avoid overly long forms
๐Ÿ’… Fix display of incident badges in custom fields
๐Ÿ’… Fix padding on escalation path buttons in your list of schedules
๐Ÿ’… Improve callout in an incident Slack channel when an we attempted to escalate, but no one was on call
๐Ÿ’… Improve styling of our schedule calendar view to indicate out of month / weekend days
๐Ÿ’… Improve the UI for adding multiple people on-call concurrently in a schedule
๐Ÿ’… Improve UI when creating overrides from the schedule view
๐Ÿ’… Make it clearer that deleting a status page incident only deletes the public incident
๐Ÿ’… Notification settings for on-call shift notifications are now visually grouped by delay
๐Ÿ’… Pay calculator report downloads will now be named the same as the report
๐Ÿ’… Show a default user name when previewing an announcement post with roles that haven't been used before
๐Ÿ’… Show a horizontal scrollbar in the alerts table view
๐Ÿ’… Show consistent menu items in the schedules view on smaller screens
๐Ÿ’… Update edit follow-ups modal to correctly reflect that exported follow-ups canโ€™t be edited
๐Ÿ’… Update on-call schedule calendar events to correctly parse URLs
๐Ÿ’… When a responder clicks "Here to help", show them a link to the incident Meet or Zoom call (if one exists)

Move fast when you break things