Use case
Driving a planned maintenance's public status-page announcement through its lifecycle from the CLI: announced → in progress → completed.
What's missing
status-pages events create/update/resolve (added for #52) work for incidents, but for a maintenance:
- There's no way to pick a status-page template. The UI's Publish Incident form selects a template that renders the announcement from the incident's fields; the CLI requires a hand-written
--message.
- The valid
--status values for a maintenance event aren't documented, and resolve hardcodes status := "resolved" (events_mutations.go). It's unclear whether that maps to the maintenance Completed state the UI sets.
Why it matters
With a template the announcement stays consistent with what the UI produces (and with the custom fields on the incident); a hand-written message drifts. And if resolve doesn't produce Completed for a maintenance, the last step still needs the UI.
Proposed
rootly status-pages events create <incident-id> --status-page=<id> --template=<template-id> --notify-subscribers
rootly status-pages templates list --status-page=<id>
rootly status-pages events update <event-id> --status=in_progress
rootly status-pages events resolve <event-id> # maps to "completed" for scheduled incidents
plus the accepted status values per incident kind in --help.
Use case
Driving a planned maintenance's public status-page announcement through its lifecycle from the CLI: announced → in progress → completed.
What's missing
status-pages events create/update/resolve(added for #52) work for incidents, but for a maintenance:--message.--statusvalues for a maintenance event aren't documented, andresolvehardcodesstatus := "resolved"(events_mutations.go). It's unclear whether that maps to the maintenance Completed state the UI sets.Why it matters
With a template the announcement stays consistent with what the UI produces (and with the custom fields on the incident); a hand-written message drifts. And if
resolvedoesn't produce Completed for a maintenance, the last step still needs the UI.Proposed
plus the accepted status values per incident kind in
--help.