Skip to main content

Terraform Provider Overview

StatiBeat includes a standalone Terraform provider under terraform-provider/.

What it is for

The provider is intentionally scoped to declarative configuration. The provider implementation currently exposes resources and data sources for configuration domains such as:

  • hierarchy levels
  • hierarchy items
  • status definitions
  • incident lifecycle stages
  • maintenance lifecycle stages
  • site settings
  • SSO group mappings
  • preset messages
  • Slack app settings
  • Slack channel reminder settings
  • custom views

Data sources currently include:

  • hierarchy levels
  • hierarchy item lookup
  • custom views
  • RSS feeds
  • status events

These are declared in terraform-provider/internal/provider/provider.go.

What it is not for

The provider schema description explicitly states that operational incident and maintenance actions are out of scope. In practice, that means the provider is not the tool for:

  • posting incident updates
  • resolving incidents
  • acknowledging incidents
  • executing maintenance actions
  • managing magic-link or one-time auth flows

Provider versus export

StatiBeat also includes a Terraform export feature in the application admin UI. That export workflow is separate from the provider itself:

  • the provider manages supported configuration directly
  • the export workflow generates Terraform artifacts from existing admin configuration

The dedicated Terraform admin workspace in the frontend makes this distinction visible by splitting setup and export into separate tabs.