terraform { required_providers { checkly = { source = "checkly/checkly" version = "~> 1.0" } } cloud { workspaces { name = "checkly-e2e" } } } variable "checkly_api_key" { sensitive = true } variable "checkly_account_id" { sensitive = true } variable "checkly_alert_channel_pagerduty_service_key" { sensitive = true } variable "checkly_alert_channel_instatus_webhook_url" { sensitive = true } variable "checkly_alert_channel_instatus_webhook_url_ingestion" { sensitive = true } provider "checkly" { api_key = var.checkly_api_key account_id = var.checkly_account_id } resource "checkly_check" "plausible-io-api-health" { name = "Check plausible.io/api/health" type = "API" activated = true frequency = 1 group_id = checkly_check_group.reachability.id retry_strategy { type = "FIXED" max_retries = 2 } alert_channel_subscription { channel_id = checkly_alert_channel.instatus.id activated = true } request { url = "https://plausible.io/api/health" follow_redirects = false skip_ssl = false assertion { source = "JSON_BODY" property = "$.clickhouse" comparison = "EQUALS" target = "ok" } assertion { source = "JSON_BODY" property = "$.postgres" comparison = "EQUALS" target = "ok" } assertion { source = "JSON_BODY" property = "$.sites_cache" comparison = "EQUALS" target = "ok" } } } resource "checkly_check" "plausible-io-lb-health" { name = "Check ingress.lb.plausible.io/api/health" type = "API" activated = true frequency = 1 group_id = checkly_check_group.reachability.id retry_strategy { type = "FIXED" max_retries = 2 } request { url = "https://ingress.lb.plausible.io/api/health" follow_redirects = false skip_ssl = false assertion { source = "JSON_BODY" property = "$.clickhouse" comparison = "EQUALS" target = "ok" } assertion { source = "JSON_BODY" property = "$.postgres" comparison = "EQUALS" target = "ok" } assertion { source = "JSON_BODY" property = "$.sites_cache" comparison = "EQUALS" target = "ok" } } } resource "checkly_check" "websocket-plausible-io--health" { name = "Check websocket.plausible.io/api/health" type = "API" activated = true frequency = 1 group_id = checkly_check_group.reachability.id retry_strategy { type = "FIXED" max_retries = 2 } request { url = "https://websocket.plausible.io/api/health" follow_redirects = false skip_ssl = false assertion { source = "JSON_BODY" property = "$.clickhouse" comparison = "EQUALS" target = "ok" } assertion { source = "JSON_BODY" property = "$.postgres" comparison = "EQUALS" target = "ok" } assertion { source = "JSON_BODY" property = "$.sites_cache" comparison = "EQUALS" target = "ok" } } } resource "checkly_check" "plausible-io-ingestion" { name = "Check plausible.io/api/event" type = "API" activated = true frequency = 1 group_id = checkly_check_group.reachability.id retry_strategy { type = "FIXED" max_retries = 2 } request { url = "https://plausible.io/api/event" follow_redirects = false skip_ssl = false method = "POST" headers = { User-Agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36 OPR/71.0.3770.284" } body_type = "JSON" body = <