feat: add status page v3 resources - #388
Open
tnolet wants to merge 2 commits into
Open
Conversation
Adds checkly_status_page_v3, checkly_status_page_v3_component and checkly_status_page_v3_automation_rule resources for components-based v3 status pages, with composite-ID import for the nested resources and deprecation pointers on the v2 status page resources. Pins checkly-go-sdk to a pre-release commit of checkly/checkly-go-sdk#169; to be bumped to v1.23.0 once that release is tagged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014WTgyksVAQY5jpD2fb3rYL
Terraform Format and Style 🖌
|
The v3 page update endpoint only patches fields present in the payload; the SDK previously dropped emptied optional fields from the JSON, so removing e.g. footer_text from config left the old value on the server and produced a permanent diff. Bumps the SDK pin to the commit that always serializes the clearable fields, and adds an acceptance test step reverting to the minimal config to prove the optionals clear. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014WTgyksVAQY5jpD2fb3rYL
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Affected Components
Pre-Requisites
terraform fmtgo fmtNotes for the Reviewer
Adds Terraform support for status pages v3 as three resources:
checkly_status_page_v3(flat page settings, no cards),checkly_status_page_v3_component(SERVICE/GROUP structure withparent_idnesting) andcheckly_status_page_v3_automation_rule(tag-matched incident automation). Separate resources mirror the v3 API, which has no bulk component sync on the page — components and rules are individual nested endpoints, so the nested resources import via a composite<status_page_id>/<id>ID.Design notes: the rule's
tagsandcomponentattributes are TypeSets because the API returns them unordered and the per-link ID is not stable across updates; duplicatecomponent_ids are rejected client-side (the server surfaces them as an opaque DB error); the pageurlvalidation only accepts lowercase since the server lowercases on write (uppercase config would produce a permanent diff). The v2checkly_status_page/checkly_status_page_servicedescriptions now point at the v3 resources.Verified: 4 encode/decode unit tests plus 7 acceptance tests (required-field errors, create/update happy paths, plan-after-apply empty diff,
ImportStateVerifyfor all three resources) all passed against a live backend. Note the automation rule tests need theSTATUS_PAGES_AUTOMATED_INCIDENT_MANAGEMENTentitlement on the CI account.Depends on checkly/checkly-go-sdk#169:
go.modpins a pre-release commit of that branch and should be bumped tov1.23.0once the SDK release is tagged, before merging.🤖 Generated with Claude Code
https://claude.ai/code/session_014WTgyksVAQY5jpD2fb3rYL