Skip to content

Commit effb02c

Browse files
terrafom changelog
1 parent 3ab46fc commit effb02c

File tree

4 files changed

+69
-1
lines changed

4 files changed

+69
-1
lines changed

apps/docs/astro.config.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ export default defineConfig({
117117
},
118118
{
119119
label: "Manage Your Stack with Terraform and CLI",
120-
slug: "tutorial/how-to-manage-monitors-with-cli",
120+
slug: "tutorial/how-to-manage-openstatus-with-terraform-cli",
121121
},
122122
],
123123
},

apps/docs/src/content/docs/tutorial/how-to-manage-monitors-with-cli.mdx renamed to apps/docs/src/content/docs/tutorial/how-to-manage-openstatus-with-terraform-cli.mdx

File renamed without changes.
103 KB
Loading
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
---
2+
title: "Terraform Provider: status pages, notifications, and more"
3+
description: "The OpenStatus Terraform provider now supports status pages, notifications, DNS monitors, TCP monitors, and component groups."
4+
image: "/assets/changelog/terraform-v0.1.png"
5+
publishedAt: "2026-03-26"
6+
author: "openstatus"
7+
category: "monitoring"
8+
---
9+
10+
The OpenStatus Terraform provider has been completely revamped. What started as monitor-only support now covers your entire openstatus stack.
11+
12+
## What's new
13+
14+
### Dedicated monitor resources
15+
16+
Monitors are now split into dedicated resource types with full configuration support:
17+
18+
- **`openstatus_http_monitor`** — custom headers, request bodies, and assertions on status codes, response body, and headers.
19+
- **`openstatus_tcp_monitor`** — verify that a port is open and reachable.
20+
- **`openstatus_dns_monitor`** — validate DNS records with record type assertions (A, AAAA, CNAME, MX, TXT).
21+
22+
### Status pages
23+
24+
Manage your entire status page as code:
25+
26+
- **`openstatus_status_page`** — create pages with custom domains, access control (public, password-protected, or email-domain restricted), and branding.
27+
- **`openstatus_status_page_component`** — link monitors to your status page or add static components.
28+
- **`openstatus_status_page_component_group`** — organize components into groups.
29+
30+
### Notifications
31+
32+
Configure alerting channels with **`openstatus_notification`** — supports 12 providers including Slack, PagerDuty, Discord, OpsGenie, Email, Webhook, Telegram, SMS, WhatsApp, Google Chat, Grafana OnCall, and ntfy.
33+
34+
### Data sources
35+
36+
Look up existing resources without managing them:
37+
38+
- **`openstatus_monitor`** — fetch a single monitor by ID.
39+
- **`openstatus_monitors`** — list all monitors with pagination.
40+
- **`openstatus_notification`** — fetch a notification channel by ID.
41+
- **`openstatus_status_page`** — fetch a status page by ID.
42+
43+
### Import support
44+
45+
Every resource supports `terraform import`, so you can bring your existing dashboard configuration under Terraform management.
46+
47+
## Get started
48+
49+
```hcl
50+
terraform {
51+
required_providers {
52+
openstatus = {
53+
source = "openstatusHQ/openstatus"
54+
version = "~> 0.1"
55+
}
56+
}
57+
}
58+
59+
provider "openstatus" {
60+
api_token = var.openstatus_api_token
61+
}
62+
```
63+
64+
Check out the [Terraform provider reference](https://docs.openstatus.dev/reference/terraform/) for full documentation and examples, or follow the [tutorial](https://docs.openstatus.dev/tutorial/how-to-manage-openstatus-with-terraform-cli) to set up your monitoring stack from scratch.
65+
66+
## Thank you
67+
68+
A huge thank you to [Remy Buison](https://github.com/darkweaver87) from Traefik for all his contributions and help improving our terraform provider.

0 commit comments

Comments
 (0)